Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[New device support]: TS0601 TZE200_5toc8efa electric floor heating #16044

Closed
VoltickVL opened this issue Jan 9, 2023 · 15 comments
Closed

[New device support]: TS0601 TZE200_5toc8efa electric floor heating #16044

VoltickVL opened this issue Jan 9, 2023 · 15 comments
Labels
new device support New device support request stale Stale issues

Comments

@VoltickVL
Copy link

VoltickVL commented Jan 9, 2023

Link

https://aliexpress.ru/item/1005004352027105.html?spm=a2g2w.orderdetail.0.0.2d174aa6ejwWSN&sku_id=12000029623915182

Database entry

{"id":9,"type":"Router","ieeeAddr":"0x003c84fffef71d75","nwkAddr":60068,"manufId":4098,"manufName":"_TZE200_5toc8efa","powerSource":"Mains (single phase)","modelId":"TS0601","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":81,"inClusterList":[0,4,5,61184],"outClusterList":[25,10],"clusters":{"genBasic":{"attributes":{"65503":"\u0017�N+\u0013!�N+\u0012"�N+\u0012","65506":31,"65508":0,"modelId":"TS0601","manufacturerName":"_TZE200_5toc8efa","stackVersion":0,"dateCode":"","appVersion":72}}},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":72,"stackVersion":0,"hwVersion":1,"dateCode":"","zclVersion":3,"interviewCompleted":true,"meta":{},"lastSeen":1673253884958,"defaultSendRequestWhen":"immediate"}

Comments

I use dev channel (Zigbee2Mqtt Edge) and add new external converter for TZE200_5toc8efa.

I have problem with Bseed thermostat TS0601 TZE200_5toc8efa electric floor heating at Zigbee2Mqtt Edge.
When I set the temperature in the current_heating_setpoint menu: 30 degrees Celsius, my thermostat sets 3.0 degrees Celsius.
If I set 25 degrees Celsius, 2.5 degrees Celsius is set on the thermostat.
And when I set the temperature to 300 degrees Celsius, 30 degrees are set on the thermostat...
Tell me how to fix this problem?

External converter

const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const extend = require('zigbee-herdsman-converters/lib/extend');
const e = exposes.presets;
const ea = exposes.access;
const tuya = require('zigbee-herdsman-converters/lib/tuya');
const exposesLocal = {
    hour: (name) => exposes.numeric(name, ea.STATE_SET).withUnit('h').withValueMin(0).withValueMax(23),
    minute: (name) => exposes.numeric(name, ea.STATE_SET).withUnit('m').withValueMin(0).withValueMax(59),
    program_temperature: (name) => exposes.numeric(name, ea.STATE_SET).withUnit('°C')
        .withValueMin(5).withValueMax(35).withValueStep(0.5),
};

const tzLocal = {
   thermostat_current_heating_setpoint: {
        key: ['current_heating_setpoint'],
        convertSet: async (entity, key, value, meta) => {
            const temp = Math.round(value * 10);
            await tuya.sendDataPointValue(entity, tuya.dataPoints.moesHeatingSetpoint, temp);
        },
   },
};

const definition = {
    fingerprint: [
        {
            modelID: 'TS0601',
            manufacturerName: '_TZE200_5toc8efa',
        },
    ],
    model: 'BHT-002-GCLZB',
    vendor: 'Moes',
    description: 'Moes BHT series Thermostat',
    fromZigbee: [fz.moes_thermostat],
    toZigbee: [tz.moes_thermostat_child_lock, tz.moes_thermostat_mode,
            tz.moes_thermostat_standby, tz.moes_thermostat_sensor, tz.moes_thermostat_calibration,
            tz.moes_thermostat_deadzone_temperature, tz.moes_thermostat_max_temperature_limit, tz.moes_thermostat_min_temperature_limit,
            tz.moes_thermostat_program_schedule, tzLocal.thermostat_current_heating_setpoint],
    onEvent: tuya.onEventSetTime,
    configure: tuya.configureMagicPacket,
    exposes: [e.child_lock(), e.deadzone_temperature(), e.max_temperature_limit(), e.min_temperature_limit(),
            exposes.climate().withSetpoint('current_heating_setpoint', 5, 35, 1, ea.STATE_SET)
                .withLocalTemperature(ea.STATE).withLocalTemperatureCalibration(-30, 30, 1, ea.STATE_SET)
                .withSystemMode(['off', 'heat'], ea.STATE_SET).withRunningState(['idle', 'heat', 'cool'], ea.STATE)
                .withPreset(['hold', 'program']),
            e.temperature_sensor_select(['IN', 'AL', 'OU']),
            exposes.composite('program', 'program').withDescription('Time of day and setpoint to use when in program mode')
                .withFeature(exposesLocal.hour('weekdays_p1_hour'))
                .withFeature(exposesLocal.minute('weekdays_p1_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p1_temperature'))
                .withFeature(exposesLocal.hour('weekdays_p2_hour'))
                .withFeature(exposesLocal.minute('weekdays_p2_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p2_temperature'))
                .withFeature(exposesLocal.hour('weekdays_p3_hour'))
                .withFeature(exposesLocal.minute('weekdays_p3_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p3_temperature'))
                .withFeature(exposesLocal.hour('weekdays_p4_hour'))
                .withFeature(exposesLocal.minute('weekdays_p4_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p4_temperature'))
                .withFeature(exposesLocal.hour('saturday_p1_hour'))
                .withFeature(exposesLocal.minute('saturday_p1_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p1_temperature'))
                .withFeature(exposesLocal.hour('saturday_p2_hour'))
                .withFeature(exposesLocal.minute('saturday_p2_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p2_temperature'))
                .withFeature(exposesLocal.hour('saturday_p3_hour'))
                .withFeature(exposesLocal.minute('saturday_p3_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p3_temperature'))
                .withFeature(exposesLocal.hour('saturday_p4_hour'))
                .withFeature(exposesLocal.minute('saturday_p4_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p4_temperature'))
                .withFeature(exposesLocal.hour('sunday_p1_hour'))
                .withFeature(exposesLocal.minute('sunday_p1_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p1_temperature'))
                .withFeature(exposesLocal.hour('sunday_p2_hour'))
                .withFeature(exposesLocal.minute('sunday_p2_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p2_temperature'))
                .withFeature(exposesLocal.hour('sunday_p3_hour'))
                .withFeature(exposesLocal.minute('sunday_p3_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p3_temperature'))
                .withFeature(exposesLocal.hour('sunday_p4_hour'))
                .withFeature(exposesLocal.minute('sunday_p4_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p4_temperature')),
        ],

};

module.exports = definition;

Supported color modes

No response

Color temperature range

No response

@VoltickVL VoltickVL added the new device support New device support request label Jan 9, 2023
@VoltickVL VoltickVL changed the title [New device support]: [New device support]: TS0601 TZE200_5toc8efa electric floor heating Jan 9, 2023
@VoltickVL
Copy link
Author

VoltickVL commented Jan 9, 2023

LOG:

Warning 2023-01-09 21:31:11 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:31:50 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:31:53 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:32:11 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:32:46 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:32:49 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:33:17 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:34:18 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,19]}}
Warning 2023-01-10 00:04:21 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,4]}}
Warning 2023-01-10 00:05:21 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,9]}}

