mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 07:49:52 +03:00
roomctrl RC200 version with 2.id
This commit is contained in:
@@ -171,7 +171,7 @@ void Roomctrl::check(const uint8_t addr, const uint8_t * data, const uint8_t len
|
|||||||
* send version info RC20 (Prod. 113, Ver. 02.01) or RC20RF (Prod. 93, Ver. 02.00)
|
* send version info RC20 (Prod. 113, Ver. 02.01) or RC20RF (Prod. 93, Ver. 02.00)
|
||||||
*/
|
*/
|
||||||
void Roomctrl::version(uint8_t addr, uint8_t dst) {
|
void Roomctrl::version(uint8_t addr, uint8_t dst) {
|
||||||
uint8_t data[10];
|
uint8_t data[15];
|
||||||
data[0] = addr;
|
data[0] = addr;
|
||||||
data[1] = dst;
|
data[1] = dst;
|
||||||
data[2] = 0x02;
|
data[2] = 0x02;
|
||||||
@@ -179,8 +179,19 @@ void Roomctrl::version(uint8_t addr, uint8_t dst) {
|
|||||||
data[4] = type_; // set RC20 id 113, Ver 02.01 or Junkers FB10 id 109, Ver 16.05, RC100H id 200 ver 40.04
|
data[4] = type_; // set RC20 id 113, Ver 02.01 or Junkers FB10 id 109, Ver 16.05, RC100H id 200 ver 40.04
|
||||||
data[5] = type_ == RC20 ? 2 : type_ == FB10 ? 16 : type_ == RC200 ? 41 : 40;
|
data[5] = type_ == RC20 ? 2 : type_ == FB10 ? 16 : type_ == RC200 ? 41 : 40;
|
||||||
data[6] = type_ == RC20 ? 1 : type_ == FB10 ? 5 : type_ == RC200 ? 8 : 4;
|
data[6] = type_ == RC20 ? 1 : type_ == FB10 ? 5 : type_ == RC200 ? 8 : 4;
|
||||||
data[7] = EMSbus::calculate_crc(data, 7); // apppend CRC
|
if (type_ != RC200) {
|
||||||
EMSuart::transmit(data, 8);
|
data[7] = EMSbus::calculate_crc(data, 7); // apppend CRC
|
||||||
|
EMSuart::transmit(data, 8);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// RC200 adds some extra bytes
|
||||||
|
data[7] = 0;
|
||||||
|
data[8] = 0xFF, data[9] = 0;
|
||||||
|
data[10] = 0;
|
||||||
|
data[11] = 0;
|
||||||
|
data[12] = 0;
|
||||||
|
data[13] = EMSbus::calculate_crc(data, 13); // apppend CRC
|
||||||
|
EMSuart::transmit(data, 14);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user