47 if (data.size() < MODBUS_REGISTER_COUNT[this->protocol_version_] * 2)
50 auto publish_1_reg_sensor_state = [&](
sensor::Sensor *sensor,
size_t i,
float unit) ->
void {
51 if (sensor ==
nullptr)
53 float value =
encode_uint16(data[i * 2], data[i * 2 + 1]) * unit;
57 auto publish_2_reg_sensor_state = [&](
sensor::Sensor *sensor,
size_t reg1,
size_t reg2,
float unit) ->
void {
58 float value = ((
encode_uint16(data[reg1 * 2], data[reg1 * 2 + 1]) << 16) +
61 if (sensor !=
nullptr)