23439e1cd0e5647ec698d93b189cc0d166690d21
- Added a new section in README.md for creating and managing lights by room in Home Assistant, linking to a focused guide. - Enhanced the all-lights-and-rooms.md documentation with a reference to the new guide for clarity on entity creation and room assignment. - Made minor adjustments to the room-config.js file, commenting out outdated device-to-room mappings to improve code clarity. This update improves the documentation and usability for users managing lights and rooms in Home Assistant.
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.
Description
Languages
JavaScript
69.8%
Smalltalk
22%
Python
8.2%