• Stars
    star
    2,090
  • Rank 21,341 (Top 0.5 %)
  • Language
  • License
    Apache License 2.0
  • Created over 10 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Unofficial GoPro WiFi API Documentation - HTTP GET requests for commands, status, livestreaming and media query.

GoPro Wifi Hack

The unofficial API for GoPro cameras (The WiFi enabled models)

This repository won't be updated regularly, and users are encouraged to switch to OpenGoPro

Read why

Choose the GoPro:

A note on HERO8: For GoPro Connect (Webcam Mode), use Hero9 commands; For other commands, use Hero7 commands.


This is a community effort to document the API calls between GoPro cameras and GoPro's Smartphone App via WiFi. It has 4 sections for each camera model:

  • WiFi commands: a list of WiFi commands you can use for the camera.
  • Livestreaming: methods of getting a live video feed off the camera.
  • Media Browsing: Instructions on getting media off the SD card via wifi.
  • Camera Status: List of camera status meanings

Note: HERO4 camera is now the base for the future API, since the calls will be the same for HERO4 and above.

Does GoPro offer an official API, SDK or mobile library?

They did offer a mobile library - but they shut it down. This repository will continue to be updated until GoPro stops releasing cameras and ceases operations.

But... Now they offer BLE/WiFi API documentation, tutorials and examples over at OpenGoPro.

This vs OpenGoPro

This is an effort to document the mobile app APIs used by GoPro, internally called gpControl APIs or Smarty APIs. OpenGoPro V2 supports all commands over WiFi and USB, making this effort largely useless these days. Fortunately they've kept the BLE part 100% identical to what we documented over here.

This repository will just be updated to cover the gpControl APIs, if they change at all between future cameras, which might reveal new features and/or support endpoints not covered by OpenGoPro. Users are encouraged to switch to the OpenGoPro spec.

OpenGoPro supports Hero9 Black, Hero10 and Hero11 (at least officially - their BLE commands are compatible with older BLE-enabled cams given the proper characteristic). This repository covers nearly a decade of GoPro camera releases.

This repository will get updates only if the gpControl API is kept available, if the GoPro App ceases to use gpControl and switches to OpenGoPro, what's the point?

Libraries:

3rd Party Library/API wrappers list

Bluetooth:

Bluetooth is used to turn camera on after WiFi AP is disabled in deep sleep, as well as for turning on/off wifi.

But on Hero9, it's used for status retrieval, all commands and changing settings, turning on,

Acknowledgements/credits

  • Konrad Iturbe - main developer
  • dough29 - HERO2 research
  • EvilWombat - general and HERO3
  • 3v1n0 - HERO4 research
  • Maelstrom Napalm - HERO4 research
  • fraannk - HERO4 research
  • Sonof8Bits - Python script
  • krystof-k - Bluetooth API and wake up commands
  • Mark Kirschenbaum - Bluetooth commands info
  • GitHub contributors
  • and finally GoPro for allowing us to tinker with their cameras and not shutting down this unofficial API like instagram or snapchat, that means a lot.

More Repositories

1

gopro-py-api

Unofficial GoPro API Library for Python - connect to GoPro via WiFi.
Python
1,344
star
2

autoexechack

Autoexec hack is a copilation of hacks for GoPro Cameras, like a GHDK (GoPro Hack Developer Kit).
AGS Script
460
star
3

GoProStream

Tools for handling/displaying GoPro HTTP/UDP stream (Python/Ruby)
Python
352
star
4

gopro-linux

Bash script which helps with post production for GoPro cameras in Linux, can be used as a replacement for GoPro Studio
Shell
330
star
5

CamControl

Open source app to connect with popular action cameras, replacing your vendor's closed source app system.
Kotlin
109
star
6

gopro-firmware

GoPro Firmware research
90
star
7

gopro-ble-py

Python Bluetooth controller for GoPro cameras with BLE connection
Python
86
star
8

parler-py-api

UNOFFICIAL Python API to interface with Parler.com
Python
55
star
9

mmt

