mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 07:49:52 +03:00
remote use RC200 for hc3/4
This commit is contained in:
@@ -98,7 +98,7 @@ void Roomctrl::send(const uint8_t addr) {
|
|||||||
humidity(addr, 0x10, hc);
|
humidity(addr, 0x10, hc);
|
||||||
sendcnt[hc] = 0;
|
sendcnt[hc] = 0;
|
||||||
} else { // temperature telegram
|
} else { // temperature telegram
|
||||||
if (remotehum_[hc] != EMS_VALUE_UINT_NOTSET) {
|
if (remotehum_[hc] != EMS_VALUE_UINT_NOTSET && hc < 2) {
|
||||||
sendcnt[hc] = 1;
|
sendcnt[hc] = 1;
|
||||||
} else {
|
} else {
|
||||||
rc_time_[hc] = uuid::get_uptime();
|
rc_time_[hc] = uuid::get_uptime();
|
||||||
@@ -175,7 +175,6 @@ 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 : 40;
|
data[5] = type_ == RC20 ? 2 : type_ == FB10 ? 16 : 40;
|
||||||
data[6] = type_ == RC20 ? 1 : type_ == FB10 ? 5 : 4;
|
data[6] = type_ == RC20 ? 1 : type_ == FB10 ? 5 : 4;
|
||||||
/*
|
|
||||||
if (type_ == RC100H && addr > 0x39) { // use RC200 id=157,ver 41.08
|
if (type_ == RC100H && addr > 0x39) { // use RC200 id=157,ver 41.08
|
||||||
data[4] = 157;
|
data[4] = 157;
|
||||||
data[5] = 41;
|
data[5] = 41;
|
||||||
@@ -185,7 +184,6 @@ void Roomctrl::version(uint8_t addr, uint8_t dst) {
|
|||||||
data[5] = type_ == RC20 ? 2 : type_ == FB10 ? 16 : 40;
|
data[5] = type_ == RC20 ? 2 : type_ == FB10 ? 16 : 40;
|
||||||
data[6] = type_ == RC20 ? 1 : type_ == FB10 ? 5 : 4;
|
data[6] = type_ == RC20 ? 1 : type_ == FB10 ? 5 : 4;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
data[7] = EMSbus::calculate_crc(data, 7); // apppend CRC
|
data[7] = EMSbus::calculate_crc(data, 7); // apppend CRC
|
||||||
EMSuart::transmit(data, 8);
|
EMSuart::transmit(data, 8);
|
||||||
}
|
}
|
||||||
@@ -239,7 +237,6 @@ void Roomctrl::temperature(uint8_t addr, uint8_t dst, uint8_t hc) {
|
|||||||
data[7] = (uint8_t)(remotetemp_[hc] & 0xFF);
|
data[7] = (uint8_t)(remotetemp_[hc] & 0xFF);
|
||||||
data[8] = EMSbus::calculate_crc(data, 8); // apppend CRC
|
data[8] = EMSbus::calculate_crc(data, 8); // apppend CRC
|
||||||
EMSuart::transmit(data, 9);
|
EMSuart::transmit(data, 9);
|
||||||
/*
|
|
||||||
} else if (type_ == RC100H && hc >= 2) { // RC200, telegram 42B, ff
|
} else if (type_ == RC100H && hc >= 2) { // RC200, telegram 42B, ff
|
||||||
data[2] = 0xFF;
|
data[2] = 0xFF;
|
||||||
data[3] = 0;
|
data[3] = 0;
|
||||||
@@ -253,7 +250,6 @@ void Roomctrl::temperature(uint8_t addr, uint8_t dst, uint8_t hc) {
|
|||||||
data[10] = 1; // not sure what this is and if we need it, maybe mode?
|
data[10] = 1; // not sure what this is and if we need it, maybe mode?
|
||||||
data[11] = EMSbus::calculate_crc(data, 11); // apppend CRC
|
data[11] = EMSbus::calculate_crc(data, 11); // apppend CRC
|
||||||
EMSuart::transmit(data, 12);
|
EMSuart::transmit(data, 12);
|
||||||
*/
|
|
||||||
} else if (type_ == RC100H) { // RC100H, telegram 42B, ff
|
} else if (type_ == RC100H) { // RC100H, telegram 42B, ff
|
||||||
data[2] = 0xFF;
|
data[2] = 0xFF;
|
||||||
data[3] = 0;
|
data[3] = 0;
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ class Roomctrl {
|
|||||||
static void check(const uint8_t addr, const uint8_t * data, const uint8_t length);
|
static void check(const uint8_t addr, const uint8_t * data, const uint8_t length);
|
||||||
static void set_remotetemp(const uint8_t type, const uint8_t hc, const int16_t temp);
|
static void set_remotetemp(const uint8_t type, const uint8_t hc, const int16_t temp);
|
||||||
static void set_remotehum(const uint8_t type, const uint8_t hc, const int8_t hum);
|
static void set_remotehum(const uint8_t type, const uint8_t hc, const int8_t hum);
|
||||||
enum : uint8_t { RC20 = 113, FB10 = 109, RC100H = 200, SENSOR = 0x40 };
|
enum : uint8_t { RC20 = 113, FB10 = 109, RC100H = 200, SENSOR = 0x40, RC200 = 157 };
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static constexpr uint8_t ADDR = 0x18; // address for hc1
|
static constexpr uint8_t ADDR = 0x18; // address for hc1
|
||||||
|
|||||||
Reference in New Issue
Block a user