Prerequisites - pageauc/pi-timolo GitHub Wiki
What you Need for this Project
- Hardware
- User Skill Level
- Internet Connection
- Optional Python 3 and Opencv3 Support
- Optional Python 3 pyexiv2 Support
- Miscellaneous
Hardware
The following hardware is required to run PI-TIMOLO
- Raspberry Pi Computer - You must have a raspberry pi model A, A+, B, B+, B-2 or 3 with a recemt Raspbian build but will run on earlier versions.
- Raspberry Pi Camera Module Ver 1 or 2You must have a pi camera module installed and working. There are several tutorials showing [how to install and setup the pi camera module[(https://www.raspberrypi.org/documentation/usage/camera/).
User Skill Level
This wiki assumes the user knows how to
- Use SSH (Putty) terminal connection to the RPI on a local area network
- Familiar with using the Raspberry pi nano or similar text editor
- Familiar with how to cut and paste data from/to command line, nano or similar text editor using a logged in ssh (putty) or desktop terminal session.
Internet Connection
The pi-timolo-install.sh setup, rclone and watch-app.sh require an operational internet connection via wifi
or wired connection. Wifi needs to be setup to work on boot with no desktop in
order for the camera to optionally sync unattended with a remote storage service name.
Once installed an internet connection is not required to run pi-timolo.
Note if you use rclone syncing, an internet connection will be required to upload files to your rclone remote storage service name.
Optional Python 3 Support
PI-TIMOLO release 9.x is now compatible with python3 but will require opencv3 for python3 and optionally py3exiv2 library.
Opencv3 Install
Opencv3 is Required If you plan to run pi-timolo.py with python3. For detailed information about compiling and installing python3 Opencv3 support see my GitHub Opencv3 Setup project This is the quick install curl script from the Opencv3 Setup Project.
curl -L https://raw.github.com/pageauc/opencv3-setup/master/setup.sh | bash
Optional pyexiv2 Support
pyexiv2 support is required to copy EXIF camera data when writing text to images. pi-timolo release 9.x will run under python3 without the pyexiv2 available but some EXIF camera meta data will be lost if writing text to images. exiv2 is not required if text is not written to images. You can built the python3 pyexiv2 library support per instructions below. For more information see GitHub Repo https://github.com/mcmclx/py3exiv2
Quick Install py3exiv2
curl -L https://raw.github.com/pageauc/pi-timolo/master/source/install-py3exiv2.sh | bash
This bash script will run the clone and compile source to executable per commands below.
Manual Install py3exiv2
cd ~
git clone https://github.com/mcmclx/py3exiv2.git
sudo apt-get install -y python-all-dev
sudo apt-get install -y libexiv2-dev
sudo apt-get install -y libboost-python-dev
sudo apt-get install -y g++
cd py3exiv2
python3 configure.py
./build.sh
sudo ./build.sh -i
/usr/lib/python3/dist-packages/libexiv2python.so should be installed and you should be able to import pyexiv2 in python3. pi-timolo will automatically use this library if available.
NOTE After successful install you can delete the *py3exiv2 folder per
cd ~
sudo rm -r py3exiv2
Miscellaneous
I have written the pi-timolo python script and bash sync scripts to make it somewhat independent of the folder names etc. This minimizes hard coding folder names in the scripts. If you run the script manually from the command line then logging messages can be enabled in config.py per VERBOSE_ON = True to display status and error information on the console to allow trouble shooting.