@VoltickVL VoltickVL reopened this Jan 9, 2023
@VoltickVL
Copy link
Author

VoltickVL commented Jan 10, 2023

I update external converter and now when i set temp to 25 *C at device set same temp, but in z2m i see value 250.
I am not a programmer, please tell me how to edit the code so that the temperature of 25 degrees Celsius and not 250 degrees Celsius is displayed in z2m...

I have already tried different options, but I can't make the device set the temperature according to the formula temp = value *10, and only display temp. In this case, the temperature is set correctly on the device, but the display is not. Has no one ever encountered such a device as mine and no one can help? :(

photo_2023-01-11_00-37-25
photo_2023-01-11_00-38-25
photo_2023-01-11_00-38-32

@VoltickVL
Copy link
Author

@VoltickVL
Copy link
Author

VoltickVL commented Jan 20, 2023

Добрый день мне пришлось внести изменения в свой external_converter чтобы всё работало. Автор не принимает мои правки в файлы From ZigBee.js и ToZigbee.js видимо потому что там есть небольшие ошибки в коде так как я не программист ява. На мои просьбы довести код "до ума" автор не реагирует. Поэтому я скопировал части кода из файлов From ZigBee.js и ToZigbee.js в свой external_converter и исправил в тех местах где мне казалось, что была ошибка. И теперь всё работает как надо ! Если в теме будут грамотные JS-кодеры внесите пожалуйста правки основываясь на моём коде в From ZigBee.js и ToZigbee.js.

