Project showcase
GoPro Voice Control Panorama Device

GoPro Voice Control Panorama Device

A device that rotates a GoPro Hero5, then uses the Hero5's voice-control capabilities to command it to take a picture.

  • 1 comment
  • 4 respects

Components and supplies

Necessary tools and machines

Zen Toolworks CNC Router

Apps and online services

About this project

As you may have seen if you’ve been following along here or on YouTube, I recently made a new fixture for my GoPro Hero5. The idea behind this is that it can use an audio signal controlled by an Arduino Nano to trigger the Hero5. Originally it didn’t work very well, but after some revisions outlined in the video below, it worked quite well “in the lab,” AKA my garage.

It’s sort of downplayed in the video, but once I took it to the beach, with its inherent wind and noise, things didn’t perform quite as well as I’d hoped. The device would often miss the “GoPro take a photo command.” Although frustrating, I was able to get it to take several panorama sequences, and stitched them together using Photoshop Elements (Amazon)*.

Here’s one I though twas pretty great. On the left side is the other end of the bench, the device is resting on, so I was able to get a roughly 180 degree view of everything automatically. I’m using this as my background on a dual-monitor setup, and I’m pretty impressed with how it looks that way!

I gave a very short summary of the initial build in the video embedded here, but if you’d like to see what went into the prototype, check out this post. Also, the title says “finished,” but is something like this ever really finished? In the back of my mind, I keep thinking that I could put even more holes on the top, or perhaps adapt it to work with my DSLR…Finished seems to be a relative term!

*I’m using PSE 13; 15 is linked there. Hopefully it’s even better.


GoPro voice controlArduino
Pans servo and takes a picture with voice control board
#include <Servo.h>

Servo myservo;
int pos = 0;

void setup(){
  pinMode(3, OUTPUT); //voice trigger
  pinMode(13, OUTPUT); //light trigger
void loop(){
  myservo.writeMicroseconds(1478); //rotate continuous rotation servo
  digitalWrite(13, HIGH);
  myservo.writeMicroseconds(1448); //stop continuous rotation servo - may need to adjust depending on resistors
  delay(50); //pause before triggering command
  digitalWrite(3, HIGH);
  digitalWrite(13, LOW);
  delay(3000); //keep command pin on until done
  digitalWrite(3, LOW);
  digitalWrite(13, LOW);
  delay(1000); //wait for photo to complete

Custom parts and enclosures

Camera Rotation
Cut out layers of 1/2" MDF


Similar projects you might like

Control Christmas Lights with Voice Commands using Arduino

Project tutorial by ahmed ismail

  • 15 respects

Servo Control with TV Remote Control

Project showcase by eldo85

  • 48 respects

Voice Control Bluetooth TV Remote

Project in progress by pravin.desai

  • 1 comment
  • 7 respects

Control LED Using Your Voice Command

by IoTBoys

  • 36 respects
Add projectSign up / Login