VisionCams utilise a set of open-source libraries to extract and process images from the Raspberry Pi's Camera Module. The default program takes time-lapse pictures depending on how much movement is detected in the scene and is activated by swivelling the lens cover open.
Installing the VisionCam Software
We have bundled up all of VisionCam's software into an SD card image, otherwise known as an ISO file. It contains the camera's operating system, as well as the default time-lapse program. You'll need a computer with an SD card reader, a 16GB (or larger) microSD card, and about 10GB of free space on your computer. Here's what to do to install the image onto an SD card:
Download the VisionCam ISO file here.
Once the download finishes, unzip the file.
Use Etcher to burn the file to a 16GB (or larger) SD card.
Place the SD card in the Raspberry Pi and power it up. You should be able to see an animation of the VisionCam’s peephole. Once it’s swivelled open, it’ll start recording time lapses.
In order to access the photos and change settings on the VisionCam, you’ll need to connect it to a WiFi router.
Remove the microSD card from the VisionCam and insert it into a computer.
On the computer, open the boot partition and create a new file called wpa_supplicant.conf
Within that file, add the following contents and change the ssid and psk to match your WiFi’s name and password:
Safely eject the card and reinsert it into the VisionCam. Once powered up, it should connect to your WiFi network.
Accessing the Photos
Make sure you have set up the VisionCam’s WiFi as described above.
On a Mac, if the VisionCam is connected to the same network, it will show up in Finder under the Shared section. You can connect to it with the username pi and the password raspberry. The photos can be found in the LinedrawingTimelapse folder.
On a Windows machine, use WinSCP to connect to the camera. Be sure to select SCP as the method. The host is visioncam.local, the username is pi and the password is raspberry. The photos can be found in the LinedrawingTimelapse folder.
If you’re tech savvy, you can SSH straight into the Raspberry Pi with the above credentials.
Setting Up a VisionCam Tall
In order to change the orientation of the program for the VisionCam Tall, connect to the camera with the above instructions and locate the conf.json file. Edit the file and change the flip_video parameter to 1. Restart the camera and the program should now have the correct orientation.
Developers and tinkerers can utilise the VisionCam's open-source libraries to make their own programs from scratch. Most VisionCam programs are coded in Python. Images are read from the Raspberry Pi Camera with the picamera module. Image processing and computer vision is done with OpenCV. VisionCam programs sit within the Raspberry Pi operating system and are launched automatically on startup. The program to launch is specified in the .xsession file, located within the home directory.
When you're developing programs for the VisionCam, it's really handy to connect to it via WiFi. If you are an experienced command line user, you can SSH straight into it. If not, you can connect to VisionCam's file system via netatalk. On a Mac, if the VisionCam is connected to the same network, it will show up in Finder under the Shared section. You can connect to it with the username pi and the password raspberry.
If all of this sounds like crazy jargon, don't worry. If you've done a little bit of programming before, you'll be able to get started without setting up complicated toolchains. Python is an accessible, forgiving programming language; that's why we've chosen it. We have created a few tools and examples to help you along. Here are a few starting points:
Start with a BlankExample
You can find the simplest program you could ever run on a VisionCam here. It reads frames from the camera's video port, displays them on the screen, and saves them if a button is pressed. This is a great starting point for you. In fact, when we develop a new VisionCam program, we always start with this one to get up and running quickly.
Here are some of the experiments we’ve made. Please note that we do not actively support these, but do use them as a starting point to develop your own programs.