Media Management Tool - make importing videos/photos from GoPro and other action cameras/drones a little bit more bearable.
Go
54
star
10

goprohero

A better GoPro app for Android, with Android Wear support, material design, H2/H3/H3+/H4 compatible and lots of features!
Java
49
star
11

gopro-control

GoPro Wifi controller inside the gopro
Shell
41
star
12

hero4hack

Override.sh/cal.txt hack examples and documentation (GoPro HERO4 auto executable)
Shell
39
star
13

GoProDashboard

A Flask webapp to interface with GoPro cameras over wifi.
HTML
34
star
14

MagicLanternGoPro

Magic Lantern for GoPro HERO3 Black / HERO3+ Black / HERO3+ Silver cameras
30
star
15

gopro_fw_dl

Firmware downloader for GoPro cameras (no registration needed)
Python
22
star
16

dotfiles

my dotfiles and other config
Shell
22
star
17

oculus_jailbreak

Research on Jailbreaking Oculus Quest 2
GLSL
22
star
18

gopro-firmware-archive

GoPro Firmware Archive
Python
19
star
19

GoProWirelessPassword

Research into potential vulnerabilities and risks of auto-generated pseudorandom passwords + Bluetooth Exploit.
Python
19
star
20

pebble

do not go gentle into that good night
19
star
21

SmartTheme

Tasker tasks that change apps night/day theme (aka: blackout theme)
19
star
22

gpauto

./gpauto for HERO4/HERO5 (spirtitual successor to autoexec.ash/override.sh/cal.txt) on stock Firmware
18
star
23

HEROPebble

Unofficial GoPro App for Pebble smartwatches
JavaScript
14
star
24

fimi_a3

Reverse engineering the A3 drone drone firmware + camera fw + remote fw
Shell
14
star
25

gopro32

GoPro Anti Lose Guardian device and BLE controller using an ESP32.
13
star
26

gopro-rc

ESP8266 based real Remote Control (RC mode, not APP mode) for GoPro HERO4+ cameras
C++
12
star
27

gopro-herobus-sdk

An SDK to hack the back HERO bus of GoPro cameras.
12
star
28

gopro-upload

Codes to auto upload gopro timelapse to a local folder, to github and other cloud services
Shell
11
star
29

insight-api

NASA InSight Raw Image Python API
Python
11
star
30

gopro-plus-api

experimental.
Python
11
star
31

gopro-modder

The best patcher for GoPro Android app in the galaxy
Shell
10
star
32

wm231

DJI Mavic Air 2 stuff
9
star
33

gopro-rb-api

Unofficial Ruby GoPro API wrapper
Ruby
9
star
34

gopro-udp-stream-android

Java
6
star
35

dji-nfz-tracker

Tracking DJI No Fly Zones
Python
6
star
36

bereal-timelapse

Generates a timelapse from your BeReal memories
Go
6
star
37

pkpass

General purpose pkpass library
Python
5
star
38

TheaterTime

Automation for Theater Mode in Android Wear devices, tested on LG G Watch (W100).
Java
5
star
39

pebble-taskwarrior

A Pebble client for Taskwarrior TODO Manager (syncs with Inthe.AM service!)
JavaScript
4
star
40

insta360

4
star
41

gowifi

Command line shell gopro wifi controller
Shell
4
star
42

konradit.github.io

source code for my website
HTML
4
star
43

hilltrades

Python API wrapper for capitoltrades.com
Python
3
star
44

djiutils

Scripts and utilities for processing media from DJI aircraft.
Shell
3
star
45

slopebuddy

Pebble watchapp for skiing and snowboarding, check snow information from your ski resort.
JavaScript
2
star
46

xiaomi_yi4k

The real deal
AGS Script
1
star
47

gopro-osc

Open Spherical Camera API (OSC - Google) driver for GoPro 1-unit Spherical cameras (eg: Fusion, MAX)
Python
1
star
48

archdots

Script to pair with my Redmi Airdots
Python
1
star
49

bssbctl

Python
1
star