====
Good afternoon, I had to make changes to my external_converter to make everything work. The author does not accept my edits to files From ZigBee.js and ToZigbee.js apparently because there are small errors in the code since I am not a Java programmer. The author does not respond to my requests to bring the code "to mind". So I copied parts of the code from the files From ZigBee.js and ToZigbee.js in its external_converter and fixed in those places where it seemed to me that there was a mistake. And now everything works as it should ! If there are competent JS coders in the topic, please make edits based on my code in From ZigBee.js and ToZigbee.js .

// const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const extend = require('zigbee-herdsman-converters/lib/extend');
const e = exposes.presets;
const ea = exposes.access;
const tuya = require('zigbee-herdsman-converters/lib/tuya');
const exposesLocal = {
    hour: (name) => exposes.numeric(name, ea.STATE_SET).withUnit('h').withValueMin(0).withValueMax(23),
    minute: (name) => exposes.numeric(name, ea.STATE_SET).withUnit('m').withValueMin(0).withValueMax(59),
    program_temperature: (name) => exposes.numeric(name, ea.STATE_SET).withUnit('°C')
        .withValueMin(5).withValueMax(35).withValueStep(0.5),
};
const moes_thermostat = {
        cluster: 'manuSpecificTuya',
        type: ['commandDataResponse', 'commandDataReport'],
        convert: (model, msg, publish, options, meta) => {
            const dpValue = tuya.firstDpValue(msg, meta, 'moes_thermostat');
            const dp = dpValue.dp;
            const value = tuya.getDataValue(dpValue);
            let temperature;
            switch (dp) {
            case tuya.dataPoints.moesSchedule:
                return {
                    program: {
                        weekdays_p1_hour: value[0],
                        weekdays_p1_minute: value[1],
                        weekdays_p1_temperature: value[2] / 2,
                        weekdays_p2_hour: value[3],
                        weekdays_p2_minute: value[4],
                        weekdays_p2_temperature: value[5] / 2,
                        weekdays_p3_hour: value[6],
                        weekdays_p3_minute: value[7],
                        weekdays_p3_temperature: value[8] / 2,
                        weekdays_p4_hour: value[9],
                        weekdays_p4_minute: value[10],
                        weekdays_p4_temperature: value[11] / 2,
                        saturday_p1_hour: value[12],
                        saturday_p1_minute: value[13],
                        saturday_p1_temperature: value[14] / 2,
                        saturday_p2_hour: value[15],
                        saturday_p2_minute: value[16],
                        saturday_p2_temperature: value[17] / 2,
                        saturday_p3_hour: value[18],
                        saturday_p3_minute: value[19],
                        saturday_p3_temperature: value[20] / 2,
                        saturday_p4_hour: value[21],
                        saturday_p4_minute: value[22],
                        saturday_p4_temperature: value[23] / 2,
                        sunday_p1_hour: value[24],
                        sunday_p1_minute: value[25],
                        sunday_p1_temperature: value[26] / 2,
                        sunday_p2_hour: value[27],
                        sunday_p2_minute: value[28],
                        sunday_p2_temperature: value[29] / 2,
                        sunday_p3_hour: value[30],
                        sunday_p3_minute: value[31],
                        sunday_p3_temperature: value[32] / 2,
                        sunday_p4_hour: value[33],
                        sunday_p4_minute: value[34],
                        sunday_p4_temperature: value[35] / 2,
                    },
                };
            case tuya.dataPoints.state: // Thermostat on standby = OFF, running = ON
                if (model.model === 'BAC-002-ALZB') {
                    return {system_mode: value ? 'cool' : 'off'};
                } else {
                    return {system_mode: value ? 'heat' : 'off'};
                }
            case tuya.dataPoints.moesChildLock:
                return {child_lock: value ? 'LOCK' : 'UNLOCK'};
            case tuya.dataPoints.moesHeatingSetpoint:
                hsp = value / 10;
                return {current_heating_setpoint: parseFloat(hsp.toFixed(1))};
            case tuya.dataPoints.moesMinTempLimit:
                return {min_temperature_limit: value};
            case tuya.dataPoints.moesMaxTempLimit:
                return {max_temperature_limit: value};
            case tuya.dataPoints.moesMaxTemp:
                return {max_temperature: value};
            case tuya.dataPoints.moesDeadZoneTemp:
                return {deadzone_temperature: value};
            case tuya.dataPoints.moesLocalTemp:
                temp1 = value & 1<<15 ? value - (1<<16) + 1 : value;
                temp2 = temp1 / 10
                return {local_temperature: parseFloat(temp2.toFixed(1))};
            case tuya.dataPoints.moesTempCalibration:
                temperature = value;
                if (temperature > 4000) temperature = temperature - 4096;
                return {local_temperature_calibration: temperature};
            case tuya.dataPoints.moesHold: 
                return {preset_mode: value ? 'program' : 'hold', preset: value ? 'program' : 'hold'};
            case tuya.dataPoints.moesScheduleEnable: 
                return {preset_mode: value ? 'hold' : 'program', preset: value ? 'hold' : 'program'};
            case tuya.dataPoints.moesValve:
                return {heat: value ? 'OFF' : 'ON', running_state: (value ? 'idle' : (model.model === 'BAC-002-ALZB' ? 'cool' : 'heat'))};
            case tuya.dataPoints.moesSensor:
                switch (value) {
                case 0:
                    return {sensor: 'IN'};
                case 1:
                    return {sensor: 'AL'};
                case 2:
                    return {sensor: 'OU'};
                default:
                    return {sensor: 'not_supported'};
                }
            case tuya.dataPoints.bacFanMode:
                return {fan_mode: tuya.fanModes[value]};
            default: 
                meta.logger.warn(`zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #${
                    dp} with data ${JSON.stringify(dpValue)}`);
            }
        },

};    
const moes_thermostat_current_heating_setpoint = {
        key: ['current_heating_setpoint'],
        convertSet: async (entity, key, value, meta) => {
            const temp = Math.round(value*10);
            await tuya.sendDataPointValue(entity, tuya.dataPoints.moesHeatingSetpoint, temp);
        },
};
const definition = {
    fingerprint: [
        {
            modelID: 'TS0601',
            manufacturerName: '_TZE200_5toc8efa',
        },
    ],
    model: 'BHT-002-GCLZB',
    vendor: 'Moes',
    description: 'Moes BHT series Thermostat',
    fromZigbee: [moes_thermostat],
    toZigbee: [tz.moes_thermostat_child_lock, tz.moes_thermostat_mode,
            tz.moes_thermostat_standby, tz.moes_thermostat_sensor, tz.moes_thermostat_calibration,
            tz.moes_thermostat_deadzone_temperature, tz.moes_thermostat_max_temperature_limit, tz.moes_thermostat_min_temperature_limit,
            tz.moes_thermostat_program_schedule, moes_thermostat_current_heating_setpoint],
    onEvent: tuya.onEventSetLocalTime,
    configure: tuya.configureMagicPacket,
    exposes: [e.child_lock(), e.deadzone_temperature(), e.max_temperature_limit(), e.min_temperature_limit(),
            exposes.climate().withSetpoint('current_heating_setpoint', 5, 35, 1, ea.STATE_SET)
                .withLocalTemperature(ea.STATE).withLocalTemperatureCalibration(-30, 30, 1, ea.STATE_SET)
                .withSystemMode(['off', 'heat'], ea.STATE_SET).withRunningState(['idle', 'heat', 'cool'], ea.STATE)
                .withPreset(['hold', 'program']),
            e.temperature_sensor_select(['IN', 'AL', 'OU']),
            exposes.composite('program', 'program').withDescription('Time of day and setpoint to use when in program mode')
                .withFeature(exposesLocal.hour('weekdays_p1_hour'))
                .withFeature(exposesLocal.minute('weekdays_p1_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p1_temperature'))
                .withFeature(exposesLocal.hour('weekdays_p2_hour'))
                .withFeature(exposesLocal.minute('weekdays_p2_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p2_temperature'))
                .withFeature(exposesLocal.hour('weekdays_p3_hour'))
                .withFeature(exposesLocal.minute('weekdays_p3_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p3_temperature'))
                .withFeature(exposesLocal.hour('weekdays_p4_hour'))
                .withFeature(exposesLocal.minute('weekdays_p4_minute'))
                .withFeature(exposesLocal.program_temperature('weekdays_p4_temperature'))
                .withFeature(exposesLocal.hour('saturday_p1_hour'))
                .withFeature(exposesLocal.minute('saturday_p1_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p1_temperature'))
                .withFeature(exposesLocal.hour('saturday_p2_hour'))
                .withFeature(exposesLocal.minute('saturday_p2_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p2_temperature'))
                .withFeature(exposesLocal.hour('saturday_p3_hour'))
                .withFeature(exposesLocal.minute('saturday_p3_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p3_temperature'))
                .withFeature(exposesLocal.hour('saturday_p4_hour'))
                .withFeature(exposesLocal.minute('saturday_p4_minute'))
                .withFeature(exposesLocal.program_temperature('saturday_p4_temperature'))
                .withFeature(exposesLocal.hour('sunday_p1_hour'))
                .withFeature(exposesLocal.minute('sunday_p1_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p1_temperature'))
                .withFeature(exposesLocal.hour('sunday_p2_hour'))
                .withFeature(exposesLocal.minute('sunday_p2_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p2_temperature'))
                .withFeature(exposesLocal.hour('sunday_p3_hour'))
                .withFeature(exposesLocal.minute('sunday_p3_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p3_temperature'))
                .withFeature(exposesLocal.hour('sunday_p4_hour'))
                .withFeature(exposesLocal.minute('sunday_p4_minute'))
                .withFeature(exposesLocal.program_temperature('sunday_p4_temperature')),
        ],
    meta: {
        tuyaDatapoints: [
            [101, 'schedule_monday', tuya.valueConverter.thermostatScheduleDayMultiDP],
            [102, 'schedule_tuesday', tuya.valueConverter.thermostatScheduleDayMultiDP],
            [103, 'schedule_wednesday', tuya.valueConverter.thermostatScheduleDayMultiDP],
            [104, 'schedule_thursday', tuya.valueConverter.thermostatScheduleDayMultiDP],
            [105, 'schedule_friday', tuya.valueConverter.thermostatScheduleDayMultiDP],
            [106, 'schedule_saturday', tuya.valueConverter.thermostatScheduleDayMultiDP],
            [107, 'schedule_sunday', tuya.valueConverter.thermostatScheduleDayMultiDP],
        ],
    },
};
module.exports = definition;

