01-27-2020 07:31 PM
step by step: waking gopro wifi from bluetooth on android[ New ]
KonradIT has his nice collection of Gopro commands on github, and one of the harder to find ones there is the bluetooth command for turning on wifi after it goes to sleep. He found this from yet somewhere else, but I didn't find a full details on this anywehere, including the correct channel to send the commands to. So I'll go one further and add a step by step demonstration of how to do this from an android phone.
I tested it on hero 7 black, but should work on others, at least back to hero 5 I believe.
-Turn on wireless connections on your gopro.
-Pair your gopro with your android BLE
-Connect your android wifi to the gopro. (You can find the password under preferences, connections, android app, hit the (i) button)
-Install nRF Connect from the play store (I have no affiliation).
-Open the app.
-Select your Gopro and hit connect.
-Hit the red menu button.
-Hit the record button to record a macro.
-Select "Unknwon Service" 0000fea6-000-....
-Select Unknown Characteristic with UUID starting with b5f90072-... (press the up arrow on the right which means send command)
-In the write value field enter 03170101
-Hit the red recording stop button and enter a name to save the macro as like: "Wake Wifi"
-Optionally select an icon for the macro.
Now after connecting to this device next time you can just select the red menu button and the macro to send it again.
You can make one to turn off wifi using 03170100. This can be useful just to test that it's working, but not usually necessary since wifi turns off on its own after a few minutes. If you press the down arrows on Characteristic b5f90073... twice to toggle it, and then send commands on 72, it seems you get a response on 73, useful for programming probably.
This is not the same as turning wireless connections on and off in the device menu, which also disables BLE. This just "wakes" wifi.
It also seems possible to force wifi to stay on by sending http requests to first start and then stop streaming (discovered in a thread on KonradIT's github). Of course this uses battery power. It seems like a glitch but it's been there in 3 generations of models at least.
I don't suspect this is a terribly practical way to do things, but it demonstrates the procedure, and the macro only requires a few clicks to use.
A widget to wake bluetooth and connect to the gopro SSID could be nice. Then you can run shell scripts to send sequences of http commands to configure presets. I'm using termux:widget to launch those from the home screen, one touch to completely reconfigure the device. Maybe for another post.
01-30-2020 04:43 PM
Re: step by step: waking gopro wifi from bluetooth on android[ New ]
A few additional notes:
I have found that often just "connecting" to BLE with the nRF app is enough to wake the wifi, but from my observations so far I'm not comfortable calling that sufficient.
I have also found at times, as reported by others, that the wifi is up, but the web server is not responsive. I thought that the BLE wake was usually solving this, but at least in one instance it certainly did not and a wake on lan request did.
So I have presently added a wake on lan to the start of my termux shell scripts as well. termux has a wol command that can be installed from the termux prompt with:
pkg install wol
and used as
You can find the MAC adress in several ways. In a windows command prompt, after connecting to the gopro wifi, arp -p will associate 10.5.5.9 with its MAC.