pidor/README.txt

108 lines
3.1 KiB
Plaintext

Pidor is controlling the state of Level2 on the website, spaceapi and twitter
This documentation is work in progress, sorry about that.
Connectivity
connect the doorlock relay to gpio 7
connect button of doorlock to gpio 11
connect the 433mhz transmitter to pin 2 (gpio 17)
Install
put raspian image on SD card and put into rPi
ssh to pi@<ip address>
if that does not work, edit the SD card and put into etc/rc.local "/etc/init.d/ssh start"
sudo bash # all is installed under root
apt-get install php5-curl # for twitter
apt-get install git # for getting this
apt-get install wiringpi # for the buttons and stuff
apt-get install gawk # raspian has mawk by default which lacks time functions
tzselect
comment out the last 4 lines of rsyslogd.conf (for xconsole)
like explained here https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=122601
echo "pidor" > /etc/hostname
sed -i 's/^127.0.1.1.*/127.0.1.1 pidor/' /etc/hosts
cp -p systemfiles/sudoers.d/* /etc/sudoers.d/
mkdir /root/var # kinda important
put your ssh key in git and on the pi's /root/.ssh
cd /root
git clone git@github.com:syn2cat/pidor.git
cd pidor
git config --global user.email "pidor@level2.lu"
git config --global user.name pidor
# set fixed IP at end of /etc/dhcpcd.conf
interface eth0
static ip_address=10.10.10.10/24
static routers=10.10.10.1
static domain_name_servers=10.10.10.1
put discard (for fstrim) in fstab
/dev/mmcblk0p2 / ext4 discard,defaults,noatime 0 1
reboot
NO systemd:
put this in /etc/inittab (see example in systemfiles/inittab)
# pidor
P0:2345:respawn:/root/pidor/scripts/lockbutton.sh
P1:2345:respawn:/root/pidor/scripts/beamerdetect.sh
P2:2345:respawn:/root/pidor/scripts/ws4beamer_status.py
P3:2345:respawn:/root/pidor/scripts/peoplecounter-realtime.sh
P4:2345:respawn:/root/pidor/scripts/caststatus.py
WITH systemd
cd systemfiles/
cp -p systemd/system/* /etc/systemd/system/
systemctl enable lockbutton.service beamerdetect.service ws4beamer_status.service peoplecounter-realtime.service caststatus.service
systemctl daemon-reload
systemctl start lockbutton.service beamerdetect.service ws4beamer_status.service peoplecounter-realtime.service caststatus.service
# get beamer status on port 5042
apt-get install python-flask
put the beamer IP into beamerip.txt
put the peoplecounter ip into peoplecounterip.txt
put entry for doorbuzz in /etc/hosts
ln lightcommander /usr/local/bin/ # this is quite important
fill in the crontab
* * * * * /root/pidor/scripts/dhcp2presency.sh
* * * * * /root/pidor/scripts/upd_status.sh > /run/spacestatus.out 2>&1
#needs an apache for the lights commander
apt-get install apache2 php5
cd ~/pidor/www && ./intallwebsite.sh
service apache2 restart
# download windos sound bytes to /root/win
# e.g. here http://joshlalonde.deviantart.com/art/Windows-XP-Sounds-158309567
#
mkdir /root/win
cd /root/win
If you have a chromecast, script to switch off if chromecast is iddle:
cd ~/pidor
git clone git@github.com:balloob/pychromecast.git
cd pychromecast
sudo apt-get install python-dev python-pip
sudo pip install --upgrade pip
sudo pip install -r requirements.txt