Hermod TV Panel
Installation
Beginning
- Create user
hermod
: (as root orsudo
)adduser hermod
- Put it in the same groups as pi (other than the
pi
group):groups pi | sed 's/ /,/g'
,usermod -a -G group1,group2,... hermod
- Change
pi
androot
passwords sudo apt remove wolfram-engine minecraft-pi
sudo apt autoremove
sudo apt update && sudo apt upgrade && sudo reboot
sudo apt install git vim screen htop
-
sudo date -s '2018-02-15 2:26:00'
if needed (change the date to current date ofc) - Generate RSA key
ssh-keygen -t rsa -C "hermod.inno@gmail.com" -b 4096
and add it to gitlab - Clone project in
~
:git clone git@gitlab.viarezo.fr:hermod/tv_panel.git
cp front/src/config.template.js front/src/config.js
cp server/config.template.js server/config.js
- Useful links:
ln -s ~/tv_panel/scripts/.screenrc ~/
,ln -s ~/tv_panel/scripts/.vimrc ~/
Telegram message on statup to get IP address
cp scripts/waitForNetwork /root/scripts/waitForNetwork
cp scripts/startup-telegram-message /root/scripts/startup-telegram-message
-
sudo vim /root/scripts/startup-telegram-message
to add the token and chat id - Add in root crontab (
sudo crontab -e
):
@reboot sleep 1 && /root/scripts/waitForNetwork && /root/scripts/startup-telegram-message
Boot config
vim /boot/config.txt
to comment out dtparam=audio=on
-> #dtparam=audio=on
and add
# Serial
enable_uart=1
dtoverlay=pi3-disable-bt
Reboot
Download nodejs:
-
wget https://nodejs.org/dist/v9.7.1/node-v9.7.1-linux-armv6l.tar.xz
(to adapt to most recent version) tar xf node-v9.7.1-linux-armv6l.tar.xz
sudo mv node-v9.7.1-linux-armv6l /usr/lib/nodejs/node-v9
-
vim .profile
to add:
# Nodejs
export NODEJS_HOME=/usr/lib/nodejs/node-v9
export PATH=$NODEJS_HOME/bin:$PATH
After reboot or log out - log in, npm install -g yarn
WS2812
- Wiring: VCC -> |<diode| -> 5V, GND -> GND, Data -> (resistor ~100 ohm) -> (pin 12 / BCM 18 / PWM0)
sudo apt install scons
git clone https://github.com/jgarff/rpi_ws281x.git && cd rpi_ws281x
- Edit
main.c
to put good stuff (width height for testing) scons
-
sudo ./test
to test follow ./python/README.md for python installation
To display a status LED without root
-
cp scripts/statusRGB_listener.py /root/scripts/statusRGB_listener.py
(fromtv_panel
directory) - Add in root crontab (
sudo crontab -e
):
@reboot /usr/bin/python3 /root/scripts/statusRGB_listener.py
- Reboot or run
/usr/bin/python3 /root/scripts/statusRGB_listener.py &
as root - To display a color for t seconds (float):
echo "55ee33 1" > /dev/rgb_pipe
Disable screen sleeping
vim .config/lxsession/LXDE-pi/autostart
to add
@xset s noblank
@xset s off
@xset -dpms
RFID reader
- Wiring: VCC -> 5V, GND -> GND, RX -> TX, TX -> RX
- In
sudo raspi-config
, disable serial messages but enable serial interface
wget https://github.com/nfc-tools/libnfc/releases/download/libnfc-1.7.1/libnfc-1.7.1.tar.bz2
tar xvjf libnfc-1.7.1.tar.bz2
cd libnfc-1.7.1
./configure --prefix=/usr --sysconfdir=/etc
make
make install
sudo mkdir /etc/nfc
sudo cp libnfc.conf.sample /etc/nfc/libnfc.conf
sudo mkdir -p /etc/nfc/devices.d
sudo cp contrib/libnfc/pn532_uart_on_rpi.conf.sample /etc/nfc/devices.d/
sudo cp contrib/udev/42-pn53x.rules /lib/udev/rules.d/