Warning: mains voltage. Some nodes (nodo_fuori, nodo_boiler) drive loads connected to the 230 V mains: a mistake can cause electric shock and fire. Always work with the circuit disconnected from the mains, use an insulating enclosure and a suitable fuse, and do not touch anything while it is powered. If you have no experience with mains voltage, do not build them. The project is described for educational purposes: building it is the responsibility of whoever does it.
The project
The system is made of several nodes distributed around the house, each with a precise task (outdoor light, bathroom light, doorbell, boiler), coordinated by a central server with a web dashboard. Every choice, from the firmware to the power circuit, is documented step by step, because the value of the project lies in understanding how and why it works.
Every node and the server have a dedicated page, with the description of the project and the material to download (schematics, sources, support files): you will find them in the list The nodes.
Architecture
The S3 server collects the telemetry and the commands of the nodes over WebSocket, a two-way connection that stays open and lets the server send data without the browser asking for it. The button of the gate node reaches nodo_fuori and nodo_suoneria with an ESP-NOW broadcast message: ESP-NOW is an Espressif protocol that lets ESP32 boards talk to each other without a router, and with the broadcast address the message reaches all the nodes that are listening.