This is a Go implementation of the following OpenGoPro Python logic:
The Python implementation uses Bleak.
This implementation uses TinyGo.
- Connects to your GoPro via BLE.
- Using BLE, enables the WIFI AP on your GoPro (can only be done programmatically)
- Retrieves the credentials for the AP.
- Uses those credentials to authenticate and establish a connection to the AP
Once connected, you'll be able to access your GoPro's HTTP API.
If you have an older GoPro ( <= HERO5 ), you can try https://github.com/chrisjoyce911/goprowifi.
For new GoPro's like the one I have ( >= HERO12 ), I plan on writing a higher level client/sdk using this pkg as it's base to solve for wireless connectivity.
See the connect example
This was manually tested on OSX using a GoPro HERO12 Black.
-
On your computer, make sure Bluetooth is enabled.
-
On your GoPro, navigate to your settings and click "Pair Device"
-
On your computer, run the script
go run examples/connect/main.go
-
Verify connectivity