Hmm, it seems there is a issue (might be caused the quirk as well).
The calibration values are not interpreted correct by zhaquirks.
e.g. the calibration value -0.4 from the AHC blueprint becomes -4 in the device attribute for some reason.
Values below -0.6 and above 0.6 are not displayed correct since the min/max range for the slider of the device is -6 to 6. So a AHC calibration value of -2.5 becomes -6 in the UI (set to -25 in the attribute variable anyway)
From the zha quirk i can see it expects a int32 value for this attribute:
SASWELL_TEMP_CORRECTION_ATTR = 0x021B # uint32 - temp correction 539
attributes.update(
{
SASWELL_ONOFF_ATTR: ("on_off", t.uint8_t, True),
SASWELL_TARGET_TEMP_ATTR: ("target_temperature", t.uint32_t, True
SASWELL_ROOM_TEMP_ATTR: ("current_room_temp", t.uint32_t, True),
SASWELL_CHILD_LOCK_ATTR: ("child_lock", t.uint8_t, True),
SASWELL_SCHEDULE_MODE_ATTR: ("schedule_mode", t.uint8_t, True),
SASWELL_WINDOW_DETECT_ATTR: ("window_detection", t.uint8_t, True)
SASWELL_ANTI_FREEZE_ATTR: ("anti_freeze_protection", t.uint8_t, T
SASWELL_LIMESCALE_PROTECT_ATTR: ("limescale_protection", t.uint8_
SASWELL_AWAY_MODE_ATTR: ("away_mode", t.uint8_t, True),
SASWELL_BATTERY_ALARM_ATTR: ("battery_low", t.uint8_t, True),
SASWELL_TEMP_CORRECTION_ATTR: (
"room_temperature_correction",
t.int32s,
True,
),
}
)