Zigbee support for Lidl Livarno Lux Remote Control Dimmer

This commit is contained in:
Stephan Hadinger 2021-01-17 16:12:25 +01:00
parent e6afdf0291
commit 5f04cf2ec8
2 changed files with 219 additions and 216 deletions

View File

@ -73,7 +73,7 @@ def strings_to_pmem(arg):
DO NOT EDIT DO NOT EDIT
*/ */
const char Z_strings[] PROGMEM = const char Z_strings[] PROGMEM =
"\x00" "\x00"
"00" "\x00" "00" "\x00"
"00190200" "\x00" "00190200" "\x00"
@ -278,6 +278,7 @@ const char Z_strings[] PROGMEM =
"LastMessageLQI" "\x00" "LastMessageLQI" "\x00"
"LastMessageRSSI" "\x00" "LastMessageRSSI" "\x00"
"LastSetTime" "\x00" "LastSetTime" "\x00"
"LidlPower" "\x00"
"LocalTemperature" "\x00" "LocalTemperature" "\x00"
"LocalTemperatureCalibration" "\x00" "LocalTemperatureCalibration" "\x00"
"LocalTime" "\x00" "LocalTime" "\x00"
@ -699,221 +700,222 @@ enum Z_offsets {
Zo_LastMessageLQI = 3308, Zo_LastMessageLQI = 3308,
Zo_LastMessageRSSI = 3323, Zo_LastMessageRSSI = 3323,
Zo_LastSetTime = 3339, Zo_LastSetTime = 3339,
Zo_LocalTemperature = 3351, Zo_LidlPower = 3351,
Zo_LocalTemperatureCalibration = 3368, Zo_LocalTemperature = 3361,
Zo_LocalTime = 3396, Zo_LocalTemperatureCalibration = 3378,
Zo_LocationAge = 3406, Zo_LocalTime = 3406,
Zo_LocationMethod = 3418, Zo_LocationAge = 3416,
Zo_LocationType = 3433, Zo_LocationMethod = 3428,
Zo_LockState = 3446, Zo_LocationType = 3443,
Zo_LockType = 3456, Zo_LockState = 3456,
Zo_LongPollInterval = 3465, Zo_LockType = 3466,
Zo_LongPollIntervalMin = 3482, Zo_LongPollInterval = 3475,
Zo_MainsFrequency = 3502, Zo_LongPollIntervalMin = 3492,
Zo_MainsVoltage = 3517, Zo_MainsFrequency = 3512,
Zo_Manufacturer = 3530, Zo_MainsVoltage = 3527,
Zo_MaxTempExperienced = 3543, Zo_Manufacturer = 3540,
Zo_MeterTypeID = 3562, Zo_MaxTempExperienced = 3553,
Zo_MinTempExperienced = 3574, Zo_MeterTypeID = 3572,
Zo_Mode = 3593, Zo_MinTempExperienced = 3584,
Zo_Model = 3598, Zo_Mode = 3603,
Zo_ModelId = 3604, Zo_Model = 3608,
Zo_MotorStepSize = 3612, Zo_ModelId = 3614,
Zo_Movement = 3626, Zo_MotorStepSize = 3622,
Zo_MullerLightMode = 3635, Zo_Movement = 3636,
Zo_MultiApplicationType = 3651, Zo_MullerLightMode = 3645,
Zo_MultiDescription = 3672, Zo_MultiApplicationType = 3661,
Zo_MultiInApplicationType = 3689, Zo_MultiDescription = 3682,
Zo_MultiInDescription = 3712, Zo_MultiInApplicationType = 3699,
Zo_MultiInNumberOfStates = 3731, Zo_MultiInDescription = 3722,
Zo_MultiInOutOfService = 3753, Zo_MultiInNumberOfStates = 3741,
Zo_MultiInReliability = 3773, Zo_MultiInOutOfService = 3763,
Zo_MultiInStatusFlags = 3792, Zo_MultiInReliability = 3783,
Zo_MultiInValue = 3811, Zo_MultiInStatusFlags = 3802,
Zo_MultiNumberOfStates = 3824, Zo_MultiInValue = 3821,
Zo_MultiOutApplicationType = 3844, Zo_MultiNumberOfStates = 3834,
Zo_MultiOutDescription = 3868, Zo_MultiOutApplicationType = 3854,
Zo_MultiOutNumberOfStates = 3888, Zo_MultiOutDescription = 3878,
Zo_MultiOutOfService = 3911, Zo_MultiOutNumberOfStates = 3898,
Zo_MultiOutOutOfService = 3929, Zo_MultiOutOfService = 3921,
Zo_MultiOutReliability = 3950, Zo_MultiOutOutOfService = 3939,
Zo_MultiOutRelinquishDefault = 3970, Zo_MultiOutReliability = 3960,
Zo_MultiOutStatusFlags = 3996, Zo_MultiOutRelinquishDefault = 3980,
Zo_MultiOutValue = 4016, Zo_MultiOutStatusFlags = 4006,
Zo_MultiReliability = 4030, Zo_MultiOutValue = 4026,
Zo_MultiRelinquishDefault = 4047, Zo_MultiReliability = 4040,
Zo_MultiStatusFlags = 4070, Zo_MultiRelinquishDefault = 4057,
Zo_MultiValue = 4087, Zo_MultiStatusFlags = 4080,
Zo_MultipleScheduling = 4098, Zo_MultiValue = 4097,
Zo_NumberOfDevices = 4117, Zo_MultipleScheduling = 4108,
Zo_NumberOfPrimaries = 4133, Zo_NumberOfDevices = 4127,
Zo_NumberOfResets = 4151, Zo_NumberOfPrimaries = 4143,
Zo_NumberofActuationsLift = 4166, Zo_NumberOfResets = 4161,
Zo_NumberofActuationsTilt = 4189, Zo_NumberofActuationsLift = 4176,
Zo_Occupancy = 4212, Zo_NumberofActuationsTilt = 4199,
Zo_OccupancySensorType = 4222, Zo_Occupancy = 4222,
Zo_OccupiedCoolingSetpoint = 4242, Zo_OccupancySensorType = 4232,
Zo_OccupiedHeatingSetpoint = 4266, Zo_OccupiedCoolingSetpoint = 4252,
Zo_OnOffTransitionTime = 4290, Zo_OccupiedHeatingSetpoint = 4276,
Zo_OpenPeriod = 4310, Zo_OnOffTransitionTime = 4300,
Zo_OppleMode = 4321, Zo_OpenPeriod = 4320,
Zo_OutdoorTemperature = 4331, Zo_OppleMode = 4331,
Zo_OverTempTotalDwell = 4350, Zo_OutdoorTemperature = 4341,
Zo_PICoolingDemand = 4369, Zo_OverTempTotalDwell = 4360,
Zo_PIHeatingDemand = 4385, Zo_PICoolingDemand = 4379,
Zo_POD = 4401, Zo_PIHeatingDemand = 4395,
Zo_Panic = 4405, Zo_POD = 4411,
Zo_PartNumber = 4411, Zo_Panic = 4415,
Zo_PersistentMemoryWrites = 4422, Zo_PartNumber = 4421,
Zo_PersonalAlarm = 4445, Zo_PersistentMemoryWrites = 4432,
Zo_PhysicalClosedLimit = 4459, Zo_PersonalAlarm = 4455,
Zo_PhysicalClosedLimitLift = 4479, Zo_PhysicalClosedLimit = 4469,
Zo_PhysicalClosedLimitTilt = 4503, Zo_PhysicalClosedLimitLift = 4489,
Zo_Power = 4527, Zo_PhysicalClosedLimitTilt = 4513,
Zo_Power2 = 4533, Zo_Power = 4537,
Zo_Power3 = 4540, Zo_Power2 = 4543,
Zo_Power4 = 4547, Zo_Power3 = 4550,
Zo_PowerOffEffect = 4554, Zo_Power4 = 4557,
Zo_PowerOnRecall = 4569, Zo_PowerOffEffect = 4564,
Zo_PowerOnTimer = 4583, Zo_PowerOnRecall = 4579,
Zo_PowerSource = 4596, Zo_PowerOnTimer = 4593,
Zo_PowerThreshold = 4608, Zo_PowerSource = 4606,
Zo_Pressure = 4623, Zo_PowerThreshold = 4618,
Zo_PressureMaxMeasuredValue = 4632, Zo_Pressure = 4633,
Zo_PressureMaxScaledValue = 4657, Zo_PressureMaxMeasuredValue = 4642,
Zo_PressureMinMeasuredValue = 4680, Zo_PressureMaxScaledValue = 4667,
Zo_PressureMinScaledValue = 4705, Zo_PressureMinMeasuredValue = 4690,
Zo_PressureScale = 4728, Zo_PressureMinScaledValue = 4715,
Zo_PressureScaledTolerance = 4742, Zo_PressureScale = 4738,
Zo_PressureScaledValue = 4766, Zo_PressureScaledTolerance = 4752,
Zo_PressureTolerance = 4786, Zo_PressureScaledValue = 4776,
Zo_Primary1Intensity = 4804, Zo_PressureTolerance = 4796,
Zo_Primary1X = 4822, Zo_Primary1Intensity = 4814,
Zo_Primary1Y = 4832, Zo_Primary1X = 4832,
Zo_Primary2Intensity = 4842, Zo_Primary1Y = 4842,
Zo_Primary2X = 4860, Zo_Primary2Intensity = 4852,
Zo_Primary2Y = 4870, Zo_Primary2X = 4870,
Zo_Primary3Intensity = 4880, Zo_Primary2Y = 4880,
Zo_Primary3X = 4898, Zo_Primary3Intensity = 4890,
Zo_Primary3Y = 4908, Zo_Primary3X = 4908,
Zo_ProductCode = 4918, Zo_Primary3Y = 4918,
Zo_ProductRevision = 4930, Zo_ProductCode = 4928,
Zo_ProductURL = 4946, Zo_ProductRevision = 4940,
Zo_QualityMeasure = 4957, Zo_ProductURL = 4956,
Zo_RMSCurrent = 4972, Zo_QualityMeasure = 4967,
Zo_RMSVoltage = 4983, Zo_RMSCurrent = 4982,
Zo_ReactivePower = 4994, Zo_RMSVoltage = 4993,
Zo_RecallScene = 5008, Zo_ReactivePower = 5004,
Zo_RemainingTime = 5020, Zo_RecallScene = 5018,
Zo_RemoteSensing = 5034, Zo_RemainingTime = 5030,
Zo_RemoveAllGroups = 5048, Zo_RemoteSensing = 5044,
Zo_RemoveAllScenes = 5064, Zo_RemoveAllGroups = 5058,
Zo_RemoveGroup = 5080, Zo_RemoveAllScenes = 5074,
Zo_RemoveScene = 5092, Zo_RemoveGroup = 5090,
Zo_ResetAlarm = 5104, Zo_RemoveScene = 5102,
Zo_ResetAllAlarms = 5115, Zo_ResetAlarm = 5114,
Zo_SWBuildID = 5130, Zo_ResetAllAlarms = 5125,
Zo_Sat = 5140, Zo_SWBuildID = 5140,
Zo_SatMove = 5144, Zo_Sat = 5150,
Zo_SatStep = 5152, Zo_SatMove = 5154,
Zo_SceneCount = 5160, Zo_SatStep = 5162,
Zo_SceneValid = 5171, Zo_SceneCount = 5170,
Zo_ScheduleMode = 5182, Zo_SceneValid = 5181,
Zo_SeaPressure = 5195, Zo_ScheduleMode = 5192,
Zo_ShortPollInterval = 5207, Zo_SeaPressure = 5205,
Zo_Shutter = 5225, Zo_ShortPollInterval = 5217,
Zo_ShutterClose = 5233, Zo_Shutter = 5235,
Zo_ShutterLift = 5246, Zo_ShutterClose = 5243,
Zo_ShutterOpen = 5258, Zo_ShutterLift = 5256,
Zo_ShutterStop = 5270, Zo_ShutterOpen = 5268,
Zo_ShutterTilt = 5282, Zo_ShutterStop = 5280,
Zo_SoftwareRevision = 5294, Zo_ShutterTilt = 5292,
Zo_StackVersion = 5311, Zo_SoftwareRevision = 5304,
Zo_StandardTime = 5324, Zo_StackVersion = 5321,
Zo_StartUpOnOff = 5337, Zo_StandardTime = 5334,
Zo_Status = 5350, Zo_StartUpOnOff = 5347,
Zo_StoreScene = 5357, Zo_Status = 5360,
Zo_SwitchType = 5368, Zo_StoreScene = 5367,
Zo_SystemMode = 5379, Zo_SwitchType = 5378,
Zo_TRVBoost = 5390, Zo_SystemMode = 5389,
Zo_TRVChildProtection = 5399, Zo_TRVBoost = 5400,
Zo_TRVMirrorDisplay = 5418, Zo_TRVChildProtection = 5409,
Zo_TRVMode = 5435, Zo_TRVMirrorDisplay = 5428,
Zo_TRVWindowOpen = 5443, Zo_TRVMode = 5445,
Zo_TempTarget = 5457, Zo_TRVWindowOpen = 5453,
Zo_Temperature = 5468, Zo_TempTarget = 5467,
Zo_TemperatureMaxMeasuredValue = 5480, Zo_Temperature = 5478,
Zo_TemperatureMinMeasuredValue = 5508, Zo_TemperatureMaxMeasuredValue = 5490,
Zo_TemperatureTolerance = 5536, Zo_TemperatureMinMeasuredValue = 5518,
Zo_TerncyDuration = 5557, Zo_TemperatureTolerance = 5546,
Zo_TerncyRotate = 5572, Zo_TerncyDuration = 5567,
Zo_ThSetpoint = 5585, Zo_TerncyRotate = 5582,
Zo_Time = 5596, Zo_ThSetpoint = 5595,
Zo_TimeEpoch = 5601, Zo_Time = 5606,
Zo_TimeStatus = 5611, Zo_TimeEpoch = 5611,
Zo_TimeZone = 5622, Zo_TimeStatus = 5621,
Zo_TotalProfileNum = 5631, Zo_TimeZone = 5632,
Zo_TuyaAutoLock = 5647, Zo_TotalProfileNum = 5641,
Zo_TuyaAwayDays = 5660, Zo_TuyaAutoLock = 5657,
Zo_TuyaAwayTemp = 5673, Zo_TuyaAwayDays = 5670,
Zo_TuyaBattery = 5686, Zo_TuyaAwayTemp = 5683,
Zo_TuyaBoostTime = 5698, Zo_TuyaBattery = 5696,
Zo_TuyaChildLock = 5712, Zo_TuyaBoostTime = 5708,
Zo_TuyaComfortTemp = 5726, Zo_TuyaChildLock = 5722,
Zo_TuyaEcoTemp = 5742, Zo_TuyaComfortTemp = 5736,
Zo_TuyaFanMode = 5754, Zo_TuyaEcoTemp = 5752,
Zo_TuyaForceMode = 5766, Zo_TuyaFanMode = 5764,
Zo_TuyaMaxTemp = 5780, Zo_TuyaForceMode = 5776,
Zo_TuyaMinTemp = 5792, Zo_TuyaMaxTemp = 5790,
Zo_TuyaPreset = 5804, Zo_TuyaMinTemp = 5802,
Zo_TuyaScheduleHolidays = 5815, Zo_TuyaPreset = 5814,
Zo_TuyaScheduleWorkdays = 5836, Zo_TuyaScheduleHolidays = 5825,
Zo_TuyaTempTarget = 5857, Zo_TuyaScheduleWorkdays = 5846,
Zo_TuyaValveDetection = 5872, Zo_TuyaTempTarget = 5867,
Zo_TuyaValvePosition = 5891, Zo_TuyaValveDetection = 5882,
Zo_TuyaWeekSelect = 5909, Zo_TuyaValvePosition = 5901,
Zo_TuyaWindowDetection = 5924, Zo_TuyaWeekSelect = 5919,
Zo_UnoccupiedCoolingSetpoint = 5944, Zo_TuyaWindowDetection = 5934,
Zo_UnoccupiedHeatingSetpoint = 5970, Zo_UnoccupiedCoolingSetpoint = 5954,
Zo_UtilityName = 5996, Zo_UnoccupiedHeatingSetpoint = 5980,
Zo_ValidUntilTime = 6008, Zo_UtilityName = 6006,
Zo_ValvePosition = 6023, Zo_ValidUntilTime = 6018,
Zo_VelocityLift = 6037, Zo_ValvePosition = 6033,
Zo_ViewGroup = 6050, Zo_VelocityLift = 6047,
Zo_ViewScene = 6060, Zo_ViewGroup = 6060,
Zo_Water = 6070, Zo_ViewScene = 6070,
Zo_WhitePointX = 6076, Zo_Water = 6080,
Zo_WhitePointY = 6088, Zo_WhitePointX = 6086,
Zo_WindowCoveringType = 6100, Zo_WhitePointY = 6098,
Zo_X = 6119, Zo_WindowCoveringType = 6110,
Zo_Y = 6121, Zo_X = 6129,
Zo_ZCLVersion = 6123, Zo_Y = 6131,
Zo_ZoneState = 6134, Zo_ZCLVersion = 6133,
Zo_ZoneStatus = 6144, Zo_ZoneState = 6144,
Zo_ZoneStatusChange = 6155, Zo_ZoneStatus = 6154,
Zo_ZoneType = 6172, Zo_ZoneStatusChange = 6165,
Zo_xx = 6181, Zo_ZoneType = 6182,
Zo_xx000A00 = 6184, Zo_xx = 6191,
Zo_xx0A = 6193, Zo_xx000A00 = 6194,
Zo_xx0A00 = 6198, Zo_xx0A = 6203,
Zo_xx19 = 6205, Zo_xx0A00 = 6208,
Zo_xx190A = 6210, Zo_xx19 = 6215,
Zo_xx190A00 = 6217, Zo_xx190A = 6220,
Zo_xxxx = 6226, Zo_xx190A00 = 6227,
Zo_xxxx00 = 6231, Zo_xxxx = 6236,
Zo_xxxx0A00 = 6238, Zo_xxxx00 = 6241,
Zo_xxxxyy = 6247, Zo_xxxx0A00 = 6248,
Zo_xxxxyyyy = 6254, Zo_xxxxyy = 6257,
Zo_xxxxyyyy0A00 = 6263, Zo_xxxxyyyy = 6264,
Zo_xxxxyyzz = 6276, Zo_xxxxyyyy0A00 = 6273,
Zo_xxyy = 6285, Zo_xxxxyyzz = 6286,
Zo_xxyy0A00 = 6290, Zo_xxyy = 6295,
Zo_xxyyyy = 6299, Zo_xxyy0A00 = 6300,
Zo_xxyyyy000000000000 = 6306, Zo_xxyyyy = 6309,
Zo_xxyyyy0A0000000000 = 6325, Zo_xxyyyy000000000000 = 6316,
Zo_xxyyyyzz = 6344, Zo_xxyyyy0A0000000000 = 6335,
Zo_xxyyyyzzzz = 6353, Zo_xxyyyyzz = 6354,
Zo_xxyyzzzz = 6364, Zo_xxyyyyzzzz = 6363,
Zo_xxyyzzzz = 6374,
}; };

