Gå til innhold
  • Bli medlem
lasseruud

Xiaomi i Roborock (Windows)

Anbefalte innlegg

Først... All ære til @ZoRaC for denne! 

 

Jeg kjører Homeseer på Windows 10, så målet mitt var å kunne ordne alt derfra så jeg ikke var avhengig av en annen maskin.

 

1: Token

Spoiler

Siden vi ikke har noe Android i huset, var dette den greieste måten å få tak i token på:

 

Installerte Android-emu for Windows:

www.bluestacks.com

 

- Installerte versjon 5.4.49 av Mi Home:

https://www.apkmirror.com/apk/xiaomi-inc/mihome/mihome-5-4-49-release/

 

- Starte Mi Home og logge på. Jeg ser at flere skriver at de måtte kjøre en runde støvsuging, men det trengte ikke jeg.

 

- Token ligger i klartekst i .log-fila i SmartHome\logs\plug_DeviceManager-mappa:

* Start Media Manager i Blue Stacks

* Explore

* SmartHome

* logs

* plug_DeviceManager

* Åpne log-fila i f.eks. Chrome

* Se etter "token":"123123123132123123123132132123123"

 

 

2: python

Last ned fra https://www.python.org/downloads/windows/ og installer. Husk å få med at python skal legges i path i første steg av installasjonen. Denne står ikke på som default.

 

3: mosquitto

Last ned fra https://mosquitto.org/download/ og installer. Her mener jeg det var en rett fram installasjon.

 

4: Vistual C++ Build Tools
Last ned fra https://go.microsoft.com/fwlink/?LinkId=691126 og installer. Denne krevde reboot hos meg.

 

5: python-miio

Installer python-miio. Det gjør du i command prompt (DOS! 😉) med kommandoen:

pip install python-miio
Jeg husker ikke om jeg måtte kjøre command prompt i admin-modus.

 

Da skal alt av verktøy være på plass. 

 

6: Sjekke kommunikasjon mot støvsuger

Spoiler

Sjekk at alt fungerer ved å kjøre en discover. Av ukjente grunner, fungerte ikke "mirobo discover" hos meg, så jeg måtte kjøre:

mirobo discover --handshake 1

 

Hvis du får opp IP-adressen til støvsugeren, skal alt være klart.

 

Prøv også:

mirobo --ip x.x.x.x --token 123123132321321321321321321321213 status

 

Da skal du få info om støvsugeren.

 

7: Installere mcsMQTT i Homeseer

Denne trenger ikke mer info. Den ligger under "Lighting & Primary Technology". Installer plugin og start den.

 

8: Få ut data fra Roborock til fil

Spoiler

Som nevnt i denne tråden, sleit jeg med quotes i cmd. Har derfor tatt en workaround og skrevet resultatet til fil før jeg sender med mosquitto.

Det er helt sikker mulighet til å få til dette i en kommando, men det har jeg ikke tatt meg tid til å finne ut.

 

Denne kommandoen genererer json-data om støvsugeren som den skriver til status.txt:

"c:\program files\python38\scripts\miiocli" -o json vacuum --ip x.x.x.x --token 123123132321321321321321321321213 status > "c:\program files (x86)\homeseer hs3\data\vacuum\status.txt"

 

Sjekk at mappene er riktig hos deg! Hos meg var dette riktig. På en annen maskin jeg har, ligger miiocli i c:\users\username\AppData\Local\Programs\Python\Python38-32\Scripts.

Jeg har valgt å legge txt-filene som dataene skrives til i Homeseer-mappa for enkelhetsskyld.

 

9: Få data fra fil til Homeseer med MQTT

Spoiler

Det neste blir å bruke mosquitto.

 

Denne kommandoen sender innholder i status.txt via MQTT:

"c:\program files\mosquitto\mosquitto_pub" -h localhost -t vacuum/status -f "c:\program files (x86)\homeseer hs3\data\vacuum\status.txt"

 

Husk å sjekke mappenavn her også!

 

Gå inn i Plug-ins - mcsMQTT - MQTT Setup.

 

I bunnen her bør det ha dukket opp en del linjer:

guide01.thumb.PNG.f35ee86d404ae0274a76619722c7a482.PNG

(Her har jeg flere verdier enn du vil få ved kun å kjøre 'status'. Jeg har i tillegg kjørt 'consumable_status' og 'carpet_mode'. Kanskje enda flere under testing... I .bat-fila i punkt 11 ligger imidlertid både status, consumable_status og carpet_mode inne.)

 

Merk av under "a" for de du vil ha som egne devicer i Homeseer. Det er ikke nødvendigvis de samme som jeg har valgt:

 

guide02.thumb.PNG.f19f2c683b01bc20149c7fa80ffda0b9.PNG

(her har jeg døpt dem om og laget egne status tekster)

 

 

10: Kontrollere Roborock fra Homeseer

Spoiler

Kommandoen for å kontrollere støvsugeren er ganske grei:

mirobo --ip x.x.x.x --token 123123231321321321321321321213321 start/stop/home osv...

 

Jeg har laget ei .bat-fil som ser slik ut:


@echo off
"C:\Program Files\Python38\Scripts\mirobo.exe" --ip x.x.x.x --token 123123123132132132132132132132 %1

Denne starter jeg med eventer hvor jeg bare endrer parameter:

guide03.thumb.PNG.91b6b6246d7b97badf0ec59a9f9aeb14.PNG

guide04.thumb.PNG.19bbdd123fa1963d5408398ffca17cc2.PNG

 

 

11: Automatisk oppdatere status på Roborock til Homeseer:

Spoiler

Jeg har jeg laget to eventer som kjører hhv. hvert 30. sekund eller 15. minutt avhengig av om støvsugeren går eller ikke:

guide05.thumb.PNG.d9a18f087ae78be26c0b69b5c7797046.PNG

 

Dette er ei .bat-fil som ser slik ut:


