- Added support for RGBW and RGBCW color modes in the DALI Gateway. - Updated JSON color mode parsing to handle new color types. - Extended the StoreDt8SceneSnapshot function to include white, amber, and free color parameters. - Introduced new methods in DaliGatewayBridge for setting RGBW, RGBCW, and RGBWAF colors. - Modified KnxDaliChannel to send RGBW and RGBCW colors based on the color type. - Updated parameter types and definitions in the KNX product XML files to accommodate new color modes. - Enhanced README with migration details and validation instructions. Signed-off-by: Tony <tonylu@tony-cloud.com>
DALI-GW KNX Product XML
This folder contains the gateway-owned OpenKNXproducer source for the REG1-Dali KNX-DALI gateway persona.
The source migrates the legacy Kaenx Creator database from temp/openknx/GW-REG1-Dali/DALI-GW.ae-manu into the gateway component so the generated product database, generated knxprod.h, and ESP-IDF runtime can evolve together.
Current migration targets:
- Manufacturer/OpenKNX id:
0xA4 - Application number:
0x01 - Application version:
0x09 - Mask:
MV-07B0 - Order number:
REG1-Dali - Address channels:
64 - Group channels:
16 - HCL curves:
3
The existing color type values stay stable for compatibility:
HSV = 0RGB = 1TW = 2XYY = 3RGBW = 4RGBCW = 5
RGBW is exposed with standard DPT 251.600 (DPT_Colour_RGBW). RGBCW uses the same RGBW payload shape and maps the white and amber DT8 RGBWAF channels as cool-white and warm-white levels at runtime because the local KNX master database does not define a standard RGBCW datapoint subtype.
Validation
Run a well-formed XML check from the repository root:
xmllint --noout gateway/components/knx_dali_gw/knxprod/*.xml
Generate the producer header and product database artifacts with:
OpenKNXproducer create --NoXsd \
-h /tmp/DALI-GW-knxprod.h \
-o /tmp/DALI-GW.knxprod \
gateway/components/knx_dali_gw/knxprod/DALI-GW.xml
In this workspace the producer validates the XML and writes /tmp/DALI-GW-knxprod.h. If the local producer installation does not have an ETS converter available it prints No ETS found, skipped knxprod creation! and omits the .knxprod archive while still exiting successfully.
The generated header must stay synchronized with the runtime identity in gateway/apps/gateway/main/Kconfig.projbuild and gateway/components/knx_dali_gw/src/knx_dali_gw.cpp.