Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

ok67

Medlemmer
  • Innlegg

    19
  • Ble med

  • Besøkte siden sist

Hjemmeautomasjon

  • System
    Home Assistant

ok67 sine prestasjoner

Lysmester

Lysmester (5/16)

  • En måned senere
  • Dedikert Sjeldent
  • Uke én ferdig
  • Samarbeidspartner
  • Reagerer godt

Nylige merker

1

Nettsamfunnsomdømme

  1. Då er det truleg berre nyvarianten som har termostatmodus. For dei som har nyvariante så er det i alle fall håp, eg har fått ihop ein kode som ser ut for å fungere for den i termostatmodus med Z2M. Eg har aldri programmert i javascript før så det var ikkje heilt rett fram, og dokumentasjonen på Z2M er vel heller ikkje av det enkle slaget... Eg har lagt koden ut på forumet til Z2M i håp om at nokon kan gi nokre tips på ein enklare måte å gjere det på, då eg har reprodusert mykje av termostatkoden i systemet for å få den til å snakke med endpoint 2 og ikkje endpoint 1 som ser ut for å vere standard. Eg ser for meg at det bør vere ein måte å fortelje systemet at det aktuelle klusteret ligg på endpoint 2 og ikkje 1 utan å hardkode alle rutinane til endpoint 2...
  2. Da har du kanskje ikkje alle desse clustera heller då?
  3. @slippern Etter rmykje prøving og feiling er eg komme eit museskritt vidare og får til å slå av og på thermostatmodus via Z2M, med denne definisjonen, men hanger for øyeblikket på å få til termostatdelen. Den har eit termostatkluster, men det ligg på endpoint 2 og ikkje 1. Du kan prøve koden nedanfor og tilpasse den til varianten uten -N og sjå om du får slått på thermostatmodus, då vil den lyse grønn når den er i termostatmodus og temperaturen er under setpunktet. 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 DataType = { uint16: 0x21, enum8: 0x30, } const manufacturerOptions = { namron : {manufacturerCode: 0x1224} }; const op_modeValues = ['onnoff', 'HVAC']; const tz_opmodeCfg = { key : ['OperationMode'], convertSet: async (entity, key, value, meta) => { const numOpMode = Number(value=='HVAC'); const payload = {0x1000: {value: numOpMode, type: DataType.enum8}}; await entity.write('genBasic', payload, manufacturerOptions.namron); return {readAfterWriteTime: 250, state: {OperationMode: value}}; }, convertGet: async (entity, key, meta) => { await entity.read('genBasic', 0x1000, manufacturerOptions.namron); } } const fz_opmodeCfg = { cluster: 'genBasic', type: ['attributeReport', 'readResponse'], convert: (model, msg, publish, options, meta) => { const result = {}; const data = msg.data; if (data.hasOwnProperty(0x1000)) { result['OperationMode'] = op_modeValues[msg.data['0x1000']]; } return result; }, } const definition = { zigbeeModel: ['4512749-N'], model: '4512749-N', vendor: 'Namron', description: 'Thermostatplugg-test', fromZigbee: [fz.metering, fz.electrical_measurement, fz.on_off, fz.temperature, fz_opmodeCfg], toZigbee: [tz.on_off, tz.power_on_behavior, tz_opmodeCfg], exposes: [ e.temperature(), e.power(), e.current(), e.voltage(), e.switch(), e.power_on_behavior(), e.enum('OperationMode', ea.SET, op_modeValues).withDescription('Set operation mode as ON/OFF or as Thermostate'), ], configure: async (device, coordinatorEndpoint, logger) => { const endpoint = device.getEndpoint(1); await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic', 'genOnOff', 'haElectricalMeasurement', 'msTemperatureMeasurement']); await endpoint.read('haElectricalMeasurement', ['acVoltageMultiplier', 'acVoltageDivisor']); await endpoint.read('haElectricalMeasurement', ['acPowerMultiplier', 'acPowerDivisor']); await endpoint.read('haElectricalMeasurement', ['acCurrentMultiplier', 'acCurrentDivisor']); await reporting.onOff(endpoint); await reporting.temperature(endpoint, {min: 10, change: 10}); await reporting.rmsVoltage(endpoint, {min: 10, change: 20}); // Voltage - Min change of 2v await reporting.rmsCurrent(endpoint, {min: 10, change: 10}); // A - z2m displays only the first decimals, so change of 10 await reporting.activePower(endpoint, {min: 10, change: 1}); // W - Min change of 0,1W }, }; module.exports = definition;
  4. @slippern Eg har prøvd å lage mi eiga configureringsfil og linke til den frå configuration.yaml i zigbee2mqtt directoryet, men external_converters: opsjonen blir automatisk fjerna av systemet kvar gang eg legg til eller fjernar ein dings frå zigbee nettet. Eg har ein viss idee om noko eg kan prøve for å få pluggen opp gå som termostat, men så lenge eg ikkje får systemet til å inkludere konfigurasjonsfila så blir det litt vanskeleg. Eg har stilt spørsmålet på forumet til Z2M, så får vi sjå om det kjem nokon respons. Virkar for å vere ein bug, eller så er det eg som gjer noko fundamentalt gale. - Men no har vi kanskje bevega oss langt utanfor temaet for denne tråden...
  5. Eg har ingen Z-wave dingsar, så eg veit ikkje. For zigbeevarianten av pluggen har eg funne ut korleis eg gjer det med ZHA Toolkit, men slit med å få det til med zigbe2MQTT...
  6. Ser ut for at det står noko om det under Device Operating Mode
  7. @slippern Eg har lasta ned kildekoden til både zigbee2mqtt og herdsmanconverterane og finn ikkje igjen lista som ligg under attributtar i klartekst, så eg lurer på om den kanskje blir satt opp som eit resultat av egenskapar som systemet finn under intervjuet ved tilkopling? Men no er ikkje hverken javascript eller Python noko som eg har noko er faring med, og det er år og dag sidan eg dreiv med litt hobbyprogrammering i C++, så eg er nok litt rusten i å finne ut av korleis ting heng saman her.
  8. Har ikkje satt 0x1000 attributten på denne pluggen, då eg ikkje får det til med Z2M. På dei pluggane eg har på hytta har eg satt attributten då eg brukar ZHA og ZHA Toolkit på den installasjonen.
  9. Samme feilmelding som før, error 2023-10-16 20:48:57Publish 'set' 'command' to 'NamronPlugg' failed: 'Error: Cluster 'genBasic' has no command '4096'' Slik eg tolkar det så er det nederste delen av dev consolen for å sende kommandoar, medan den øverste delen er for å lese/skrive attributtar. Problemet med den øverste delen er at der kan du ikkje skrive inn verdiar som du sjølv vil, du må velge frå ein nedtreksmeny. Det er greit å vege endpoint 1, klynge (Cluster) genBasic, men egenskap for 0x1000 er truleg ikkje blant forhåndsvalga (eg har prøvd alle alternativa som er tilgjengeleg). Etter å ha valgt egenskap kan du så velge kva verdi du vil skrive til den egenskapen. (Går ut frå at egenskap heiter attribut om du har engelsk språksetting, som eg vel eigentleg burde ha valgt då det gjer det enklare å søke opp lure ting på nettet).
  10. Zigbee-varianten av denne krever at du set ein produsentspesifik proprietær atributt for å få den til å fungere som termostat. Ut av boksen så fungerer den som ein rein av og på plugg. Kanskje det er slik for z-wave-pluggen også? Den infoen stod godt gjemt i dokumentasjonen som fulgte med i eska.
  11. Logfil, klippa og limt frå nettlesarvinduet, den blir kanskje lagra av HA ein eller annan stad også? La til ei fil med all info også, i tilfelle den skulle fortelje noko meir Namron_plugg_log.txt Namron_plugg_log_all_info.txt
  12. På hytta brukar eg framleis ZHA, og der kjem den opp slik i Home Assistant. Den fungerer då som termostat etter at den magiske 0x1000 attributten er satt til 1 med ZHA Toolkit. Før attributten er satt har ikkje justering av termostaten nokon innverknad på pluggen.
  13. Kva for log du treng og korleis eg skal få den fram etc trur eg du må forklara nærmare, gjerne med teskei.
  14. Scan-kommandoen som eg tidlegare gjorde med ZHA-tools gav følgende tilbakemelding 4512749-N_NAMRON-AS_0100000077_01_scan_results.txt
  15. Her er side 1 og 2 av manualen som følgde med Og side 3
×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.