2026年7月

Requisition:

  1. a Google-WiFi machine (AC-1304) that is with a type-c power inlet and it's power supply.
  2. TWO 8Gb+ thumb drives. (I use Kingston)
  3. a PD-powered type-c USB hub.(that means a USB hub with type-c head, USB-A hole and PD-power inlet.)(I use Kingston Nucleum)
  4. Windows 11/10+ machine.
  5. a cross head screwdriver.
  6. a little bit of luck.

Procedure:
[PART1]

  1. on Windows machine ,install chrome browser and a extension called "OnHub Recovery Utility".
  2. go https://firmware-selector.openwrt.org/, search "google",select "google-wifi gale", download the latest version of SYSUPGRADE and FACTORY.(no snapshot)(25.xx.xx whatever)
  3. create a STOCK recovery USB stick with OnHub Recovery Utility, say it stick A.
  4. create a openwrt recovery USB stick with OnHub Recovery Utility again, but this time use FACTORY firmware instead by click the upper right gear icon and choose FACTORY.bin, say it stick B.
  5. unscrew the only screw on Google-WiFi, pry out the bottom cover.

[PART2] recover to STOCK

  1. hold the RESET button.(whatever named what, there is only ONE button on Google-WiFi)
  2. plug the already PD-powered USB hub in.
  3. when it flash orange, release the RESET button.
  4. plug the stick A in hub.
  5. wait until pulse blue.
  6. recovery complete.

[PART3] recover to openwrt FACTORY

  1. unplug all power source or USB-hub, sticks, whatever...
  2. locate SW7 switch inside Google-WiFi, https://openwrt.org/_media/media/google/google_wifi_nls-1304-25_pcb.jpg?w=800&tok=7e0776
  3. plug stick B in your PD-powered USB-hub.
  4. hold the RESET button.
  5. connect your hub to Google-WiFi, it will starting to boot.
  6. keep your eyes on it, just like PART2, release RESET button when it blinks orange.
  7. 3 seconds after, when it pulse orange and amber, press SW7.
  8. it will reboot once or twice, when it blinks purple, press SW7 again.
  9. left it for 5 minutes or even longer, connect it's LAN port to your Windows machine, ping 192.168.1.1, when it returns some responds, boot completed.
  10. unplug ALL things, only leave LAN port<->Windows cable, and power on Google-WiFi again.

[PART4] adjusting

  1. instal WinSCP on windows, connect 192.168.1.1 with SCP protocol (username = "root"), copy the FACTORY firmware(.bin) to /mnt/ directory, exit.
  2. install PuTTY, ssh 192.168.1.1 (username = "root"), execute:

     dd if=/dev/zero bs=512 seek=7634911 of=/dev/mmcblk0 count=33
     dd if=/mnt/openwrt-xx.xx.x-ipq40xx-chromium-google_wifi-squashfs-factory.bin of=/dev/mmcblk0 #where change xx.xx.x to your FACTORY firmware's version
     reboot
  3. connect Google-WiFi to the internet according to your actual configuration inside Luci.
  4. PuTTY 192.168.1.1 again, execute:

     apk update
     apk add cfdisk
     apk add resize2fs
     cfdisk /dev/mmcblk0
     -> go to the second partition(last partition before unused space), resize(largest available), enter, write ,yes, quit.
     reboot
  5. PuTTY 192.168.1.1 again..., execute "resize2fs /dev/loop0", yes or whatever, reboot.
  6. go http://192.168.1.1, within Luci install the SYSUPGRADE firmware, keep no configuration, reboot.
  7. screw back the cover, now it's done and ready to use !

[PART5] what if...

  1. with newest firmware 25.12.5, after installing tailscale 1.98.x and first runs as --advertising-subnet-routes, the internet mess up and even the router's internal IP cannot be reached anymore. I have no idea but reset it and try to find some clues, nothing is solved til now. My final solution is fall it back to the firmware 24.xx.x with good old time that all run smooth. Just choose the latest 24.xx.x while downloading the openwrt firmware, change appropriate arguments in every steps, and replace "apk","add" command with "opkg","install".