My problems with Quest in China, and how I overcame them
I am back in Italy after another interesting trip to China. You may have read some of my experiences with Chinese XR devices in my previous articles (like this one), and you will read a lot more in the next few days (e.g. be prepared for my review of the Play For Dream MR headset!). But today I want to tell you something a bit more personal: that is how it has been my experience in using the Quest in China, the problems I had, and how I managed to save the day. I hope that telling this story may help other people who are having problems with Meta headsets while abroad.
My trip and my Quest

I’m currently doing some XR contract work, mostly development stuff in Unity (by the way, contact me if you want to collaborate with me!). I have some projects to carry on, so even if I was traveling, I still had some work to do not to be killed by my customers. For this reason, I took with me my Quest 3, which is my main headset, plus a Pico 4 as a spare device, in case I had problems with my main headset.
It is not my first rodeo using the Quest in China: I have already shared my experience in other posts, like this one. I know there are some problems because everything Meta is blocked in the Red country, but still, most of the time, I found a way to use the headset. The last time I was in China, for instance, I had problems with the Quest Link, but I was able to use the Steam Link without issues. In one way or another, usually, I found a solution.
The magic brick
When I arrived and tried to do some work, I noticed that, also this time, I was having problems with the Quest Link. Even trying to reboot the machine, close other software, update the graphics card, etc… I was still having issues. I don’t know why a cabled connection does not work when you are in another country, but that was the situation. Last year, I found that Link may have problems with VPNs, but even without using them, it was still not working.
At a certain point, I noticed that my headset did not have the latest updates, so I let it download the v76 of the runtime, hoping that maybe it would fix the problems with Link. Let’s say that for sure it made the problem of the Link less important for me because the update BRICKED THE WHOLE HEADSET. Thanks, Meta, for providing such stable updates.
The recovery mode
The headset was booting with the Android recovery mode, and it offered me the possibility of factory resetting the whole headset. I did not want to lose all the data on my headset, so I desperately tried every possible solution. I remember that when Meta bricked a lot of headsets with the v74 update, it released an online tool to solve the situation, but looking for it on Google, I could not find it (Maybe Meta should improve its SEO).
During my search, I found anyway an interesting YouTube video, thanks to which I discovered I could download a previous (or future) version of the runtime of the device on a website maintained by the great Basti465 and sideload it via the adb sideload mode that can be triggered at the headset start. This is the video, in case someone is interested:
The interesting thing is: to make things funny, Basti465 put the Quest firmwares on a website whose address is “HTTPS // cocaine DOT trade” (I do not put a link here for obvious reasons). I spent like 5 minutes wondering if I should have followed this link while being in China, a country where drugs are strictly forbidden and punishments are very heavy. I imagined the Chinese SWAT entering my house, and me trying to justify myself that I was going to a website called Cocaine DOT Trade because actually, I wanted the firmware of a VR headset. No one would have believed me… I myself would never believe such an excuse! Anyway, I said farewell to my family in a message, and I went to the cocaine-actually-not-cocaine website, and tried to download a few firmwares. I tried sideloading them, but none of them solved my situation. The device updated the firmware, rebooted, but still showed the same horrible screen.
After a while, I also managed to find the official tool by Meta to restore/recover the runtime of the Quest, and I leave the link for you in case you may need it: https://www.meta.com/help/quest/software_update/ (this way you can try to restore your device without risking having the Chinese SWAT coming to your hotel…). I also tried the new tool, but it did not work either.
I tried everything I could, and also some file recovery software to try to save my files, but with no luck, so I surrendered to the idea of factory resetting my headset (sigh). Thanks, Meta, again.
The factory reset
I decided to factory reset my headset, but there were a couple of problems also for that. The first one was that in China, the Meta services are blocked, so I could not download anything. And even thinking about using a VPN (of course, only the ones approved by the Chinese government!), I couldn’t start a VPN if the headset had not gone through the first installation. But even without this problem, there was another one that was fucking me hard: Meta says in its documentation that the first setup of the Quest can’t happen over a network that stems from a phone performing tethering or the access point of a hotel/airport.
I was in a hotel, and so the only connections were the ones of the hotel or the tethering of my phone. And I guess this holds for everyone who wants to use the Quest while traveling. So basically if the Quest bricks while you are traveling, you are SOL (Shit Out of Luck) in any case. Thanks, Meta, for this nonsense rule, as a professional who travels a lot, I find it really genius.
So I needed a place with a good router and a way to reach out to Meta servers. Luckily, in China, I have many VR friends, and thanks to the support of Nikk, Nick, and Dannie (I love you all), I managed to properly factory reset my Quest and have the v76 runtime up and running. My suggestion here is that if you have problems using your headset in a country, reach out to the VR people in that country, and they may know how to help you!
The Wi-fi issues
After all of this, I traveled to Shenzhen for the last part of my trip, where I had to live in a sort of Airbnb house, so I had my dedicated router. I tried to use the Quest Link, but it did not work. I went to install Steam Link, but when I tried to install any app, the popup of Wi-Fi connection popped up… even though I was already connected to Wi-Fi. The headset was freaking out, probably it wanted to do some check with the Meta servers, and since it could not do that, it said my Wi-Fi connection was “limited”. The fun thing is, even if I tried to use (government-approved) VPNs, the headset was happily downloading updates and stock apps, it let me browse the web on the browser, but then refused to install any applications, and showed me the Wi-Fi connection popup for whatever I wanted to do. This was not happening 3 months ago, when I was also using the Quest in China. At that time, it showed the connection was limited, but then it was using the Wi-Fi without issues, while this time it blocked me from downloading new apps or using apps that require the internet. I wonder why this thing changed.
So long story short, I had my Quest back, but I had no way to use it with the computer because I could not use Quest Link, Air Link, Steam Link, or Virtual Desktop (because I could not install the apps). Since I could not install Steam Link from the store, I started looking for apps to sideload, and I found that APK Mirror has an APK of Steam Link. APK Mirror is a reliable website, so I got the APK, sideloaded it, and launched it. The app worked, and I was able to finally use Steam Link. It seems that the damn connection check is not performed on sideloaded apps, so probably it is something related to an entitlement check or a pre-connection check.
Notice that if I didn’t manage to download Steam Link, I had already thought about a plan B: ALVR. As an open-source solution, it is possible to download its APK and the runtime directly from the GitHub repository. I kept Steam Link as my first choice because I think it is a bit more user-friendly and better integrated with SteamVR. However, ALVR is still a very valid option for using SteamVR together with your standalone headset.
After getting Steam Link, I finally managed to use the Quest for my tests with Unity. It kept having problems connecting to the Wi-fi, not connecting reliably to the 5 GHz network, or disconnecting every time I put the headset on standby, but I still managed to do my stuff. Thanks, Meta, for making this so easy.
God bless Pico