@echo off
echo Oppdaterer Roborockstatus...
"c:\program files\python38\scripts\miiocli" -o json vacuum --ip x.x.x.x --token 12312312313212313213213213213212 status > "c:\program files (x86)\homeseer hs3\data\vacuum\status.txt"
"c:\program files\python38\scripts\miiocli" -o json vacuum --ip x.x.x.x --token 12312312313212313213213213213212 consumable_status > "c:\program files (x86)\homeseer hs3\data\vacuum\status_consumable.txt"
"c:\program files\python38\scripts\miiocli" -o json vacuum --ip x.x.x.x --token 12312312313212313213213213213212 carpet_mode > "c:\program files (x86)\homeseer hs3\data\vacuum\status_carpet_mode.txt"
"c:\program files\mosquitto\mosquitto_pub" -h localhost -t vacuum/status -f "c:\program files (x86)\homeseer hs3\data\vacuum\status.txt"
"c:\program files\mosquitto\mosquitto_pub" -h localhost -t vacuum/status -f "c:\program files (x86)\homeseer hs3\data\vacuum\status_consumable.txt"
"c:\program files\mosquitto\mosquitto_pub" -h localhost -t vacuum/status -f "c:\program files (x86)\homeseer hs3\data\vacuum\status_carpet_mode.txt"

 

 

Jeg tror det var alt. Håper jeg ikke har glemt noe. Dukker det opp noe, skal jeg oppdatere posten. Igjen, all credit til @ZoRaC. Jeg hadde aldri tatt i MQTT før jeg så posten hans.

 

Det er helt sikker andre og bedre måter å få til dette på, men akkurat nå fungerer det hos meg, så da lar jeg det rulle og gå. :)  Det eneste jeg har lyst til å finne ut, er hvordan jeg kan starte zoned cleanup av f.eks. kjøkken, stue, osv. Utfordringen her er koordinater. Jeg har ikke funnet noen enkel måte å hente ut koordinater. FloleVac har jeg prøvd, men jeg får ikke opp kartet på noen av Android-emulatorene jeg har prøvd.

 

Disclaimer: Alt på eget ansvar, osv. Ta backup først!

Endret av lasseruud
  • Like 5
  • Thanks 2

Del dette innlegget


Lenke til innlegg
Del på andre sider

Hei @lasseruud

 

Da har jeg testet litt og kommer nesten  mål.

 

Punkt 2

Det kommer opp ett valg under installasjon av python om path skal legges til environmental ett eller annet. Dette kan være lurt å huke av for hvis punkt 5 skal fungere skikkelig.

 

Punkt 5

Kan være en ide å oppdatere guiden med at dette er command prompt (ja for dummies)

 

Punkt 6

Her hadde jeg litt trøbbel:mirobo discover --handshake 1
INFO:miio.device:Sending discovery to <broadcast> with timeout of 5s..
WARNING:miio.device:error while reading discover results: 'token'

 

Virket ikke, helt kjørte så  kommando:

mirobo discover
INFO:miio.discovery:Discovering devices with mDNS, press any key to quit...
WARNING:miio.discovery:Found unsupported device roborock-vacuum-s6_miio261333659._miio._udp.local. at 10.0.0.160, please report to developers

 

Feil mld er jeg usikker på, men får IP output.

Kommanoden under gir meg altså en output:

 

mirobo --ip 10.0.0.160 --token "token" status
State: Charging
Battery: 100 %
Fanspeed: 104 %
Cleaning since: 0:00:03
Cleaned area: 0.0 m²

 

Skal denne innehold mer?

 

Punkt 8

Her får jeg feil på miiocli" -o, switchen -o finnes ikke. Jeg endret den til --output men det er kanskje ikke korrekt?

Output:

{"msg_ver": 2, "msg_seq": 42, "state": 8, "battery": 100, "clean_time": 3, "clean_area": 0, "error_code": 0, "map_present": 1, "in_cleaning": 0, "in_returning": 0, "in_fresh_state": 1, "lab_status": 1, "water_box_status": 0, "fan_power": 104, "dnd_enabled": 0, "map_status": 3, "lock_status": 0}'

 

Punkt 9

Kommandoen gir meg mye mindredevicer enn det du har:

 

2059794480_Screenshot2020-01-14at14_56_47.thumb.png.6ee77148165ce7d57da1344f0c7b8ac0.png

 

Så her gjør jeg noe galt?

Har dette noe med -o vs --output som jeg endret?

 

 

 

Endret av Kenneth

Del dette innlegget


Lenke til innlegg
Del på andre sider

Flott at du laget en egen Windows-guide! :) 

Jeg har redigert min guide med lenke til din nå:

 

 

Så har vi en guide for Linux og en for Windows. :) 

Del dette innlegget


Lenke til innlegg
Del på andre sider

@Kenneth

 

Punkt 2:

Stemmer. Det står i guiden. :)

 

Punkt 5:

Det er sant. Jeg oppdaterer guiden. Jeg tok for gitt at de som kjører Homeseer er litt over middels kyndige. 😎

 

Punkt 6: Du får kun fram IP, ikke token, ved bruk av mirobo discover (-- handshake 1). Den kommandoen er mer for å sjekke at python-miio er riktig installert.

Hva som gjør at "mirobo discover" fungerte hos deg, mens jeg måtte kjøre "mirobo discover --handshake 1" er jeg usikker på.

 

Status gir samme resultat hos meg, så det ser riktig ut.

guide06.PNG.f6fef2f2963b0a45e09895ee54444cd5.PNG

 

Punkt 8:

Rart det ikke fungerer med -o hos deg. Det fungerer hos meg. json-outputen du får ser imidlertid helt riktig ut:

guide07.thumb.PNG.30ce6f0cbefc31cecc9e72fe5a3a7080.PNG

 

 

Punkt 9:

Grunnen til at du har mindre devicer enn meg er fordi du har kun verdiene fra 'status'. Jeg har i tillegg har kjørt consumable_status og carpet_mode:

miiocli -o json vacuum --ip 10.10.0.135 --token 1231231231231231231321321 consumable_status

miiocli -o json vacuum --ip 10.10.0.135 --token 1231231231231231231321321 carpet_mode

Disse ligger for øvrig i .bat-fila i punkt 11.

Legger ei linje om det i guiden.

Del dette innlegget


Lenke til innlegg
Del på andre sider

