Dash Camera + Snapshot
Updated: Mar 7, 2018
This guide introduces you about our first Open EyeTap function, Dash camera + Snapshot! Simply just two buttons to operate this function:
Take a picture when pressing the button #1.
Take a Dash-Camera Video* when pressing the button #2. Saves 1 min 30 sec PRIOR to when the button was pressed and 30 sec AFTER the button has been pressed. Automatically uploads to your YouTube channel if connected to wifi. If the EyeTap is not connected to wifi, saves to its local SD card.
*What is a Dash-Camera Video function?
Dash cameras are common in cars to record accidents or unusual events. They run on circular buffer, constantly recording and over-writing the oldest material. In similar sense, we can now have personal Dash-Cams in 1st person's view. If you witnessed or were involved in any kind of accident, or just simply wanted to record funny/memorable moments, we can press the button to save the recent past. Yes, we are technically accessing the past to save it forever! When button #2 is pressed, the most recent 1 minute 30 seconds IN THE PAST, plus 30 seconds AFTER THE BUTTON PRESS will be recorded and saved as one video file. This will be automatically uploaded to your YouTube channel if connected to wifi, or saved locally if wifi is not connected.
You can download the Raspberry Pi Image where it is a "plug and play" image for Dash Camera + Snapshot Function if you go to the Download page. You can burn the customized raspbian image with the function pre-configured. If you want step-by-step instructions how to install an image on your sd card, go here.
Automatic Execution of Program
The provided image has the dashcam functionality configured to start automatically - to kill this process at any time press ctrl + c, and to disable the autostart remove or comment the "python /home/pi/Eyetap/dashcam/dashcam.py" line from the /home/pi/.bashrc file."
A script called autostart.sh is provided in the dashcam folder that automatically configures the dashcam functionality to start on boot (if it is not already configured to do so). Do this by running the command /home/pi/Eyetap/dashcam/autostart.sh
Connecting EyeTap to Your YouTube Channel
The dashcam code is configured to upload to YouTube automatically, however it requires your personal youtube credentials. When running the code for the first time, it should redirect you to YouTube through a web browser where you can enter your YouTube login credentials securely. It will then generate a .youtube-upload-credentials.json file which you can place in your home directory (/home/pi). You can also change the title and desc
ription of the uploaded video as well as parameters such as resolution, framerate, and video length as described in the code.
Retrieving Saved Photos and Videos
When connecting to the EyeTap to retrieve your videos, there are a few options.
1. The first, and perhaps most simple, is to remove your SD card and read it with your computer (any OS should work). The stored photos and videos can be found in the same directory as the dashcam software itself - in the "root" partition, inside the /home/pi folder. You would need a usb-sd card reader if your laptop or phone does not have a slot for sd card reader (photo^).
2. Second option is to simply attach a
usb keyboard, a mouse and monitor that takes a HDMI (display) to the EyeTap and navigate (click) to the same folder (/home/pi/). You would need a mini to regular HDMI converter (right photo), a HDMI cable, and micro-usb to female usb converter (left photo) for this option. You can then choose to retrieve them through email, cloud storage, USB, etc. This option also allows access to the code itself for you to modify or create a new program/function.
3. Third option is to retrieve the files via SCP protocol. This requires you to know the local IP address of your EyeTap Pi - which can be found again with the USB mouse/keyboard, or a network scanner like nmap. With this, you can use any SCP file transfer method, such as WinSCP on Windows (here), or simply the SCP command in MacOS or Linux shell (here). This option also allows access to the code itself for you to modify or create a new program/function.