While I was waiting for my friends to help me restore the Quest, I still had to work, so I took out the Pico 4 that I brought as a spare unit and tried to use the Pico Streaming Assistant software to make it work with my PC. This was the situation:
- The last time I had updated the Pico, there was still the Roman Empire (in fact, the language of the headset was Latin and not Italian)
- The headset was not turned on for the last couple of months (I had used another Pico headset for my camera access tests)
- The Wi-Fi connection during the various sessions was the one of the hotel, with all the problems it may have; or the tethering of my phone; or even a phone cable connected to a 56K router
- The 4 batteries of the controllers were dead, and I had just 2 fully charged ones, so I put only one fully charged battery in each controller
- I was outside the area where the store of the consumer headset should work (theoretically, consumer EU Picos shouldn’t work in China, and Chinese Picos shouldn’t work in the EU)
But hey, I connected it, and it worked. The old version of the Pico plugin was causing some connection issues with SteamVR sometimes, but for the rest, it connected. I guess this says a lot about the stability of the system.

This is not the first time that Pico saves the day while I am in China. So if you go to China and you have to do some work, my suggestion is to bring with you also a Pico headset. It works much better there. And anyway, develop your application with OpenXR and all the other cross-platform tools, so that you can more or less do the work with Pico and things work with Quest, too.
(No, I have not been paid by Pico to write this post, I am just thankful that its headset made me do my work)
All is well that ends well.
In the end, I managed to deliver my work. I was saved by my grit, by some good friends, and by the smart decision of bringing an extra headset with me. I lost 10 years of life in the process, but at least this story had a happy ending. And I hope it will help in having a happy ending for you as well if you travel to some countries with some internet restrictions!
(And please, if someone from Meta is reading this post, try to do your best to avoid that other people have similar problems. Thank you, for real, if you do that.)
Disclaimer: this blog contains advertisement and affiliate links to sustain itself. If you click on an affiliate link, I'll be very happy because I'll earn a small commission on your purchase. You can find my boring full disclosure here.