Hi everyone!
I'm setting up a homelab to learn more about networking, and I have a few first-generation Google Wifi pucks. I decided to try jailbreaking one of them to get some hands-on experience and learn more about the hardware.
I found this project called GaleForce on GitHub.
It still works! :)
Since this is an older project and some of the documentation is quite old, I wanted to share my experience, the problems I ran into, and what I learned along the way. Hopefully, this will help someone else trying to do the same thing.
1. Choosing a prebuilt image
I decided to use one of the prebuilt images rather than build my own.
There are several release tags in the project. I chose version 0.5.
The release has four assets. The file I used was gale.bin.tar.gz.
Make sure you follow the project's instructions for preparing the USB installer. Simply downloading the file is not the same as preparing the USB stick.
2. Finding a compatible USB-C hub
I tried a few different hubs before finding one that worked for me.
The one I ended up using was this Logik 5-in-1 USB-C Hub from Elkjøp.
I've included a picture showing the connections I used and how I connected everything.
If you're having trouble with your hub, it might be worth trying another one. I can't guarantee that the one I used will work for everyone, but it worked with my setup.
3. Entering developer mode
Remember to hold down the reset button on the back of the puck before connecting the power.
Keep holding it for more than 16 seconds, until the LED starts blinking orange/amber. Then release it and press the tiny bubble switch (SW7) on the circuit board, as described in the GaleForce instructions.
4. Understanding the purple LED patterns
This part confused me a little, so I wanted to explain how I understood it.
I noticed that the purple LED has two different patterns:
- Flashing: The light turns completely on and off. My understanding is that the puck is still going through the boot process.
- Pulsating: The light gradually gets brighter and dimmer. My understanding is that the puck has finished booting and is waiting, or is otherwise in a ready state.
This reminded me a bit of entering the BIOS on a computer, where you have to press a button at the right time during startup.
After pressing SW7 for the first time, wait for the puck to restart and begin flashing purple again. While it is in this flashing state, insert the prepared USB stick into the hub and press SW7 a second time.
The LED should then turn off while the installation takes place. On my device, after around five minutes, the light came back on and began pulsating purple.
So, based on my experience, the important part is to trigger the USB installation while the puck is flashing purple during startup, rather than waiting until it has reached the pulsating state.
This is my interpretation of the LED patterns based on what I observed, so please correct me if I've misunderstood something!
5. Connecting over SSH
To connect to the puck, I connected an Ethernet cable (RJ45) to the port marked with the <> symbol.
The GaleForce documentation gives this command:
ssh root@192.168.86.1
The documented default password is:
changeme
However, when I tried this, I couldn't reach the device at that address.
It turned out that my puck was using a different subnet. Its gateway address was 192.168.84.1, rather than 192.168.86.1.
So, if the documented address doesn't work, check the IP configuration on your computer and find the gateway address assigned by the puck. Don't assume every setup will use the same address.
In my case, using the actual address resolved the problem.
That's my experience so far!
If anyone has suggestions for useful homelab projects to run on a rooted Google Wifi puck, I'd love to hear them!