Files
old-tfm/controller/README.md
2016-11-28 09:26:44 +01:00

77 lines
2.7 KiB
Markdown

# Tfm Controller - little thingy that reads sensors, runs motors and communicates with the cloud
## Installation
1. Go to every subdirectory in drivers directory and follow instructions about installation of drivers
2. edit controller/config/__init__.py and set your controller ID to unique number
3. configure cron to run controller.py every 15 minutes as a superuser:
```
crontab -e -u root
#enter these lines
*/5 * * * * cd /home/pi/projects/tfm/controller && sh activity.sh
*/30 * * * * /usr/bin/python /home/pi/projects/tfm/controller/network_check.py
*/1 * * * * /usr/bin/python /home/pi/projects/tfm/controller/camera_capture.py
```
4. add following lines at the end of /etc/rc.local before "exit 0"
```
python /home/pi/projects/tfm/controller/lockdown.py
python /home/pi/projects/tfm/controller/dweet.py
```
5. create directory
```
mkdir -p /mnt/zoblakdata
```
6. add following line to /etc/fstab for ramdisk
```
tmpfs /mnt/zoblakdata tmpfs nodev,nosuid,size=100M 0 0
```
7. install packages
```
sudo apt-get update
sudo apt-get install libav-tools
```
8. set timezone
```
sudo cp /usr/share/zoneinfo/Europe/Sarajevo /etc/localtime
sudo ntpd -gq
```
9. to set 3g mode
```
sudo apt-get install usb-modeswitch ppp
cd
mkdir umtskeeper
cd umtskeeper
wget "http://mintakaconciencia.net/squares/umtskeeper/src/umtskeeper.tar.gz"
tar -xzvf umtskeeper.tar.gz
chmod +x sakis3g umtskeeper
#add following line at the end of /etc/rc.local before "exit 0" (USBMODEM='12d1:1506' is a VARIABLE visible by issuing the command: lsusb):
sudo /home/pi/umtskeeper/umtskeeper --sakisoperators "USBINTERFACE='0' OTHER='USBMODEM' USBMODEM='12d1:1506' SIM_PIN='0000' APN='CUSTOM_APN' CUSTOM_APN='active.bhmobile.ba' APN_USER='0' APN_PASS='0'" --sakisswitches "--sudo --console" --devicename 'Huawei' --log --silent --monthstart 1 --nat 'no' --sakismaxfails 20 --httpserver &>> /home/pi/umtskeeper/error.log
```
10. to set up vpn
```
generate vpn certificate, key and config (ovpn) files on server (see STEP 3: https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-14-04)
transfer them to the client (WinSCP or a similar tool, maybe need to copy the key files to another directory, set chmod 644 for the .key file in order to transfer it)
edit /etc/rc.local add the line
openvpn --daemon --cd /etc/openvpn --config zoblakFarmAlarmAmirZepce01.ovpn
before "exit 0" in order to start the vpn daemon on startup, where zoblakFarmAlarmAmirZepce01.ovpn is the generated conf file
p.s. just for reference, the setting whether the client is using local or remote gw for internet access is being set for all clients in the /etc/openvpn/server.conf file on the server - comment or uncomment line ;push "redirect-gateway def1 bypass-dhcp"
```