Hei, @lasseruud
Har prøvd oppsettet ditt, og det fungerer supert. Sleit med å få tak i token. Men etter en nedgradering av appen til en eldre versjon, som ikke skjuler token, reinstallasjon av støvsuger i nettet, så fant jeg riktig token i en loggfil på telefonen.

Endret av Siggi

Del dette innlegget


Lenke til innlegg
Del på andre sider

Takk, @lasseruud

Super guide! Ser at jeg ikke fikk inn de samme devicer som du fikk, selv med å kjøre .bat filen. Bla. vanntank(Ref 710) og status Ref (711) hos deg. Men det er ikke så viktig. 

 

Vet du hvordan man kan gjøre om verdier til å bli litt mer forståelig? F.eks clean_area eller main_brush_work_time. Ser @ZoRaC har fått omgjort verdiene, kanskje du kan forklare? 🙂   

Endret av Utkilars

Del dette innlegget


Lenke til innlegg
Del på andre sider
9 minutter siden, Utkilars skrev:

Vet du hvordan man kan gjøre om verdier til å bli litt mer forståelig? F.eks clean_area eller main_brush_work_time. Ser @ZoRaC har fått omgjort verdiene, kanskje du kan forklare? 🙂   

Det er bare å endre navnet som du gjør med andre devicer i Device Management

Endret av Siggi

Del dette innlegget


Lenke til innlegg
Del på andre sider
3 minutter siden, Siggi skrev:

Det er bare å endre navnet som du gjør med andre devicer i Device Management

Kanskje dårlig forklart av meg, men mener ikke selve navnet på devicen. F.eks main_brush_work_time så viser den en verdi på 27441 hos lasseruud. I timer vil dette si i underkant av 8 timer, altså 27441/3600= 7,62 timer. Så det jeg lurer på er hvordan man kan få verdiene til å bli vist i timer eller m2

Del dette innlegget


Lenke til innlegg
Del på andre sider

Ikke dårlig forklart, bare dårlig lest.

Klikk på DeviceID-knappen, for å få opp editor-vindu.

image.png.9c76ef83de99c026aca9d5429478931d.png

 

I eksemplet her, har jeg delt på 3600 for å få antall timer

image.png.d9fd2c667464f9fefdbcab90bc446e5d.png

  • Like 2

Del dette innlegget


Lenke til innlegg
Del på andre sider
27 minutter siden, Siggi skrev:

Ikke dårlig forklart, bare dårlig lest.

Klikk på DeviceID-knappen, for å få opp editor-vindu.

image.png.9c76ef83de99c026aca9d5429478931d.png

 

I eksemplet her, har jeg delt på 3600 for å få antall timer

image.png.d9fd2c667464f9fefdbcab90bc446e5d.png

Se der, ja! Takk skal du ha 🙂

Del dette innlegget


Lenke til innlegg
Del på andre sider

Veldig bra guide. KUDOS!

Jeg fikk løsningen opp å gå uten problemer.

 

Men, finnes det en oversikt over statusene til de forskjellige devicene? Som kan brukes som underlag for å sette opp statustekster?

Del dette innlegget


Lenke til innlegg
Del på andre sider
13 minutter siden, Hillmar skrev:

Men, finnes det en oversikt over statusene til de forskjellige devicene? Som kan brukes som underlag for å sette opp statustekster?


Her er en ganske grei oversikt over errorkoder og state: https://github.com/rytilahti/python-miio/blob/master/miio/vacuumcontainers.py

  • Thanks 1

Del dette innlegget


Lenke til innlegg
Del på andre sider

I forbindelse med at jeg at jeg styret med dette så ble støvsugeren min oppdatert med nyeste firmware. Og PLUTSELIG var min S5 i stand til å håndtere forskjellige rom! 😀

646795C3-4DAA-440B-9AAD-D5CB906FCB9C.thumb.png.7e300469abb7d6d510c69eb97646adf2.png
 

Antar at miio må oppdateres før det vil være mulig å kontrollere dette?

Del dette innlegget


Lenke til innlegg
Del på andre sider
42 minutter siden, Hillmar skrev:

I forbindelse med at jeg at jeg styret med dette så ble støvsugeren min oppdatert med nyeste firmware. Og PLUTSELIG var min S5 i stand til å håndtere forskjellige rom! 😀

Hvilken firmware versjon har du nå?

Del dette innlegget


Lenke til innlegg
Del på andre sider
2 minutter siden, Daniel_hoy skrev:

Last ned Flolevac appen, så kan du oppdatere med den. Der er nyere firmware tilgjengelig

Må ha Android for å laste ned den dessverre.

Del dette innlegget


Lenke til innlegg
Del på andre sider

Ja det er mulig bare den er tilgjengelig på Android. Du får spørre en venn om å låne telefonen litt så du får oppdatert. Så kan du bare logge av å slette appen.

Del dette innlegget


Lenke til innlegg
Del på andre sider

Du har nok fått 5 Max softwaren installert:

 

»

Differences between the S5and S5 Max

The S5 Max has Selective Room Cleaning that the standard model does not have. The S5 Max allows setting suction per room, mopping water level ('dripping') per room, and no-mop zones, all lacking in the base S5

 

Jeg har og S5, virker den nye softwaren?

 

/Helge

Endret av Byelektrikeren

Del dette innlegget


Lenke til innlegg
Del på andre sider
1 hour ago, Byelektrikeren said:

Du har nok fått 5 Max softwaren installert:

 

»

Differences between the S5and S5 Max

The S5 Max has Selective Room Cleaning that the standard model does not have. The S5 Max allows setting suction per room, mopping water level ('dripping') per room, and no-mop zones, all lacking in the base S5

 

Jeg har og S5, virker den nye softwaren?

 

/Helge

Om du «snakker til» meg så har ikke jeg i alle fall ikke gjort noe aktivt for å få S5 Max FW. Men hva vet vel jeg om hva Kina har gjort av valg for meg 🤪

Del dette innlegget


