Add KNX DALI Gateway Module and Message Queue Implementation
- Introduced KnxDaliModule class for handling DALI message queuing, commissioning, and KNX group-object dispatch. - Implemented Message and MessageQueue classes for managing message operations. - Removed obsolete OpenKNX IDF component files and CMake configurations. - Updated submodule reference for KNX. Signed-off-by: Tony <tonylu@tony-cloud.com>
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
#pragma once
|
||||
|
||||
// Minimal stub for knxprod.h — generated KNX product definitions.
|
||||
// The full file (1796 bytes of parameters, 1439 group objects) will be
|
||||
// adapted in Phase 3 to use the gateway/knx API directly.
|
||||
|
||||
// Product identity
|
||||
#define MAIN_OpenKnxId 0xA4
|
||||
#define MAIN_ApplicationNumber 1
|
||||
#define MAIN_ApplicationVersion 5
|
||||
#define MAIN_OrderNumber "REG1-Dali"
|
||||
#define MAIN_ParameterSize 1796
|
||||
#define MAIN_MaxKoNumber 1439
|
||||
|
||||
// Parameter type enums (subset)
|
||||
enum PT_DeviceType : uint8_t {
|
||||
PT_deviceType_Deaktiviert = 0,
|
||||
PT_deviceType_DT0 = 1,
|
||||
PT_deviceType_DT1 = 2,
|
||||
PT_deviceType_DT6 = 3,
|
||||
PT_deviceType_DT8 = 4,
|
||||
};
|
||||
|
||||
enum PT_ColorType : uint8_t {
|
||||
PT_colorType_HSV = 0,
|
||||
PT_colorType_RGB = 1,
|
||||
PT_colorType_TW = 2,
|
||||
PT_colorType_XYY = 3,
|
||||
};
|
||||
|
||||
enum PT_ColorSpace : uint8_t {
|
||||
PT_colorSpace_rgb = 0,
|
||||
PT_colorSpace_xy = 1,
|
||||
};
|
||||
|
||||
// Placeholder macros — will be replaced with direct Bau07B0 access in Phase 3.
|
||||
#define ParamAPP_daynight(channelIndex) (0)
|
||||
#define ParamAPP_funcBtn(channelIndex) (0)
|
||||
#define ParamAPP_funcBtnLong(channelIndex) (0)
|
||||
#define ParamAPP_funcBtnDbl(channelIndex) (0)
|
||||
|
||||
#define ParamADR_deviceType(channelIndex) (PT_DeviceType::PT_deviceType_Deaktiviert)
|
||||
#define ParamADR_type(channelIndex) (0)
|
||||
#define ParamADR_min(channelIndex) (0)
|
||||
#define ParamADR_max(channelIndex) (254)
|
||||
#define ParamADR_stairtime(channelIndex) (0)
|
||||
#define ParamADR_onDay(channelIndex) (0)
|
||||
#define ParamADR_onNight(channelIndex) (0)
|
||||
#define ParamADR_error(channelIndex) (0)
|
||||
#define ParamADR_queryTime(channelIndex) (0)
|
||||
#define ParamADR_colorType(channelIndex) (PT_ColorType::PT_colorType_TW)
|
||||
#define ParamADR_colorSpace(channelIndex) (PT_ColorSpace::PT_colorSpace_rgb)
|
||||
|
||||
#define ParamGRP_deviceType(channelIndex) (PT_DeviceType::PT_deviceType_Deaktiviert)
|
||||
#define ParamGRP_type(channelIndex) (0)
|
||||
#define ParamGRP_colorType(channelIndex) (PT_ColorType::PT_colorType_TW)
|
||||
|
||||
#define ParamHCL_type(channelIndex) (0)
|
||||
|
||||
// Group object offset placeholders
|
||||
#define ADR_KoOffset 0
|
||||
#define GRP_KoOffset 0
|
||||
#define HCL_KoOffset 0
|
||||
#define ADR_KoBlockSize 0
|
||||
#define GRP_KoBlockSize 0
|
||||
#define HCL_KoBlockSize 0
|
||||
Reference in New Issue
Block a user