Update the Wireless Module (ESP32)
Some HOJA controllers have an ESP32 wireless module with its own firmware, separate from the controller's: GC Ultimate 1 (Kickstarter), ProGCC 3+, 3.1 and 3.2, and Super Gamepad+. GC Ultimate 2 uses a different radio (RM2) and has nothing to update here.
The module runs the HCI bridge firmware. It brings Wii mode, the current Switch and Steam Bluetooth, and pairing over USB. Modules from older shipments may still run the older HOJA baseband firmware, and HHL Gamepad Config recommends moving them to the bridge.
Before you start
Update the controller firmware first (see Update Firmware). The bridge needs current controller firmware. If the app shows Update the controller first on the Wireless page, do that, then come back.
Use Chrome or Edge on a computer, with a USB data cable.
The update takes about a minute. Keep the controller plugged in.
Update from HHL Gamepad Config
Connect the controller at hoja.handheldlegend.com and open the Wireless page.
On the Wireless module firmware card, press Install HCI bridge (or Update now).
The Wireless module firmware card on the Wireless page
Press Start update. The app downloads the firmware, then restarts the controller into update mode. Its lights pulse orange.
Step 1: the wireless module update dialog
When the lights pulse orange, press Connect and choose the USB serial device. It's usually named USB-SERIAL CH340, USB2.0-Ser! or USB Single Serial.
Step 3: connect to the wireless module
The app erases the module and writes the new firmware by itself.
When it says Wireless module updated, unplug the controller, wait a moment, plug it back in, and press Connect.
Done: unplug the controller to finish
After moving from the HOJA baseband to the HCI bridge, pair again. The module's Bluetooth address changes, so pair your Switch and other Bluetooth devices once more (see Modes & Pairing). Settings may also reset, so check your stick calibration.
If Connect doesn't work
Try the other connection method. In the dialog, under Connect using, switch between Serial port and USB (WebUSB).
Close other tabs and apps that might be using the controller.
Linux: choose USB, install the app's Linux USB rule once (Linux setup), and run
sudo modprobe -r ch341before pressing Connect. The dialog shows these steps.Lights already pulsing orange? In the dialog, press Skip to connecting.
Still failing? This is most often seen on Windows PCs with AMD processors. Try the offline updater below, or update from another computer or an Android phone or tablet. Then run the wireless diagnostics at handheldlegend.github.io/hoja3/#/diagnostics on the PC where it fails, and include the report in a support ticket.
To cancel at any point, just unplug the controller. Nothing is broken: the module can always be written again while it's in update mode.
Enter update mode by hand
Unplug the controller. Hold R + Start (+) and plug it in (on the GC Ultimate 1: ZR + Start, the right Z button). The lights pulse orange. Then open HHL Gamepad Config, go to the Firmware & backup page, and press Update wireless module on the Wireless module (ESP32) card. It goes straight to Connect.
Offline updaters
If the browser can't connect (driver problems, locked-down PCs), use a command-line updater. Both install the HCI bridge, and both need current controller firmware.
Windows: download hoja-local-updater-win.zip, unzip it, and double-click hoja_wireless_update.bat. It downloads the firmware, then tells you when to put the controller in update mode.
Linux / macOS: download hoja_wireless_update.sh and run
bash hoja_wireless_update.sh.
Close the browser first, so it doesn't hold the controller's port.