VoCore Time-Lapse Photography

I’ve had my VoCore for around a month now and have been fiddling with them a bit. So far I’ve compiled my own rootfs (source now available in OpenWrt trunk), installed mjpeg-streamer, soldered some resistor legs to the VoCore for easier breadboarding, put a heatsink on the RT5350, setup a breadboard circuit with USB port and Logitech C250 webcam, and connected a SparkFun Power Cell for system load and charging a 12.6Wh LiPo cell pulled from an iPad 1st gen.

A hobby of mine is gardening and lately I’ve been reading about Permaculture. This got me thinking about redesigning my backyard to be more productive by growing perennial food plants and better utilizing my available resources (e.g. sunlight). There are large trees that block the sun from coming into the yard at different times of the day. This is a perfect opportunity to use the VoCore to create a time-lapse video of the yard to help in my re-design.

I rearranged my breadboard to hold everything (powercell, vocore, webcam, LiPo) and added a tripod mount. This is definitely not a permanent mounting solution but more of a quick and dirty one. Kapton tape holds the webcam, battery and tripod mount (which is just a piece of plexi drilled and tapped for the tripod) onto the breadboard. A zip-tie holds the long webcam USB cable in place.

Running on the VoCore is my compiled rootfs with nothing special installed except kmod-video-uvc, mjpg-streamer and v4l-utils. The VoCore wifi is setup in station mode and connects to my home router/server running Debian. I’ve disabled the ethernet ports which draw unneeded power in this setup according to this post. You need to edit the mjpg-streamer config file at /etc/config/mjpg-streamer to your liking and make sure option enabled = 1. That’s basically it for the VoCore setup. On my server I set a static IP for the VoCore and created a shell script to grab an image from the VoCore at a defined interval:

#!/bin/bash
# Grab webcam images for time-lapse

# How often to grab image in seconds
delay=30

# Path to save images
savepath="/home/mozzwald/timelapse/"

# VoCore URL
serverurl="http://192.168.0.99:8080/?action=snapshot"

# Start the image grab loop
while true; do
        now=`date +%F_%T` # Timestamp is the filename
        wget -t 2 -q "$serverurl" -O "/tmp/$now.jpg"
        if [ ! -s "/tmp/$now.jpg" ]; then
                # Just in case file is empty, delete
                rm "/tmp/$now.jpg"
        else
                mv "/tmp/$now.jpg" "$savepath/$now.jpg"
        fi
        sleep "$delay"
done

I did have some issues with the webcam exposure. After the sun really came out the image became extremely bright and washed out. According to the Linux UVC Driver page, my webcam is fully supported but I could not, unfortunately, get auto exposure to work. I haven’t looked very hard yet for a fix and instead found a happy medium for a manual daytime exposure setting. The camera settings can be changed by ssh’ing to the VoCore and using the v4l2-ctl command. I will be making a few videos (pending weather) until I get a decent exposure of a whole day.

Alas, this is the video from today (including bad exposures) 13.5 hours at 20fps made with mencoder (how to):

Update: Still have to manually adjust the exposure every few hours, but this video is much better than yesterdays:

3 comments

  1. Hi, I was trying to do almost the exact same thing with my VoCore.
    I think I have the right kmods etc installed but don't have internet access as I am setting this up at work and it can't connect to wpa2-enterprise :( (no hard rj45 soldered yet)...
    I can however connect directly to it from my laptop.
    Do you have the compiled mjpg-streamer and v4l-utils that I could copy onto my VoCore please?
    I got as far as seeing /dev/video0 appear when I plug the camera in so far...

    Pyrofer Mon, 15 Sep 2014

  2. I am looking to do the same with the VoCore usb camera.
    any help on the setup and file locations to get going. Must likely will use latest version 2 cube. Wifi streeming. I will also see if I can stream to android phone.

    thanks

    Daniel

    — Daniel Cote Fri, 13 Jan 2017

  3. @Daniel,
    If you're not up for building your own openwrt packages, I see that noblepepper has a package repo for the Vocore2 and it has mjpg-streamer in it. I only have the VoCore1 beta version so I can't be of much help with packages for the VoCore2. Those in the VoCore forum should be able to help...

    http://forum.vocore.io/viewtopic.php?f=16&t=3422

    mozzwald Fri, 13 Jan 2017

CAPTCHA Image

Play CAPTCHA Audio
Refresh Image

Archives By Month

Tags