- Deleted the INFORMATION_NEEDED.md file as it was no longer necessary for documentation. - Revised README.md to enhance the overview of the home automation system, focusing on how services and CODESYS connectivity work. - Updated project structure in README.md for better organization and clarity, including links to relevant documentation. This update simplifies the documentation and improves the overall user experience for developers and users of the home automation system.
1.5 KiB
1.5 KiB
Home Automation
How home automation works in this house: services and CODESYS connectivity.
How it works
- CODESYS (Raspberry Pi) runs the PLC: lights and water boiler via EtherCAT I/O.
- Node-RED runs automation logic and talks to CODESYS over UDP (network variables).
- MQTT broker (LXC) is the message bus.
- Zigbee2MQTT bridges Zigbee switches to MQTT.
- Home Assistant is the dashboard and can trigger automations.
Flow: Zigbee switch or HA → Node-RED → UDP → CODESYS → EtherCAT → relays/lights or boiler.
Project layout
kkelomatic_home/
├── codesys/ # CODESYS project and source (PLC logic, NVL)
├── docs/ # Documentation (architecture, services, Codesys)
└── scripts/ # parse-codesys-xml.py
Documentation
- Architecture & setup: docs/reference/architecture.md, setup.md
- Services: docs/integration/ — MQTT, Node-RED, Home Assistant, Zigbee2MQTT
- CODESYS: docs/codesys/codesys.md, codesys/src/NVL/README.md (connectivity)
CODESYS connectivity
- NVL_Out (PLC → Node-RED): light states + boiler status, UDP.
- NVL_In (Node-RED → PLC): light and boiler commands, UDP.
See codesys/src/NVL/README.md and nodered-payload.md for layout and ports.