Zezwolenie na sterowanie pinami
Aby móc strować pinami należy wykonać następujące polecenie:
cd /etc/
sudo nano sudoers
Na samym dole dopisać:
www-data ALL=(root) NOPASSWD:ALL
Nestępnie wykonujemy:
sudo raspi-config
wybieramy: "interfacing options"
a następnie: "1-Wire" i oznaczamy na "enable"
instalacja potrzebnych bibliotek
sudo apt install -y python3-dev
sudo apt install -y python-imaging python-smbus i2c-tools
sudo apt install -y python3-pil
sudo apt install -y python3-pip
sudo apt install -y python3-setuptools
sudo apt install -y python3-rpi.gpio
Instalacja biblioteki do obsługi czujników DS18B20
sudo apt-get install python3-w1thermsensor
sudo pip3 install w1thermsensor
sudo pip install w1thermsensor
Instalacje serwera / brokera MQTT
opis pobrany ze strony: https://randomnerdtutorials.com/how-to-install-mosquitto-broker-on-raspberry-pi/
instalacja:
sudo apt install -y mosquitto mosquitto-clients
najprostsza konfiguracja:
sudo nano /etc/mosquitto/mosquitto.conf
dodanie na końcu:
listener 1883
allow_anonymous true
ustawienie jako serwisu
sudo systemctl enable mosquitto.service
restart:
sudo systemctl restart mosquitto
lub stop:
sudo systemctl stop mosquitto
Instalacje klienta MQTT
sudo pip3 install paho-mqtt
Korzystanie z Ram Dysku (8Mb)
sudo chmod 777 /mnt/ramdisk
sudo mkfs -q /dev/ram1 2048
sudo mount /dev/ram1 /mnt/ramdisk
sudo mkdir /mnt/ramdisk
lub
sudo mkdir /mnt/ramdisk
a następnie dodanie wpisu w pliku do automatycznego uruchamiania
sudo nano /etc/rc.local
I przed „exit 0” dodajemy:
sudo mkfs -q /dev/ram1 2048
sudo mount /dev/ram1 /mnt/ramdisk
sudo chmod 777 /mnt/ramdisk
Dodanie uruchamiania plików przy starcie
Wpisujemy w konsoli:
sudo nano /etc/rc.local
I przed „exit 0” dodajemy ale po utworzeniu ram dysku:
sudo python3 /var/www/html/ihome/pt/mk.py &
sudo python3 /var/www/html/ihome/pt/mk2.py &
sudo python3 /var/www/html/ihome/pt/devices.py &
sudo python3 /var/www/html/ihome/pt/mqtt.py &
sudo python3 /var/www/html/ihome/pt/events.py &
sudo python3 /var/www/html/ihome/pt/ports.py &
sudo python3 /var/www/html/ihome/pt/i2c.py &
sudo python3 /var/www/html/ihome/pt/rs485.py &
sudo python3 /var/www/html/ihome/pt/rflink.py &
sudo python3 /var/www/html/ihome/pt/pings.py &
sudo python3 /var/www/html/ihome/pt/zigbee.py &
sudo python3 /var/www/html/ihome/pt/zwave.py &
sudo python3 /var/www/html/ihome/pt/boiler_ot.py &
sudo python3 /var/www/html/ihome/pt/heating.py &
sudo python3 /var/www/html/ihome/pt/cooling.py &
instalacja bibliotek do wyświetlacza OLED 128×32 and 128×64
git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git
cd Adafruit_Python_SSD1306
sudo python3 setup.py install
Zezwolenie na serial port / sterowanie wyświetlaczem
sudo raspi-config
wybieramy: "interfacing options"
następnie: "I2C" i oznaczamy na "enable"
Wyłączenie błędów w komunikacji / serial-port
sudo systemctl stop serial-getty@ttyS0.service
sudo systemctl disable serial-getty@ttyS0.service
te wpisy należy równiez dodać do pliku uruchamiania:
sudo nano /etc/rc.local
I przed „exit 0” dodajemy ale po utworzeniu ram dysku
Sprawdzenie listy urządzeń podłączonych do magistrali I2C
Wpisujemy w konsoli:
i2cdetect -y 1