c049a28c97779ea94e40ce77db4e3c2db0a6f29c
- Introduced a single global room configuration file to streamline the management of rooms and lights, reducing redundancy in configuration. - Updated various integration scripts to utilize the global configuration, enhancing maintainability and clarity. - Improved documentation to reflect the new configuration approach, including instructions for loading and modifying the room configuration. This update simplifies the integration process and improves the overall user experience for managing lights and rooms in Node-RED.
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%