-
Notifications
You must be signed in to change notification settings - Fork 19
Home
Welcome to the trackview-arduino wiki!
So all this code isn't much use without the matching hardware. So here's some info to go along with all the ENABLE_* options at the top of the code. In theory any combination of the options should work except enabling more then one gps - TinyGPS xor SirfGPS.
- Arduino Mega, currently tested with Seeeduino's Mega running on 3.3v. A 3.3v board makes life easier with the 3.3v I2C sensors.
- Power for the Arduino Mega, I used 6 x AA batteries in a holder - A power switch also makes life simpler
- 5 x GoPro Hero HD cameras
- Camera Housing for your cameras.
This goes between the Arduino and the 5 camera circuits.
This puts the Camera in to Slave mode and connects to the Camera Controller to allow the Arduino to act as a master and trigger the camera.
Program 0x05 into the first byte of the eeprom before you assemble this. The GoPro looks for this to know it should act as a slave.
As the cameras don't have any batteries on them in the housing, you'll need to power them. I used 3 x AA rechargeable batteries from Energizer per camera. I left one running and it gave about 5000 photos, so at one ever 5 meters, that's about 25km or about as much as I'm willing to walk in one day.
The micrSD is used to store all the data about location and when photos were taken. This shield isn't just plug and play on a Mega as the Mega's SPI pins are different so you'll have to wire it up.
Turn these on or off in the top of trackview.pde.
#define ENABLE_FREEIMU // FreeIMU
//#define ENABLE_TINYGPS // Tiny GPS serial NMEA
#define ENABLE_SIRFGPS // Sirf Binary GPS serial
#define ENABLE_HMC6352 // HMC6352 I2C compass
#define ENABLE_BMP085 // BMP085 I2C Barometer
#define ENABLE_LDR // LDR for relative light level
#define ENABLE_BEEP // Piezo Speaker for audio feedback
#define ENABLE_LCD12864 // Serial LCD12864 128x64 Grahpical display
#define ENABLE_LEDBUTTONS // Go/Reset/Stop buttons
Just a simple piezo for feedback
I like to see what's going on. I use a 128 x 64 pixel LCD
This is to record the heading of the cameras. I have the North on the board aligned with camera 1.
This is to record the pitch and roll of the camera head.
Records the light level, in future I may use this to warn if the light level is too low. But for now it's just recorded
Three illuminated buttons that I use to control everything. Without these the code with just start recording when it's turned on and there's no graceful way to shut it down.
Use the TinyGPS library with a serial GPS outputing NMEA sentences
Use my SirfGPS library with a serial GPS in SiRF Binary mode. It will send the command to put the GPS into binary mode on start up, just in case it isn't already. Just wire it up the same as for TinyGPS, above, but also connect the Arduino's tx3 line to the GPS's rx line.
Just for fun - gives a second altitude reading, barometric pressure and temperature. Sorry no circuit diagram, it's just I2C so same as the HMC6352 Digital Compass - wire it in parallel.