c60ef2ccde
- 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>
48 lines
1.8 KiB
Markdown
48 lines
1.8 KiB
Markdown
# 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 = 0`
|
|
- `RGB = 1`
|
|
- `TW = 2`
|
|
- `XYY = 3`
|
|
- `RGBW = 4`
|
|
- `RGBCW = 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:
|
|
|
|
```sh
|
|
xmllint --noout gateway/components/knx_dali_gw/knxprod/*.xml
|
|
```
|
|
|
|
Generate the producer header and product database artifacts with:
|
|
|
|
```sh
|
|
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`. |