#### 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`