Add device id of Truma Combi 6 D
This commit is contained in:
parent
fd7806885b
commit
176a8e0735
@ -384,7 +384,7 @@ const u_int8_t *TrumaiNetBoxApp::lin_multiframe_recieved(const u_int8_t *message
|
|||||||
ESP_LOGI(TAG, "StatusFrameDevice");
|
ESP_LOGI(TAG, "StatusFrameDevice");
|
||||||
// This message is special. I recieve one response per registered (at CP plus) device.
|
// This message is special. I recieve one response per registered (at CP plus) device.
|
||||||
// Example:
|
// Example:
|
||||||
// SID<---------PREAMBLE---------->|<---MSG_HEAD---->|
|
// SID<---------PREAMBLE---------->|<---MSG_HEAD---->|count|??|??|Hardware|Software|??|??
|
||||||
// Combi4
|
// Combi4
|
||||||
// BB.00.1F.00.1E.00.00.22.FF.FF.FF.54.01.0C.0B.00.79.02.00.01.00.50.00.00.04.03.02.AD.10 - C4.03.02 0050.00
|
// BB.00.1F.00.1E.00.00.22.FF.FF.FF.54.01.0C.0B.00.79.02.00.01.00.50.00.00.04.03.02.AD.10 - C4.03.02 0050.00
|
||||||
// BB.00.1F.00.1E.00.00.22.FF.FF.FF.54.01.0C.0B.00.27.02.01.01.00.40.03.22.02.00.01.00.00 - H2.00.01 0340.22
|
// BB.00.1F.00.1E.00.00.22.FF.FF.FF.54.01.0C.0B.00.27.02.01.01.00.40.03.22.02.00.01.00.00 - H2.00.01 0340.22
|
||||||
@ -405,21 +405,25 @@ const u_int8_t *TrumaiNetBoxApp::lin_multiframe_recieved(const u_int8_t *message
|
|||||||
bool found_unkown_value = false;
|
bool found_unkown_value = false;
|
||||||
if (device.unkown_0 != 0x01 || device.unkown_1 != 0x00)
|
if (device.unkown_0 != 0x01 || device.unkown_1 != 0x00)
|
||||||
found_unkown_value = true;
|
found_unkown_value = true;
|
||||||
if (truma_device != TRUMA_DEVICE::HEATER_COMBI && truma_device != TRUMA_DEVICE::HEATER_VARIO &&
|
if (truma_device != TRUMA_DEVICE::AIRCON_DEVICE && truma_device != TRUMA_DEVICE::HEATER_COMBI4 &&
|
||||||
truma_device != TRUMA_DEVICE::CPPLUS_COMBI && truma_device != TRUMA_DEVICE::CPPLUS_VARIO)
|
truma_device != TRUMA_DEVICE::HEATER_VARIO && truma_device != TRUMA_DEVICE::CPPLUS_COMBI &&
|
||||||
|
truma_device != TRUMA_DEVICE::CPPLUS_VARIO && truma_device != TRUMA_DEVICE::HEATER_COMBI6D)
|
||||||
found_unkown_value = true;
|
found_unkown_value = true;
|
||||||
|
|
||||||
if (found_unkown_value)
|
if (found_unkown_value)
|
||||||
ESP_LOGW(TAG, "Unkown information in StatusFrameDevice found. Please report.");
|
ESP_LOGW(TAG, "Unkown information in StatusFrameDevice found. Please report.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Assumption device id one is always the heater.
|
if (truma_device == TRUMA_DEVICE::HEATER_COMBI4) {
|
||||||
if (device.device_id == 1) {
|
this->heater_device_ = TRUMA_DEVICE::HEATER_COMBI4;
|
||||||
if (truma_device == TRUMA_DEVICE::HEATER_COMBI) {
|
} else if (truma_device == TRUMA_DEVICE::HEATER_COMBI6D) {
|
||||||
this->heater_device_ = TRUMA_DEVICE::HEATER_COMBI;
|
this->heater_device_ = TRUMA_DEVICE::HEATER_COMBI6D;
|
||||||
} else if (truma_device == TRUMA_DEVICE::HEATER_VARIO) {
|
} else if (truma_device == TRUMA_DEVICE::HEATER_VARIO) {
|
||||||
this->heater_device_ = TRUMA_DEVICE::HEATER_VARIO;
|
this->heater_device_ = TRUMA_DEVICE::HEATER_VARIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (truma_device == TRUMA_DEVICE::AIRCON_DEVICE) {
|
||||||
|
this->aircon_device_ = TRUMA_DEVICE::AIRCON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
return response;
|
return response;
|
||||||
|
|||||||
@ -306,10 +306,18 @@ struct StatusFrameConfig { // NOLINT(altera-struct-pack-align)
|
|||||||
|
|
||||||
enum class TRUMA_DEVICE : u_int8_t {
|
enum class TRUMA_DEVICE : u_int8_t {
|
||||||
UNKOWN = 0x00,
|
UNKOWN = 0x00,
|
||||||
HEATER_COMBI = 0x02,
|
// Saphir Compact AC
|
||||||
|
AIRCON_DEVICE = 0x01,
|
||||||
|
// Combi 4
|
||||||
|
HEATER_COMBI4 = 0x02,
|
||||||
|
// Vario Heat Comfort (non E)
|
||||||
HEATER_VARIO = 0x03,
|
HEATER_VARIO = 0x03,
|
||||||
|
// CP Plus for Combi
|
||||||
CPPLUS_COMBI = 0x04,
|
CPPLUS_COMBI = 0x04,
|
||||||
|
// CP Plus for Vario Heat
|
||||||
CPPLUS_VARIO = 0x05,
|
CPPLUS_VARIO = 0x05,
|
||||||
|
// Combi 6 D
|
||||||
|
HEATER_COMBI6D = 0x06,
|
||||||
};
|
};
|
||||||
|
|
||||||
// Length 12 (0x0C)
|
// Length 12 (0x0C)
|
||||||
@ -434,7 +442,8 @@ class TrumaiNetBoxApp : public LinBusProtocol {
|
|||||||
u_int8_t message_counter = 1;
|
u_int8_t message_counter = 1;
|
||||||
|
|
||||||
// Truma heater conected to CP Plus.
|
// Truma heater conected to CP Plus.
|
||||||
TRUMA_DEVICE heater_device_ = TRUMA_DEVICE::HEATER_COMBI;
|
TRUMA_DEVICE heater_device_ = TRUMA_DEVICE::HEATER_COMBI4;
|
||||||
|
TRUMA_DEVICE aircon_device_ = TRUMA_DEVICE::UNKOWN;
|
||||||
|
|
||||||
std::vector<StatusFrameListener> listeners_heater_;
|
std::vector<StatusFrameListener> listeners_heater_;
|
||||||
CallbackManager<void(const StatusFrameHeater *)> state_heater_callback_{};
|
CallbackManager<void(const StatusFrameHeater *)> state_heater_callback_{};
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user