Skip to the content
PCBKitNew board
2 layers45.8 × 40.2 mmGoProControl, the printed circuit board in 3D

GoPro WiFi controller board using an ESP8266 allowing easy integration with other circuits

Size
45.8 × 40.2 mm
Copper layers
2
Thickness
1.6 mm
Parts
27
Nets
21
Pads
88
Tracks, vias
203, 16
Pours
2
Routed
Yes
KiCad
KiCad 4
Created
6 Dec 2015
Updated
24 Mar 2018

Overview

GoProControl is an open-source printed circuit board by synfinatic, from the synfinatic/GoProControl repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 45.8 × 40.2 mm with 27 parts on 21 nets, routed with 203 tracks and 16 vias.

It is built around the ESP-12E, LTV-814 and IRLML6344, with the B5817WS among its other parts. Its parts include 10 resistors, 3 capacitors, 3 ICs, 3 diodes and 2 transistors. It belongs with the radio and wireless boards and the ESP8266 boards of this library.

Main components

4

README

README.md

GoProControl

About

I wanted an easy way to syncronize my GoPro videos with the data generated from my data logger. In the past, I've done this manually with DashWare, but it is a tedious manual process to get them syncronized. There had to be a better way!

I realized that many GoPro's (GoPro3 Silver/Black, GoPro4, etc) have built in WiFi and we all know about the iPhone and Android apps. So clearly there was a way to controll them via WiFi.

GoProControl is a simple box you can plug into your car or motorcycle and connect to your datalogger's digital output or input sensor. I use the inexpensive ESP8266 to control the a GoPro. In the future, I hope to be able to control multiple GoPro's like the GoPro Remote can.

How it works

GoProControl has 4 pins:

  1. +5-12V
  2. GND
  3. Digital Input
  4. Digital Ouput

When GoProControl is turned on, it will send a signal to the GoPro to also turn on- which may take a few seconds. When the Digital Input is connected to ground (GND) it will tell the GoPro to start recording.

When the Digital Input is disconnected from ground (floating or +3.3-12V) it will tell the GoPro to stop recording. You should configure your GoPro to auto-off after 60seconds to save battery.

Note, when the Digital Input is connected to ground, the Digital Output will be driven to 3.3V. This is so if your data logger does not have an output channel you can control, you can use a simple toggle switch to both turn on the GoPro and mark the time when recording started in your data logger using an input channel on your data logger.

Note: If you have the option of powering this by 5 or 12V, use 5V. If using your vehicle's battery, be sure it is switched with the ignition to prevent draining your battery as this circuit uses ~330mA.

Programming

The GoProControl board has an onboard connector for programming via a FTDI cable. This cable should provide 5V of power and can use either 3.3V or 5V for signalling.

Configure your GoPro WiFi for "App Mode" and define a SSID and WiFi Password.

Before programming your GoProController, you first need to edit src/goprocontrol/goprocontrol.ino and edit the SSID and WIFI_PASSWORD to match your GoPro's settings.

In order to program your GoProController, you will need to start the Arduino application and figure out what serial speed (baud) your ESP8266 communicates at. Older boards run at 9600, while newer boards seem to run at 115200.

Once you have figured out the serial speed, configure Arduino for a "Generic ESP8266 Module" and the upload speed to the same speed. Then, with the board powered up:

  1. Press and hold the PROG button
  2. Press and release the RST button
  3. Release the PROG button
  4. Uplaod the sketch via the Arduino application

Links Links to projects or information that was critical to me creating this

project. Thank you!

License

GoProControl is GPLv3

Trademarks

GoPro, GoPro3 and GoPro4 are trademark GoPro.

GoProControl is not affiliated with GoPro in any way.

Parts

27
QtyValueFootprintReferences
310KResistors_SMD:R_0805_HandSolderingR2, R9, R10
31KResistors_SMD:R_0805_HandSolderingR3, R4, R6
2IRLML6344TO_SOT_Packages_SMD:SOT-23_HandsolderingQ1, Q2
1.01ufCapacitors_SMD:C_0805_HandSolderingC3
1100uFCapacitors_SMD:CP_Elec_6.3x7.7C1
110VZenerDiodes_SMD:D_SOD-123FD1
11kResistors_SMD:R_0805_HandSolderingR7
11ufCapacitors_SMD:C_0805_HandSolderingC2
14.7KResistors_SMD:R_0805_HandSolderingR5
156Resistors_SMD:R_0805_HandSolderingR8
1560Resistors_SMD:R_0805_HandSolderingR1
1B5817WSDiodes_SMD:SOD-323_HandSolderingD2
1CONN_01X06Connectors_Phoenix:PhoenixContact_MSTBA-G_06x5.08mm_AngledP2
1D24V5F3synfinatic:D24V5FxU3
1ESP-12Esynfinatic:ESP-12E-SMDU2
1FTDIsynfinatic:FTDIHeaderFTDIProg1
1LTV-814Opto-Devices:Optocoupler_SMD_LTV-817SU1
1POTPotentiometers:Potentiometer_Bourns_3296W_3-8Zoll_Inline_ScrewUpRV1
1Progsynfinatic:SPST-SMD-6x3.5SW2
1RedLEDs:LED_0805_HandSolderingD3
1Resetsynfinatic:SPST-SMD-6x3.5SW1

The 26 most common of 27 parts.

Questions

How big is the GoProControl PCB?

It measures 45.8 × 40.2 mm and has 2 copper layers, 1.6 mm thick.

What parts does the GoProControl use?

27 parts, built around the ESP-12E, LTV-814, IRLML6344 and B5817WS. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the GoProControl KiCad files?

From the synfinatic/GoProControl repository on GitHub, at the commit this page was made from: the board is kicad/goprocontrol.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the GoProControl design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers287.8 × 126.7 mmNoName, the printed circuit board in 3D

    NoName

    AlaaSaadAbdo/battoota

    Keyboards

    267 parts188
  • 4 layers110 × 110 mmSmoothiev2-prime, the printed circuit board in 3D

    Smoothiev2-prime

    Smoothieware/Smoothieboard2

    Hardware files for the Smoothieboard v2, and extension boards

    453 parts71
  • 2 layers51 × 21 mmMitayi Pico D1, the printed circuit board in 3D

    Mitayi Pico D1

    CIRCUITSTATE/Mitayi-Pico-D1

    Open-Source RP2040 Microcontroller Development Board

    75 parts36MIT
  • 4 layers30 × 23.5 mmNIMRS-21Pin Decoder, the printed circuit board in 3D

    NIMRS-21Pin Decoder

    CDFER/NIMRS-21Pin-Decoder

    An open source 21-Pin DCC Decoder for model trains

    89 parts21
  • 2 layers290 × 100 mmESP32-Wall Clock, the printed circuit board in 3D

    ESP32-Wall Clock

    SkullKill/ESP32-Wall-Clock-PCB

    ESP32 based 30cm Wall Mounted Clock. WiFi, NTP, SNMP, web interface, MicroUsb, Type-C, HG3613 Retrofit

    207 parts3GPL-3.0
  • 4 layers51.5 × 21 mmPico-2v, the printed circuit board in 3D

    Pico-2v

    lucasbaizer/pico-2v

    RP2354A development board with switchable voltage, QSPI breakout, and more

    53 parts1
  • 2 layers24 × 37 mmMy rp2040, the printed circuit board in 3D

    My rp2040

    kolontsov/my-rp2040

    RP2040 board with USB-C, 8MB flash and 22 GPIOs

    38 partsCC0-1.0