0af21f4dc388d2215d7b8c2f91569107dfe85617
- Updated global variable lists in GVL_IO.gvl and GVL_NVL_placeholders.gvl to reflect new room naming conventions and structures. - Revised PLC_App.st to map new room configurations for lighting control. - Enhanced documentation in all-lights-and-rooms.md and ha-lights-and-rooms.md to align with updated room and light entity naming. - Adjusted room-config.js and related Node-RED flows to support the new configuration structure. This update improves the organization and clarity of room and light management within the Node-RED integration, ensuring consistency across the system.
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%