@VoltickVL
Copy link
Author

Единственное мне не удалось решить проблему с ошибкой Datapoints, но и с ней всё работает как нужно. Если кто разберется дайте знать!

===
The only thing I could not solve the problem with the Datapoints error, but everything works as it should. If anyone understands, let me know!

Warning 2023-01-09 21:31:11 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:31:50 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:31:53 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:32:11 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:32:46 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:32:49 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:33:17 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,24]}}
Warning 2023-01-09 21:34:18 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,19]}}
Warning 2023-01-10 00:04:21 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,4]}}
Warning 2023-01-10 00:05:21 zigbee-herdsman-converters:Moes BHT-002: Unrecognized DP #102 with data {"dp":102,"datatype":2,"data":{"type":"Buffer","data":[0,0,1,9]}}

@VladimirTuzovGitHub
Copy link

Приветствую! Я немного внес изменения в Ваш конвертор, поправил остальные данные на основе Вашего шаблона которые тоже выводились в десятых, это: deadzone_temperature, max_temperature_limit, min_temperature_limit. Но как выяснилось есть проблема с deadzone_temperature она не передается с устройства а просто дублирует min_temperature_limit, видимо конвертор не верно читает datapoints и видимо ошибка Unrecognized DP #102 with data и есть datapoints 102 который относится к deadzone_temperature и его нужно определить в конверторе.
Bseed_zigbee_ thermostat.txt