View File

@ -69,6 +69,7 @@ const Z_CommandConverter Z_Commands[] PROGMEM = {
{ Z_(PowerOffEffect), 0x0006, 0x40, 0x81, Z_(xxyy) }, // Power Off With Effect { Z_(PowerOffEffect), 0x0006, 0x40, 0x81, Z_(xxyy) }, // Power Off With Effect
{ Z_(PowerOnRecall), 0x0006, 0x41, 0x81, Z_() }, // Power On With Recall Global Scene { Z_(PowerOnRecall), 0x0006, 0x41, 0x81, Z_() }, // Power On With Recall Global Scene
{ Z_(PowerOnTimer), 0x0006, 0x42, 0x81, Z_(xxyyyyzzzz) }, // Power On with Timed Off { Z_(PowerOnTimer), 0x0006, 0x42, 0x81, Z_(xxyyyyzzzz) }, // Power On with Timed Off
{ Z_(LidlPower), 0x0006, 0xFD, 0x01, Z_(xx) }, // Lidl specific encoding
{ Z_(Power), 0x0006, 0xFF, 0x01, Z_() }, // 0=Off, 1=On, 2=Toggle { Z_(Power), 0x0006, 0xFF, 0x01, Z_() }, // 0=Off, 1=On, 2=Toggle
{ Z_(Dimmer), 0x0008, 0x04, 0x01, Z_(xx0A00) }, // Move to Level with On/Off, xx=0..254 (255 is invalid) { Z_(Dimmer), 0x0008, 0x04, 0x01, Z_(xx0A00) }, // Move to Level with On/Off, xx=0..254 (255 is invalid)
{ Z_(DimmerUp), 0x0008, 0x06, 0x01, Z_(00190200) }, // Step up by 10%, 0.2 secs { Z_(DimmerUp), 0x0008, 0x06, 0x01, Z_(00190200) }, // Step up by 10%, 0.2 secs