## HomeServerIOExt When migrating my home control server from a Raspberry Pi to x86 hardware I needed an interface to connect some sensors (door contact, PIR sensors, temperature sensor) which were previously connected to the RPiĀ“s GPIOs. This simple solution consists of an Arduino Nano which is connected to the host via USB and a daemon written in Python which publishes the states over MQTT. - Arduino reads the sensors/IO-Pins and sends values/state changes via Serial - Python program runs as a daemon, receives the serial data and sends values/states to an MQTT broker ### Installation - download/copy ioext directory to /home/pi/ioext - edit ioext.py - change configuration for serial, MQTT etc (serial should be accessed via /dev/serial/by-id/...) - if python3 and/or pip is not installed - install it as root: apt install python3 python3-pip - install requirements: pip install -r requirements.txt - chmod +x /home/pi/ioext/ioext.py - test it: ./ioext.py install systemd service (as root): - cp /home/pi/ioext/ioext.service /usr/lib/systemd/system - systemctl daemon-reload - systemctl enable ioext - systemctl start ioext