@VoltickVL
Copy link
Author

VoltickVL commented Jan 20, 2023

Приветствую! Я немного внес изменения в Ваш конвертор, поправил остальные данные на основе Вашего шаблона которые тоже выводились в десятых, это: deadzone_temperature, max_temperature_limit, min_temperature_limit. Но как выяснилось есть проблема с deadzone_temperature она не передается с устройства а просто дублирует min_temperature_limit, видимо конвертор не верно читает datapoints и видимо ошибка Unrecognized DP #102 with data и есть datapoints 102 который относится к deadzone_temperature и его нужно определить в конверторе. Bseed_zigbee_ thermostat.txt

Приветствую! Осталось ещё не много я думаю, мы на верном пути. Взял ваш код, даже картинка Bseed, а не Moes. Отлично !Спасибо !

@VoltickVL
Copy link
Author

Приветствую! Я немного внес изменения в Ваш конвертор, поправил остальные данные на основе Вашего шаблона которые тоже выводились в десятых, это: deadzone_temperature, max_temperature_limit, min_temperature_limit. Но как выяснилось есть проблема с deadzone_temperature она не передается с устройства а просто дублирует min_temperature_limit, видимо конвертор не верно читает datapoints и видимо ошибка Unrecognized DP #102 with data и есть datapoints 102 который относится к deadzone_temperature и его нужно определить в конверторе. Bseed_zigbee_ thermostat.txt

