NEWS
(GELÖST) zigbee-herdsmann-converters / wie manuell updaten?
-
@diamand2k22 sagte in (GELÖST) zigbee-herdsmann-converters / wie manuell updaten?:
hab das mal reinkopiert
Was wo reinkopiert?
-
@david-jung said in Hama Smartes Heizkörper-Thermostat:
@david-jung
so, ich habe folgendes gemacht:die Datei: /opt/iobroker/node_modules/zigbee-herdsman-converters/devices/saswell.js
etwas erweitert, jetzt kann ich die Ist-Temperatur ablesen, so wie die Soll-Temperatur setzen/lesen.
Den Modus (heizen/auto/aus) lesen, setzen.
Ventil Status ablesen.
Und Offset für Temperatur setzen/lesen./opt/iobroker/node_modules/zigbee-herdsman-converters/devices/saswell.js
const exposes = require('../lib/exposes'); const fz = {...require('../converters/fromZigbee'), legacy: require('../lib/legacy').fromZigbee}; const tz = require('../converters/toZigbee'); const tuya = require('../lib/tuya'); const reporting = require('../lib/reporting'); const e = exposes.presets; const ea = exposes.access; module.exports = [ { fingerprint: [{modelID: 'GbxAXL2\u0000', manufacturerName: '_TYST11_KGbxAXL2'}, {modelID: 'uhszj9s\u0000', manufacturerName: '_TYST11_zuhszj9s'}, {modelID: '88teujp\u0000', manufacturerName: '_TYST11_c88teujp'}, {modelID: 'w7cahqs\u0000', manufacturerName: '_TYST11_yw7cahqs'}, {modelID: 'w7cahqs', manufacturerName: '_TYST11_yw7cahqs'}, {modelID: 'TS0601', manufacturerName: '_TZE200_c88teujp'}, {modelID: 'TS0601', manufacturerName: '_TZE200_yw7cahqs'}, {modelID: 'TS0601', manufacturerName: '_TZE200_azqp6ssj'}, {modelID: 'TS0601', manufacturerName: '_TZE200_bvu2wnxz'}, {modelID: 'TS0601', manufacturerName: '_TZE200_zuhszj9s'}, {modelID: 'TS0601', manufacturerName: '_TZE200_9gvruqf5'}, {modelID: 'TS0601', manufacturerName: '_TZE200_zr9c0day'}, ], model: 'SEA801-Zigbee/SEA802-Zigbee', vendor: 'Saswell', description: 'Thermostatic radiator valve', whiteLabel: [{vendor: 'HiHome', model: 'WZB-TRVL'}, {vendor: 'Hama', model: '00176592'}, {vendor: 'RTX', model: 'ZB-RT1'}], fromZigbee: [fz.saswell_thermostat, fz.ignore_tuya_set_time, fz.ignore_basic_report, fz.legacy.tuya_thermostat_weekly_schedule], toZigbee: [tz.saswell_thermostat_current_heating_setpoint, tz.saswell_thermostat_mode, tz.saswell_thermostat_away, tz.saswell_thermostat_child_lock, tz.saswell_thermostat_window_detection, tz.saswell_thermostat_frost_detection, tz.saswell_thermostat_calibration, tz.saswell_thermostat_anti_scaling, tz.tuya_thermostat_weekly_schedule], onEvent: tuya.onEventSetTime, meta: { thermostat: { weeklyScheduleMaxTransitions: 4, weeklyScheduleSupportedModes: [1], // bits: 0-heat present, 1-cool present (dec: 1-heat,2-cool,3-heat+cool) weeklyScheduleConversion: 'saswell', }, }, configure: async (device, coordinatorEndpoint, logger) => { const endpoint = device.getEndpoint(1); await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic']); }, exposes: [e.battery_low(), e.window_detection(), e.child_lock(), exposes.binary('heating', ea.STATE, 'ON', 'OFF').withDescription('Device valve is open or closed (heating or not)'), exposes.climate() .withSetpoint('current_heating_setpoint', 5, 30, 0.5, ea.STATE_SET).withLocalTemperature(ea.STATE) .withSystemMode(['off', 'heat', 'auto'], ea.STATE_SET) // Range is -6 - 6 and step 1: https://github.com/Koenkk/zigbee2mqtt/issues/11777 .withLocalTemperatureCalibration(-6, 6, 1, ea.STATE_SET) .withAwayMode()], }, { /*added by djung 10.11.2022*/ fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_h4cgnbzg'}], model: 'HZ', vendor: 'HAMA', description: 'Thermostatic radiator valve', whiteLabel: [{vendor: 'Hama', model: 'XXXxxxXXX'},], fromZigbee: [fz.saswell_thermostat], toZigbee: [tz.saswell_thermostat_current_heating_setpoint, tz.saswell_thermostat_mode, tz.saswell_thermostat_calibration], onEvent: tuya.onEventSetTime, configure: async (device, coordinatorEndpoint, logger) => { const endpoint = device.getEndpoint(1); await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic']); }, exposes: [ e.battery_low(), /*e.switch(),*/ /*e.lock(),*/ exposes.binary('heating', ea.STATE, 'ON', 'OFF').withDescription('Device valve is open or closed (heating or not)'), exposes.climate() .withSetpoint('current_heating_setpoint', 5, 30, 0.5, ea.STATE_SET).withLocalTemperature(ea.STATE) .withSystemMode(['off', 'heat', 'auto'], ea.STATE_SET) // Range is -6 - 6 and step 1: https://github.com/Koenkk/zigbee2mqtt/issues/11777 .withLocalTemperatureCalibration(-6, 6, 1, ea.STATE_SET) ], }, ];
soll man das irgendwo auf github oder so noch posten? Wenn ja, bitte zeigen wo
Grüße.
David. -
Alles? Das war nur als Denkansatz für dich gedacht.
Ich hätte da erstmal nur die Manufacturer-ID hinzugefügt. Sind ja schon ein paar Varianten von dem Thermostat mit der Modellbezeichnung TS0601 vorhanden. -
hab die manufactor id eingefügt, jetzt erkennt er das thermostat, liefert aber keine werte!
2022-11-15 21:35:02.182 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #2 with data {"dp":2,"datatype":4,"data":{"type":"Buffer","data":[2]}} 2022-11-15 21:35:02.434 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #4 with data {"dp":4,"datatype":2,"data":{"type":"Buffer","data":[0,0,0,50]}} 2022-11-15 21:35:02.551 - info: dwd.0 (92835) starting. Version 2.8.3 in /opt/iobroker/node_modules/iobroker.dwd, node: v16.18.1, js-controller: 4.0.23 2022-11-15 21:35:02.555 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #5 with data {"dp":5,"datatype":2,"data":{"type":"Buffer","data":[0,0,0,200]}} 2022-11-15 21:35:02.704 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #7 with data {"dp":7,"datatype":1,"data":{"type":"Buffer","data":[0]}} 2022-11-15 21:35:02.789 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #28 with data {"dp":28,"datatype":0,"data":{"type":"Buffer","data":[1,6,0,0,120,8,0,0,160,18,0,0,220,20,0,0,200]}} 2022-11-15 21:35:02.906 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #29 with data {"dp":29,"datatype":0,"data":{"type":"Buffer","data":[2,6,0,0,120,8,0,0,160,18,0,0,220,20,0,0,200]}} 2022-11-15 21:35:03.032 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #30 with data {"dp":30,"datatype":0,"data":{"type":"Buffer","data":[3,6,0,0,120,8,0,0,160,18,0,0,220,20,0,0,200]}} 2022-11-15 21:35:03.144 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #31 with data {"dp":31,"datatype":0,"data":{"type":"Buffer","data":[4,6,0,0,120,8,0,0,160,18,0,0,220,20,0,0,200]}} 2022-11-15 21:35:03.264 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #32 with data {"dp":32,"datatype":0,"data":{"type":"Buffer","data":[5,6,0,0,120,8,0,0,160,18,0,0,220,20,0,0,200]}} 2022-11-15 21:35:03.380 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #33 with data {"dp":33,"datatype":0,"data":{"type":"Buffer","data":[6,6,0,0,120,8,0,0,160,18,0,0,220,20,0,0,200]}} 2022-11-15 21:35:03.502 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #34 with data {"dp":34,"datatype":0,"data":{"type":"Buffer","data":[7,6,0,0,120,8,0,0,160,18,0,0,220,20,0,0,200]}} 2022-11-15 21:35:03.615 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #35 with data {"dp":35,"datatype":5,"data":{"type":"Buffer","data":[0]}} 2022-11-15 21:35:03.731 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #36 with data {"dp":36,"datatype":1,"data":{"type":"Buffer","data":[0]}} 2022-11-15 21:35:03.848 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #39 with data {"dp":39,"datatype":1,"data":{"type":"Buffer","data":[0]}} 2022-11-15 21:35:03.968 - warn: zigbee.0 (92569) zigbee-herdsman-converters:SaswellThermostat: Unrecognized DP #47 with data {"dp":47,"datatype":2,"data":{"type":"Buffer","data":[0,0,0,0]}}
-
Ich kann dir da nicht weiterhelfen.
Vielleicht weiß @david-jung ja noch was dazu. -
kann es sein, dass mit den Rechten was nicht stimmt?`
$ iobroker url ioBroker/ioBroker.zigbee --host pi4b --debug install ioBroker/ioBroker.zigbee NPM version: 8.19.2 Installing ioBroker/ioBroker.zigbee... (System call) npm WARN cleanup Failed to remove some directories [npm WARN cleanup [ npm WARN cleanup '/opt/iobroker/node_modules/.zigbee-herdsman-converters-DzgWyYTV',npm WARN cleanup [Error: EACCES: permission denied, scandir '/opt/iobroker/node_modules/.zigbee-herdsman-converters-DzgWyYTV/devices'] {npm WARN cleanup errno: -13,npm WARN cleanup code: 'EACCES',npm WARN cleanup syscall: 'scandir',npm WARN cleanup path: '/opt/iobroker/node_modules/.zigbee-herdsman-converters-DzgWyYTV/devices'npm WARN cleanup }npm WARN cleanup ]npm WARN cleanup
-
@diamand2k22 sagte in (GELÖST) zigbee-herdsmann-converters / wie manuell updaten?:
dass mit den Rechten was nicht stimmt?`
iob stop iob fix iob start
-
-
@diamand2k22 sagte in (GELÖST) zigbee-herdsmann-converters / wie manuell updaten?:
Hab's dann doch selber hinbekommen!
Und des Rätsels Lösung war ?
Vll hilft das auch anderen Mitlesenden ! -
-
Dann hast du da mal mit falschen Rechten hantiert.
root login? -
kann sein Thomas, hab ich aber wieder hingebogen bekommen.
@Asgothian
hab mir jetzt ne eigene ketotek.js für mein Heizkörperthermostat gebastelt.
Jetzt funktioniert es wunderbar und ich hab keine Unrecognized DP's mehr und kann es steuern und empfange Temperaturen.
Was mich nur interessieren würde, wie bekomme ich da ein vernünftiges Bild rein?
Kannst du das Thermostat aufnehmen?Gruß
-
@thomas-braun könntest du deinen externen Konverter zur Verfügung stellen? Sitze schon seit Tagen und komme nicht weiter.
-
Meinen was? Wüsste nicht das ich sowas im Einsatz hätte.
-
@thomas-braun sorry, die Frage sollte eigentlich an @Diamand2k22 gehen habe mich verklickt^^
-
Hast du auch so ein ketotek Teil von Amaz**?
-
@diamand2k22 said in (GELÖST) zigbee-herdsmann-converters / wie manuell updaten?:
Hast du auch so ein ketotek Teil von Amaz**?
nein, aber Avatto ME167 das wird auch unter _TZE200_bvu2wnxz geführt.
-
06b9e9de-716c-4a03-95a1-94f34a45ccf6-avatto_me167.js
Hab's angepasst für dein ME167 Thermostat.
Probiers mal aus.Du weißt ja wo die Datei hin muss oder?
-
@diamand2k22 Danke aber leider bekomme ich Fehler ausgeworfen und der Adapter startet nicht mehr. Naja ich packe den Pfad unter Einstellungen der jeweiligen Zigbee Instanz und die Datei in "/opt/iobroker/iobroker-data/zigbee_2"?!
anbei das protokoll
2022-11-22 07:57:47.563 - error: zigbee.2 (22077) Exception-Code: MODULE_NOT_FOUND: Cannot find module '../lib/exposes' Require stack: - /opt/iobroker/node_modules/iobroker.zigbee/main.js 2022-11-22 07:57:47.641 - info: zigbee.2 (22077) cleaned everything up... 2022-11-22 07:57:47.645 - info: zigbee.2 (22077) terminating 2022-11-22 07:57:47.648 - warn: zigbee.2 (22077) Terminated (UNCAUGHT_EXCEPTION): Without reason 2022-11-22 07:57:48.285 - error: host.SmartHome Caught by controller[0]: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason: 2022-11-22 07:57:48.286 - error: host.SmartHome Caught by controller[1]: node:internal/modules/cjs/loader:936 2022-11-22 07:57:48.287 - error: host.SmartHome Caught by controller[1]: throw err; 2022-11-22 07:57:48.287 - error: host.SmartHome Caught by controller[1]: ^ 2022-11-22 07:57:48.287 - error: host.SmartHome Caught by controller[1]: Error: Cannot find module '../lib/exposes' 2022-11-22 07:57:48.288 - error: host.SmartHome Caught by controller[1]: Require stack: 2022-11-22 07:57:48.288 - error: host.SmartHome Caught by controller[1]: - /opt/iobroker/node_modules/iobroker.zigbee/main.js 2022-11-22 07:57:48.289 - error: host.SmartHome Caught by controller[1]: at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15) 2022-11-22 07:57:48.289 - error: host.SmartHome Caught by controller[1]: at Function.Module._load (node:internal/modules/cjs/loader:778:27) 2022-11-22 07:57:48.289 - error: host.SmartHome Caught by controller[1]: at Module.require (node:internal/modules/cjs/loader:1005:19) 2022-11-22 07:57:48.290 - error: host.SmartHome Caught by controller[1]: at require (node:internal/modules/cjs/helpers:102:18) 2022-11-22 07:57:48.290 - error: host.SmartHome Caught by controller[1]: at evalmachine.:1:17 2022-11-22 07:57:48.290 - error: host.SmartHome Caught by controller[1]: at Script.runInContext (node:vm:139:12) 2022-11-22 07:57:48.291 - error: host.SmartHome Caught by controller[1]: at Script.runInNewContext (node:vm:144:17) 2022-11-22 07:57:48.291 - error: host.SmartHome Caught by controller[1]: at Object.runInNewContext (node:vm:298:38) 2022-11-22 07:57:48.291 - error: host.SmartHome Caught by controller[1]: at Zigbee.getExternalDefinition (/opt/iobroker/node_modules/iobroker.zigbee/main.js:222:16) 2022-11-22 07:57:48.292 - error: host.SmartHome Caught by controller[1]: at getExternalDefinition.next () 2022-11-22 07:57:48.292 - error: host.SmartHome instance system.adapter.zigbee.2 terminated with code 6 (UNCAUGHT_EXCEPTION)
-
kopiere das file nach
/opt/iobroker/node_modules/zigbee-herdsman-converters/devices/
und mach den Eintrag bei externe Adapter raus.
Dann Zigbee Adapter neu starten.