Lenke til innlegg
Del på andre sider

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Fjern formatering

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.


  • Lignende innhold

    • Av ZoRaC
      EDIT:
      Se egen guide for å få til det samme i Windows her:
       
      —————
       
      Det finnes en tråd med litt diskusjon rundt det å få Xiaomi-støvsugere inn i HomeSeer her: 
      https://www.hjemmeautomasjon.no/forums/topic/4080-xiaomi-mi-roborock-robotstøvsuger/
      Resultatet i den tråden er at @Rogerbl har laget en integrasjon som han selger via sin nettbutikk.
       
      Når jeg kjøpte min første Roborock S5 denne uka så syntes jeg 800 kr var litt for mye for en programvare til en støvsuger jeg betalte 2400 kr for (no offence, @Rogerbl ).
       
      Så da måtte jeg ta saken i egne hender og ordne det selv.  

       
      Jeg skal her forsøke å beskrive hvordan dette er gjort, forhåpentligvis godt nok til at flere kan kopiere løsningen.  
      Jeg kjører Ubuntu, så om dette er mulig å få til på Windows har jeg ingen anelse om...
       
      Programvare som brukes:
      * En MQTT-broker (f.eks Moquitto)
      * mcsMQTT-plugin til HomeSeer
      * python-miio
      * mqtt-launcher
       
      Start med installasjon av python-miio: https://python-miio.readthedocs.io/en/latest/discovery.html
      Uthenting av token var veldig enkelt med Android, som beskrevet her: https://python-miio.readthedocs.io/en/latest/discovery.html#tokens-from-mi-home-logs
       
      Når du får "mirobo discover" fungerer så kan du gå videre.  
       
      Hvis du ikke har en MQTT-broker, sett opp det og test at den fungerer, f.eks Mosquitto: https://mosquitto.org/download/
       
      Installer og konfigurere mcsMQTT-plugin i HomeSeer og sjekk at den fungerer.
       
      Lag "/usr/local/HomeSeer/scripts/vacuum.sh":
      #!/bin/bash IP=192.168.1.10 TOKEN=1234567868767786345 mosquitto_pub -h localhost -t vacuum/status -m "$(miiocli -o json vacuum --ip $IP --token $TOKEN status)" mosquitto_pub -h localhost -t vacuum/consumable_status -m "$(miiocli -o json vacuum --ip $IP --token $TOKEN consumable_status)" mosquitto_pub -h localhost -t vacuum/status/carpet_mode -m "$(miiocli -o json vacuum --ip $IP --token $TOKEN carpet_mode)" Kjør den og sjekk at du finner disse i mcsMQTT. Hak av for "associate" på de samme enheten som jeg har over.
      Gå inn på enheten og gjør justeringer på prefix/suffix, osv etter eget ønske.
       
      Legg til vacuum/control i mcsMQTT, med dette oppsettet:

       
      Legg inn mqtt-launcher.py og .conf i /scripts-mappa:
      https://github.com/jpmens/mqtt-launcher
       
      Legg dette i mqtt-launcher.conf:
      logfile = 'logfile' mqtt_broker = 'localhost' # default: 'localhost'. If using TLS, this must be set to the domain name signed by your TLS certificate. mqtt_port = 1883 # default: 1883 mqtt_clientid = 'mqtt-launcher-1' mqtt_username = None mqtt_password = None mqtt_tls = None # default: No TLS topiclist = { # topic payload value program & arguments "vacuum/control" : { 'start' : [ '/usr/local/bin/mirobo', '--ip', '192.168.1.10', '--token', '2313213213221321231', 'start' ], 'find' : [ '/usr/local/bin/mirobo', '--ip', '192.168.1.10', '--token', '2313213213221321231', 'find' ], 'home' : [ '/usr/local/bin/mirobo', '--ip', '192.168.1.10', '--token', '2313213213221321231', 'home' ], 'spot' : [ '/usr/local/bin/mirobo', '--ip', '192.168.1.10', '--token', '2313213213221321231', 'spot' ], 'pause' : [ '/usr/local/bin/mirobo', '--ip', '192.168.1.10', '--token', '2313213213221321231', 'pause' ], }, "vacuum/control/fanspeed" : { None : [ '/usr/local/bin/mirobo', '--ip', '192.168.1.10', '--token', '2313213213221321231', 'set_fan_speed', '@!@' ], }, "vacuum/control/carpet_mode" : { None : [ '/usr/local/bin/miiocli', 'vacuum', '--ip', '192.168.1.10', '--token', '2313213213221321231', 'set_carpet_mode', '@!@' ], }, } (bytt ut "2313213213221321231" med token)
       
      Endre denne linjen i mqtt-launcher.py: https://github.com/jpmens/mqtt-launcher/blob/master/mqtt-launcher.py#L43
      Legg inn CONFIG="/usr/local/HomeSeer/scripts/mqtt-launcher.conf"
       
      Kjør mqtt-launcher.py.
      Når du ser at det fungerer, legg den inn som en service, slik at den kjører automatisk, slik som beskrevet her:
      https://github.com/jpmens/mqtt-launcher/issues/20
       
      Det var en "lyn-guide" på hvordan dette er satt opp.  
      Kan utdype mer senere, ellers er det bare å spørre så skal jeg svare så godt jeg kan, selv om jeg verken kan noe særlig om MQTT eller Python...  
    • Av Moskus
      Vi har i den siste tiden hatt omfattende ombygging på huset, og i den forbindelse er gammelt utstyr meldt ut og nytt utstyr meldt inn. Det er snakk om en god del Dimmer 2, Switch'er, Multisensor 6 og HeatIt Z-TRM2fx termostater. Og alt i alt har jeg rett og slett blitt skikkelig imponert over Z-wave!
       
      Kona påpekte at "huset føles som det er litt tregt for tiden", og da hun sa det ble jeg også oppmerksom på det. Ja, det var tregere enn det var for ca. en uke siden. Det var rart, det eneste som er lagt til den siste uka er IDlock 150, og den ble ikke engang lagt ordentlig til.
       
      Z-seer hjalp ikke så mye. I følge det så det ut som det var mer variable responstider enn det var før, som vanligvis lå langt under 100 ms. Men den kunne i det minste bekrefte at de fleste noder hadde direkte kontakt og de som ikke hadde, fremdeles hadde høy hastighet. Så i teorien skulle altså Z-wave-nettverket være friskt og rastk. Men det var det jo ikke.
       
      Her kommer en kjapp oppskrift som potensielt kan hjelpe med å identifisere noder som har mye trafikk.
       
      1. Skru på debug logging i Z-wave pluginen. Gå til Plugins -> Manage, og trykk på Z-wave plugin'en.

       
      2. Huk av "Debug logging to file"

       
      3. Vent en stund. Mulig at det holder med 10-15 minutter.
       
      3. Deaktiver "Debug logging to file" for det kan bli svære filer av det.
       
      4. Gå til \Debug Logs-mappen og åpne filen "ZWave_Debug_NodeChange.log". Her står alle endringer som skjer på nodene dine (og som HS har registrert, som skal være alle).
       
      5. De nodene som har mest aktivitet kan være verdt å undersøke. Jeg la innholdet i NodeChange-filen over i Excel , og brukte noen enkle formler for å telle aktivet pr. node. Kolonne A inneholder nå hele loggfilen. I kolonne C hadde jeg løpenummer fra 1 til 110 (antall noder jeg har), og i kolonne D la jeg inn:
      =COUNTIF($A:$A;"*Source Node: " & C2 &" *") ... der C2 selvfølgelig er endret til C3, C4, C5, etc. Hvis du ikke vil lage din egen Excel-fil, kan du bruke min: Z-wave debug.xlsx
       
      6. Det gir dette.

       
      7. ... som kan sorteres på "Count".

       
      Hmnmmm! Tror vi ser noe her. Så er det bare å sjekke Plugins -> Z-wave -> Node Information om hvilken node det er
       
      8. Node Information viste at det var taklyset i badet i 2. etg.

       
      9. Javel, hvis det ikke er Polling og det ikke er noen andre sprø innstillinger (jeg sjekket parametrene), hva kan det da være? Gjør HomeSeer noe?
       
      10. Sjekker Events. Huk av alle devicer under "Referencing device" øverst til høyre.

       
      11. Sjekk event for event.
       
      Ai....
       

       
      Det skulle ha vært EXACTLY, og IKKE AT LEAST!!!! 😵
       
      Vel. Eventet ble endret til dette:

       
      .... og alt er 100% vel igjen.  
       
       
       
      OPPDATERING:
      Nå kan du bruke den enkle exe-filen under. Den analyserer debug-filen for deg, og oppsummerer pr. device (istedenfor pr. node) og fjerner doble logginger (dvs. hendelser som logges på samme tidspunkt teller kun som 1, pr. device).
       
       
       
    • Av Moskus
      Del 3: Z-wave-håndtering
      Nå har vi valgt en HomeSeer-versjon, og vi har satt det opp slik at det i det minste sviver. Men HomeSeer trenger å snakke med omverdenen for å være til nytte. En protokoll til det er Z-wave.
       
      Forbehold: Dette er skrevet med HomeSeer-versjon 3.0.0.297 og Z-wave plugin-versjon 3.0.1.93. Deler av det som står her kan ha blitt endret senere.
       
       
       
       
       
      Veldig kort om Z-wave
      Z-wave er en protokoll som både kan sende og motta beskjeder. Hver Z-wave enhet kalles en node, utenom sjefs-noden som kalles master controller. Flere noder som snakker sammen og med samme master controller er et nettverk. Når en node mottar en beskjed ("skru lyset ditt på") så kvitteres det tilbake til master controller.
       
      For å justere et eller annet (f.eks. dimme-tid, følsomhet for bevegelsessensorer, etc) sendes en parameter til noden.
       
      Z-wave lager et såkalt "mesh nettverk". Nodene snakker med flere andre noder, og kan sende beskjeder videre fra en til en annen, og dermed har man sjeldent dekningsproblemer.
       
       
      Interface/controller
      Man trenger et interface slik at programvaren kan kommunisere med den virkelige verdenen. Hvis du har valgt en hardware-boks fra HomeSeer, så følger det med. Hvis du har valgt kun programvare, må du kjøpe et. Mange bruker UZB1 (versjon 5.2 kan med oppdateres), andre bruker Z-stick Gen 5. Disse kobles til maskinen via USB. Noen av oss bruker til og med Z-NET, et ethernet-interface fra HomeSeer (det er hendig hvis du kjører HomeSeer på en virtuell maskin, eller trenger å plassere interfacet et stykke fra serveren).
       
      Akkurat nå er det uansett viktig å sørge for at interfacet/controlleren (jeg bruker ordene litt om hverandre) støtter Z-wave Plus. Ellers kan det nevnes at UZB1 har en fordel over Z-stick: HomeSeer kan ta backup av UZB1 og "restore" den tilbake til den samme eller en annen controller/interface. Det er også mulig med Z-stick, men da må du bruke Aeon Labs egen Windows-programvare.
       
      Du har valgt et interface? Bra, da fortsetter vi med å legge det til i HomeSeer.
       
      Aller først sjekker vi at Z-wave plugin'en kjører. Det gjør vi ved å gå til Plugins → Manage.
       
      Når dette er gjort går du til Plugins → Z-wave → Controller Management.
       

       
      Se under overskriften "Z-wave Interfaces". Hvis du ser et interface der, så trykk på den gule pilen for konfigurasjon. Hvis ikke, trykk på knappen "Add Interface" (om du ser det ene eller det andre er versjonsavhengig, men begge deler gir det samme resultatet).
       
      Navngi den på en fornuftig måte (jeg har bare kalt den "UZB1").
       
      Velg så riktig interface. Hvis du har en Zee2 med innebygget interface velger du dermed "Internal", har du UZB1 velger du "Z-wave.me UZB", har du Z-stick velger du "Aeon Labs Z-stick". Og så videre.
       
      Det siste er å velge riktig COM-port (hvis du ikke har et innebygget interface). I Windows kan du finne COM-porten i Device Manager (Windows-tast + X → Device Manager → COM-ports). Jeg er ingen Linux-expert, men jeg fant den som vist i bildet under:
       

       
      Når alt dette er gjort, trykker vi på det røde symbolet med gul bakgrunn øverst for å aktivere interfacet. Hvis alt nå er vel, endres teksten til "Initializing". Og deretter blir det røde symbolet grønt. Interface'et er "node 1" i nettverket.
       
      Voliá! Du kjører nå Z-wave.
      Gratulerer!
       
       
       
      Inkludering
      Men å kunne snakke et språk er jo litt kjedelig hvis det ikke er noen å snakke med! Så vi må legge til noen flere noder. Først en Fibaro Dimmer 2 (FGD-212). Først må du få en elektriker til å koble opp noden hvis det er en mikromodul til fast installasjon.
       
      Gå til Plugins → Z-wave → Controller Management, og utvid controlleren din (f.eks. "UZB") ved å trykke på pilen i den gule sirkelen.
       

       
      I nedtrekksmenyen velger du "Add/Include a Node". MERKNAD: Personlig bruker jeg alltid "Add/Include a Node Unsecurely", utenom for dørlåser. 
       

       
      Trykk Start.
       
      Nå må vi aktivere "inkluder"-funksjonen på noden.
      Mange noder har en knapp du typisk skal trykke på 3 ganger for å sende en "NIF", en "Node Information Frame". Mikro-moduler fra Fibaro og Qubino har en knapp på selve enheten, men man kan også bruke den eksterne bryteren ("S1") til dette.
       
      Etter litt tenking, legger HomeSeer til noden.
       

       
      Som vi ser roter Fibaro det litt til for oss om endpoints (det er en lang historie, den korte er at Fibaro feilaktig rapporterer at den er en multi-endpoint enhet, altså rapporterer den et ekstra endpoint den ikke har). Det skal vi imidlertid fikse i del 4.
       
      Naviger så til View → Device Management, og a) trykk på knappen "Show all" under de fler-fargede knappene øverst til høyre, eller b) velg "Node 2" (eller hvilken node du nå legger til) i menyen "Floor".
       

       
      Da får vi opp alt vi har i HomeSeer til nå:
       

       
      Skrur vi av og på "Switch MultiLevel 1" skal lyset gå av og på.  
       
       
       
      Ekskludering
      Ekskludering, det vil si fjerning av en node fra nettverket, er, som navnet tilsier, det omvendte av å inkludere en node. Og prosedyren er også tilsvarende enkel.
       
      Gå til Plugins → Z-wave → Controller Management. Utvid controlleren.
      Finn "Remove/Exclude a Node" i nedtrekksmenyen og trykk "Start".
      Aktiver "inkluder"-funksjonen på den fysiske enheten (trykk 3 ganger) på samme måte som når du la den til.
      Enheten fjernes nå fra nettverket.
       
       
       
      Optimalisering
      EDIT: Hvis du har et veldig stort nettverk, la oss si større enn 40-50 noder på fast strøm, så anbefales det ikke å optimalisere hele nettverket lenger. Optimaliser heller kun noen utvalgte (faste) noder.
       
      Så helt til slutt noe av det viktigste. Som nevnt innledningsvis er Z-wave et mesh-nettverk, flere noder kan kommunisere med hverandre. Men dermed må en ny node også finne ut hvilke noder som allerede finnes i nettverket. Til det må vi kjøre en "Optimize"-rutine (andre kaller det også "heal").
       
      Hvis du allerede har et nettverk og kun har lagt til en ny node, så går du til den nye nodens root → Z-wave og trykker på knappen "Optimize" (1 gang). Hvis du får beskjed om at det var vellykket, så trykker du på knappen "Full Optimize" (1 gang). Hvis den også er vellykket, så er du ferdig!  Hvis ikke, starter du på ny med "Optimize" igjen.
       
      Hvis du har lagt til mange noder, så kan du få HomeSeer til å optimalisere alle på en gang.
      Gå til Plugins → Z-wave → Controller Information. Under controlleren din velger du "Optimize a Network, No Return Route Changes" og trykker "Start".
       

       
      Hvis noen av nodene gir en feilmelding, kan du enten optimalisere nodene manuelt, eller du kan kjøre rutinen en gang til.
       
      Når alle nodene er ferdig optimalisert, skal vi gjøre det en gang til, men denne gangen velger vi "Fully Optimize a Network". Feiler noen av nodene må "Optimize" og "Full Optimize" kjøres pr feilet node.
       
      Merk: Erfarne HomeSeer-brukere, spesielt de som brukte HomeSeer 2, vet at tidligere var det snakk om at man skulle kjører "Optimize" hele 4 ganger før man kjørte "Full Optimize". Dette er ikke nødvendig lenger. Det holder med 1 gang.  
       
      Bittelitt teori: "Optimize" for en node oppdager andre noder i nettverket den er i stand til å kommunisere med, og velger ut opptil 4 forskjellige ruter fra master til node som den lagrer. "Full Optimize" gjør det samme, men lagrer også den beste "retur-ruten" tilbake til master.
       
       
       
      Oppsummering
      Nå har du et kjørende Z-wave nettverk, med en eller flere noder. I del 4 skal vi se på litt enkel feilretting (i de tilfellene det er nødvendig), justering av parametere og bruk av assosiasjoner for å kontrollere noder.
       
      Tidligere har vi sett på valg mellom de ulike versjonene (del 1) og hvordan man setter det opp (del 2). I del 5 skal vi se nærmere på bruk av 433MHz-teknologi med RFXtrx433, og i del 6 det skal vi behandle alle enhetene våre, navngi dem, sortere, og se litt nærmere på mulighetene vi har i grensesnittet.
       
      Spørsmål? Kommentarer? Gi et pip i kommentarfeltet!  
       

      Vis full oppføring
    • Av Moskus
      Del 3: Z-wave-håndtering
      Nå har vi valgt en HomeSeer-versjon, og vi har satt det opp slik at det i det minste sviver. Men HomeSeer trenger å snakke med omverdenen for å være til nytte. En protokoll til det er Z-wave.
       
      Forbehold: Dette er skrevet med HomeSeer-versjon 3.0.0.297 og Z-wave plugin-versjon 3.0.1.93. Deler av det som står her kan ha blitt endret senere.
       
       
       
       
       
      Veldig kort om Z-wave
      Z-wave er en protokoll som både kan sende og motta beskjeder. Hver Z-wave enhet kalles en node, utenom sjefs-noden som kalles master controller. Flere noder som snakker sammen og med samme master controller er et nettverk. Når en node mottar en beskjed ("skru lyset ditt på") så kvitteres det tilbake til master controller.
       
      For å justere et eller annet (f.eks. dimme-tid, følsomhet for bevegelsessensorer, etc) sendes en parameter til noden.
       
      Z-wave lager et såkalt "mesh nettverk". Nodene snakker med flere andre noder, og kan sende beskjeder videre fra en til en annen, og dermed har man sjeldent dekningsproblemer.
       
       
      Interface/controller
      Man trenger et interface slik at programvaren kan kommunisere med den virkelige verdenen. Hvis du har valgt en hardware-boks fra HomeSeer, så følger det med. Hvis du har valgt kun programvare, må du kjøpe et. Mange bruker UZB1 (versjon 5.2 kan med oppdateres), andre bruker Z-stick Gen 5. Disse kobles til maskinen via USB. Noen av oss bruker til og med Z-NET, et ethernet-interface fra HomeSeer (det er hendig hvis du kjører HomeSeer på en virtuell maskin, eller trenger å plassere interfacet et stykke fra serveren).
       
      Akkurat nå er det uansett viktig å sørge for at interfacet/controlleren (jeg bruker ordene litt om hverandre) støtter Z-wave Plus. Ellers kan det nevnes at UZB1 har en fordel over Z-stick: HomeSeer kan ta backup av UZB1 og "restore" den tilbake til den samme eller en annen controller/interface. Det er også mulig med Z-stick, men da må du bruke Aeon Labs egen Windows-programvare.
       
      Du har valgt et interface? Bra, da fortsetter vi med å legge det til i HomeSeer.
       
      Aller først sjekker vi at Z-wave plugin'en kjører. Det gjør vi ved å gå til Plugins → Manage.
       
      Når dette er gjort går du til Plugins → Z-wave → Controller Management.
       

       
      Se under overskriften "Z-wave Interfaces". Hvis du ser et interface der, så trykk på den gule pilen for konfigurasjon. Hvis ikke, trykk på knappen "Add Interface" (om du ser det ene eller det andre er versjonsavhengig, men begge deler gir det samme resultatet).
       
      Navngi den på en fornuftig måte (jeg har bare kalt den "UZB1").
       
      Velg så riktig interface. Hvis du har en Zee2 med innebygget interface velger du dermed "Internal", har du UZB1 velger du "Z-wave.me UZB", har du Z-stick velger du "Aeon Labs Z-stick". Og så videre.
       
      Det siste er å velge riktig COM-port (hvis du ikke har et innebygget interface). I Windows kan du finne COM-porten i Device Manager (Windows-tast + X → Device Manager → COM-ports). Jeg er ingen Linux-expert, men jeg fant den som vist i bildet under:
       

       
      Når alt dette er gjort, trykker vi på det røde symbolet med gul bakgrunn øverst for å aktivere interfacet. Hvis alt nå er vel, endres teksten til "Initializing". Og deretter blir det røde symbolet grønt. Interface'et er "node 1" i nettverket.
       
      Voliá! Du kjører nå Z-wave.
      Gratulerer!
       
       
       
      Inkludering
      Men å kunne snakke et språk er jo litt kjedelig hvis det ikke er noen å snakke med! Så vi må legge til noen flere noder. Først en Fibaro Dimmer 2 (FGD-212). Først må du få en elektriker til å koble opp noden hvis det er en mikromodul til fast installasjon.
       
      Gå til Plugins → Z-wave → Controller Management, og utvid controlleren din (f.eks. "UZB") ved å trykke på pilen i den gule sirkelen.
       

       
      I nedtrekksmenyen velger du "Add/Include a Node". MERKNAD: Personlig bruker jeg alltid "Add/Include a Node Unsecurely", utenom for dørlåser. 
       

       
      Trykk Start.
       
      Nå må vi aktivere "inkluder"-funksjonen på noden.
      Mange noder har en knapp du typisk skal trykke på 3 ganger for å sende en "NIF", en "Node Information Frame". Mikro-moduler fra Fibaro og Qubino har en knapp på selve enheten, men man kan også bruke den eksterne bryteren ("S1") til dette.
       
      Etter litt tenking, legger HomeSeer til noden.
       

       
      Som vi ser roter Fibaro det litt til for oss om endpoints (det er en lang historie, den korte er at Fibaro feilaktig rapporterer at den er en multi-endpoint enhet, altså rapporterer den et ekstra endpoint den ikke har). Det skal vi imidlertid fikse i del 4.
       
      Naviger så til View → Device Management, og a) trykk på knappen "Show all" under de fler-fargede knappene øverst til høyre, eller b) velg "Node 2" (eller hvilken node du nå legger til) i menyen "Floor".
       

       
      Da får vi opp alt vi har i HomeSeer til nå:
       

       
      Skrur vi av og på "Switch MultiLevel 1" skal lyset gå av og på.  
       
       
       
      Ekskludering
      Ekskludering, det vil si fjerning av en node fra nettverket, er, som navnet tilsier, det omvendte av å inkludere en node. Og prosedyren er også tilsvarende enkel.
       
      Gå til Plugins → Z-wave → Controller Management. Utvid controlleren.
      Finn "Remove/Exclude a Node" i nedtrekksmenyen og trykk "Start".
      Aktiver "inkluder"-funksjonen på den fysiske enheten (trykk 3 ganger) på samme måte som når du la den til.
      Enheten fjernes nå fra nettverket.
       
       
       
      Optimalisering
      EDIT: Hvis du har et veldig stort nettverk, la oss si større enn 40-50 noder på fast strøm, så anbefales det ikke å optimalisere hele nettverket lenger. Optimaliser heller kun noen utvalgte (faste) noder.
       
      Så helt til slutt noe av det viktigste. Som nevnt innledningsvis er Z-wave et mesh-nettverk, flere noder kan kommunisere med hverandre. Men dermed må en ny node også finne ut hvilke noder som allerede finnes i nettverket. Til det må vi kjøre en "Optimize"-rutine (andre kaller det også "heal").
       
      Hvis du allerede har et nettverk og kun har lagt til en ny node, så går du til den nye nodens root → Z-wave og trykker på knappen "Optimize" (1 gang). Hvis du får beskjed om at det var vellykket, så trykker du på knappen "Full Optimize" (1 gang). Hvis den også er vellykket, så er du ferdig!  Hvis ikke, starter du på ny med "Optimize" igjen.
       
      Hvis du har lagt til mange noder, så kan du få HomeSeer til å optimalisere alle på en gang.
      Gå til Plugins → Z-wave → Controller Information. Under controlleren din velger du "Optimize a Network, No Return Route Changes" og trykker "Start".
       

       
      Hvis noen av nodene gir en feilmelding, kan du enten optimalisere nodene manuelt, eller du kan kjøre rutinen en gang til.
       
      Når alle nodene er ferdig optimalisert, skal vi gjøre det en gang til, men denne gangen velger vi "Fully Optimize a Network". Feiler noen av nodene må "Optimize" og "Full Optimize" kjøres pr feilet node.
       
      Merk: Erfarne HomeSeer-brukere, spesielt de som brukte HomeSeer 2, vet at tidligere var det snakk om at man skulle kjører "Optimize" hele 4 ganger før man kjørte "Full Optimize". Dette er ikke nødvendig lenger. Det holder med 1 gang.  
       
      Bittelitt teori: "Optimize" for en node oppdager andre noder i nettverket den er i stand til å kommunisere med, og velger ut opptil 4 forskjellige ruter fra master til node som den lagrer. "Full Optimize" gjør det samme, men lagrer også den beste "retur-ruten" tilbake til master.
       
       
       
      Oppsummering
      Nå har du et kjørende Z-wave nettverk, med en eller flere noder. I del 4 skal vi se på litt enkel feilretting (i de tilfellene det er nødvendig), justering av parametere og bruk av assosiasjoner for å kontrollere noder.
       
      Tidligere har vi sett på valg mellom de ulike versjonene (del 1) og hvordan man setter det opp (del 2). I del 5 skal vi se nærmere på bruk av 433MHz-teknologi med RFXtrx433, og i del 6 det skal vi behandle alle enhetene våre, navngi dem, sortere, og se litt nærmere på mulighetene vi har i grensesnittet.
       
      Spørsmål? Kommentarer? Gi et pip i kommentarfeltet!  
       
    • Av Teza
      Beskrivelse:
      Hvordan legge til en Fibaro røykvarsler i HomeSeer.
       
       

       
       
      Dersom Fibaro Røykvarsler har vært tilkoblet et z-wave nettverk tidligere, må den først resettes før den kan legges til et nytt nettverk.
       
       
      I HomeSeer trykk på "PLUG-INS", "Z-Wave" og "Controller Management"
       
       
      Under "Z-Wave Interfaces" trykker du på , forran "Name: UZB1 z.wave transceiver"
       
       
      På rullegardin menyen "Actions:" velger du "Add/include a Node"
       
       
      Fibaro røykvarsler har en knapp på undersiden som registrerer om den er montert i en holder.
      Denne knappen (ved siden av batteriet) må holdes inne, under hele prosessen med å inkludere røykvarsleren i Homeseer.
       
      Det må være kortest mulig avstand mellom Fibaro røykvarsler og UZB1, monter UZB1 på en usb skjøteledning for å få disse så nært hverandre som mulig.
      Er avstanden for stor blir det problemer.
       
      Trykk på  i Homeseer
      Trykk 3 ganger på knappen på toppen av Fibaro røykvarsler.
       
      Knappen på undersiden, som registrerer om Fibaro røykvarsler er montert i en holder, kan nå slippes.
       
       
      Trykk på "VIEW" og "Device Management" i Homeseer.
       
       
      Velg "Check all" på filtrene "Eiendom", "Rom" og "Device Type"
       
       
      I dette eksemplet er Fibaro røykvarsler lagt til som Node 24.
      Du skal se 12 nye devices i listen merket med "Node 24".

       
       
      Trykk på devicen "Fibaro Notification Sensor", med iconet av et tannhjul.

      Legg inn ønsket sensitivitet for røyk og device image
       
       
       
       

      Devicen "Application Status" kan skjules (ikke slettes), da den kun jobber i bakgrunnen.
       
       
       
       

      Devicen "Battery" rapporterer tilstanden til batteriet montert i røykvarsleren.
       
       
      Prosedyre ved bytte av batteri:
       
       
       

      Kan skjules (ikke slettes), brukes i direkte kommunikasjon med andre Z-Wave enheter (hovedkontroller og 3. tilknytningsgruppe "Alarm")
       
       
       
       

      Kan skjules (ikke slettes), brukes i direkte kommunikasjon med andre Z-Wave enheter (hovedkontroller og 3. tilknytningsgruppe "Alarm")
       
       
       
       

      Sender alarm dersom microbryteren under brannvarsleren registrerer at den er fjernet fra monteringsbranketten. (Må aktiveres manuelt)
       
       
       
       

      Kan skjules. Intern funksjon som reduserer strømforbruk i røykvarsleren?
       
       
       
       

       
       
       
       

      Kan skjules (ikke slettes), brukes i direkte kommunikasjon med andre Z-Wave enheter
       
       
       
       

      Varsler dersom det er tilstrekkelig mye røyk for å utløse røykvarsleren.
       
       
       
       

      Sender alarm dersom temperatur overstiger grenseverdi som er satt for temperatur alarm. (Må aktiveres manuelt) 
       
       
       
       

      Rapporterer temperaturen fra temperatur sensoren i røykvarsleren.
       
       
       
       
       
       
       
      Eksempel på bruk av Fibaro røykvarsler i Homeseer: 
       
      På et vaskerom er det ofte tørketrommel eller varmtvannstank som starter en brann.
      Har derfor hjemme hos meg satt opp en event som kutter strømmen til vaskemaskin, tørketrommel og varmtvannstank, dersom røykvarsler utløses.
       

       
       
      For hver røykvarsler jeg har montert, har jeg også testet dem etter oppsett.

      Video av testing av Fibaro røykvarsler.
      Har benyttet Splintax røykstikker for å teste.
       
       

×
×
  • Opprett ny...