Удалось победить ошибку 102?

@elemarek
Copy link

Does this thermostat suffer from the same defect as Moes brand thermostats such as congestion with an enormous number of packets?

@github-actions
Copy link
Contributor

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

@github-actions github-actions bot added the stale Stale issues label Mar 24, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Apr 1, 2023
@kamilnuriev
Copy link

kamilnuriev commented Jun 3, 2023

in 1.31.0 "local_temperature" and "max_temperature" are 10 times higher, please fix

{
    "child_lock": "UNLOCK",
    "current_heating_setpoint": 18,
    "deadzone_temperature": 5,
    "heat": "OFF",
    "linkquality": 120,
    "local_temperature": 285,
    "local_temperature_calibration": 0,
    "max_temperature": 350,
    "max_temperature_limit": 35,
    "min_temperature_limit": 5,
    "preset": "hold",
    "preset_mode": "hold",
    "program": {
        "saturday_p1_hour": 200,
        "saturday_p1_minute": 17,
        "saturday_p1_temperature": 15,
        "saturday_p2_hour": 0,
        "saturday_p2_minute": 200,
        "saturday_p2_temperature": null,
        "saturday_p3_temperature": null,
        "saturday_p4_temperature": null,
        "sunday_p1_temperature": null,
        "sunday_p2_temperature": null,
        "sunday_p3_temperature": null,
        "sunday_p4_temperature": null,
        "weekdays_p1_hour": 7,
        "weekdays_p1_minute": 6,
        "weekdays_p1_temperature": 0,
        "weekdays_p2_hour": 0,
        "weekdays_p2_minute": 200,
        "weekdays_p2_temperature": 5.5,
        "weekdays_p3_hour": 30,
        "weekdays_p3_minute": 0,
        "weekdays_p3_temperature": 100,
        "weekdays_p4_hour": 13,
        "weekdays_p4_minute": 30,
        "weekdays_p4_temperature": 0
    },
    "running_state": "idle",
    "sensor": "OU",
    "system_mode": "off"
}

@VoltickVL
Copy link
Author

in 1.31.0 "local_temperature" and "max_temperature" are 10 times higher, please fix

Same problem... I create new issue #18791

@VoltickVL
Copy link
Author

Plz tell me, who fix this problem(

@VoltickVL
Copy link
Author

Приветствую! Я немного внес изменения в Ваш конвертор, поправил остальные данные на основе Вашего шаблона которые тоже выводились в десятых, это: deadzone_temperature, max_temperature_limit, min_temperature_limit. Но как выяснилось есть проблема с deadzone_temperature она не передается с устройства а просто дублирует min_temperature_limit, видимо конвертор не верно читает datapoints и видимо ошибка Unrecognized DP #102 with data и есть datapoints 102 который относится к deadzone_temperature и его нужно определить в конверторе. Bseed_zigbee_ thermostat.txt

Подскажите у вас получилось решить проблему? Внешний конвертер не работает( Последний апдейт z2m не помог

@0anton
Copy link

0anton commented Oct 26, 2023

Does this thermostat suffer from the same defect as Moes brand thermostats such as congestion with an enormous number of packets?

Yes, it does.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new device support New device support request stale Stale issues
Projects
None yet
Development

No branches or pull requests

5 participants