GoPro Remote V2



Better, faster, stronger!
Hello Makers, in this post, the amazing DIY GoPro remote in it´s second version, with a backlit display and 3 buttons.

GoPro Remote Version 2
GoPro Remote Version 2

In this tutorial, you will read about all the steps, how to get to your own cheap and powerfull GoPro remote.


  1. Preparation
  2. PCB creation (printing / sawing / etching / drilling)
  3. Soldering
  4. Programming
  5. Having fun
  6. Support me by following, thx!


My Desk
My desk – ready to etch

Do you have  all these parts at home?

  • one sided PCB plate for etching
  • safety glasses and gloves
  • 50g sodium persulphate (N06CG)
  • some pin headers
  • 1x 6 pin OLED Display (GND, VCC, SCL, SDA, RST, D/C)
  • 3x pushbuttons
  • 1x ESP8266 ( I used the 07, but 12 should work aswell)
  • 3 x 33kOhm SMD resistors
  • 1x AMS1117 voltage regulator 3,3V
  • 1x USB to TTL converter
  • some jumpercables for programing
  • soldering iron (if you dont own one, stop reading here, close this page )
  • plastic vessel for etching
  • a piece of a glossy magazine
  • Laserprinter
  • Laminator or Iron
  • scissors
  • little boards saw
  • 0.3 mm PCB drill
  • drilling machine with stand
  • spirit or alcohol
  • rough sponge

PCB creation

Print this PDF (ESPGOPRO_etch_copper_bottom) on a glossy piece of magazine – I have cut out a squere piece 10 x 10cm and taped it in the center of a sheet printerpaper.

Glossy Magazin - you print on it - this was a mistake beside.
Glossy Magazin laser printed – you print on it  –  this was my mistake printing beside of it..

Water the sponge with alcohol or spirit and scrub the copper layer of the PCB.

Cut out this printed (yes it is mirrored, it has to be!) only so etch template and tape it with the printed side down to the copper sided PCB.

You can now saw the needed piece of the PCB. What a mess. Puhhh.

Now heat up your laminator / iron and burn the laserprinted pigments onto the copper of PCB. I let it run through the laminator for 10 times at 125 °C.
5 minutes under the iron should be okay. But without steam!

Wash the paper off the PCB. It should look like this:

after 20 minutes of etching
after 20 minutes of etching

Put on the glasses and the gloves, if not: Do not keep going!

Fill in the vessel 100 ml of 50 °C warm water and give 20 g of sodium persulphate.
Place the printed PCB in the center of the vessel and swing it a little. This step took nearly 1 hour, to dissolve the not printed copper:

Wash the thoroughly under cold water:

Ready to dril
Ready to drill

Take the drilling machine and your thin drill and drill the holes for the Pinheaders of the OLED Display and the buttons. This where 18 holes. If you want – you can drill some holes for extra pin headers ( GPIO 0 to GND jumper, GND VCC and RX TX for programming.)

You must not drill the extra holes, you can solder some wires to the contacts, or put them to te down side of the PCB directly. I drilled them.


Study this picture at least 1 minute:

What and where to solder - Bottom side of the GoPro Remote V2
What and where to solder – Bottom side of the GoPro Remote V2

Route the top side parts, the OLED and the 4 buttons, through the holes and solder them.
Then take the 3 SMD Resistors and the AMS1117 Voltage regulator (4 points to solder, the heatsink, too!) and solder them, too.
Take the ESP8226, realize the orientation and solder the 16 contacts to the PCB.

Solder the pin headers of RX + TX, then VCC + GND and then GPIO 0 and GND.


For programming set up an Arduino IDE under this Tutorial: https://github.com/esp8266/Arduino

Short the GND and the GPIO 0 jumper, connect RX and TX to the USB TTL converter, realize the polarity and connect VVC to 5V+ and GND to the converter.

Programming the GoPro remote
Programming the GoPro remote – ( short the GPIO 0 and GND between the display and the buttons)

Use this code for burning:


Subscribe for UPDATES

Enter your email address:

DOWNLOAD Version 1.01 – 04.Jan.2016  (Arduino IDE – *.ino – file)


Release notes: V 1.01 – 04.Jan.2016:

  • middle button – starts the recording – a second push stops the recording
    holding it down, means that the GoPro is recording while you hold the button – release it to stop.
  • right button – activates the beep signal of the GoPro for finding it in devilish high grass (I lost my last GoPro) – pushing once = 1 beep, holding it down keeps beeping while you´re holding
  • Display – Shows the status of the trigger (Recording, Standy)
    the second row shows the mode and the battery level
    the third the resolution ad the framerate
    the last row shows how many minutes of recording can be done.
  • left button – not programmed yet – will change the modes  of the GoPro
    (does anyone know how to change the SUB MODE ?)

Plug the USB Converter in and burn the code!

Having fun

Please comment – follow my blog – or subscribe my Youtube-Channel and get informed about the next versions that will come!

Feel free to write down your wishes – if you want to work with me on this project – you´re welcome. (should I open a Forum/Board) ?

Follow euerdesign

Get the newest updates of cool projects by following me/euerdesign.de or my Youtube Channel

Thank you by support me by this!


14 Gedanken zu „GoPro Remote V2“

  1. Hey Robert, with Sub Modes you mean the secondary modes? Here is a full list of the commands for HERO4 (I think I’ve read this on your previous post).
    For example:
    Video (VIDEO):
    TimeLapse Video (VIDEO):
    Video + Photo (VIDEO):
    Looping (VIDEO):
    Single (PHOTO):
    Continuous (PHOTO):
    Night (PHOTO):
    Burst (MultiShot):
    Timelapse (MultiShot):
    NightLapse (MultiShot):

      1. Ok, I understand. I have the same problem turning ON the camera, the URL doesn’t work. The solution was WoL (wake on LAN), sending the magic package.

  2. Hi Robert, thanks for your very great project!
    I made my remote demo by Nodemcu+OLED and finished the third button function to change mode (just between video photo and burst). and next I will do some layout to make a PCB if I find some good plastic case.
    if you like, I may help you to make PCB from factory as it’s cheap and convenient in my side.


  3. Will this work with the SSD1306 old display?
    Can you tell me where in the code you declare the I2C address… can’t seem to find it?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *