Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Binding: Oregon Scientific WMR 88/100/180 Wetterstation

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Neues Binding: Oregon Scientific WMR 88/100/180 Wetterstation

    Hallo,

    ich wollte ein neues Binding für die Oregon Wetterstation WMR 88/100/180 vorstellen. Das Binding ist ziemlich simpel, einfach "org.openhab.binding.wmr.xxxx.jar" in den Addon Ordner kopieren und in den Items folgendes eintragen. Dann die Wetterstation per USB mit dem Rechner verbinden. Es klappt auch mit einem USB 1.1 Extender, somit kann die Station z. B. im Wohnzimmer stehen bleiben.

    Das Binding sollte unter Windows 32/64, Mac und Linux 32/64 und ARM laufen.

    Unter Linux wird die Packet libusb benötigt, diese Packet ist häufig schon installiert. Unter vielen Linux Distributionen fehlt die Bibliothek libudev.0.so, da diese durch libudev.1.so ersetzt wurde. Im einfachsten Fall legt man hier einen Symlink auf libudev.1.so mit dem Namen libudev.0.so an.
    Andere Benutzer als root dürfen in der Regel nicht aus HID Devices zugreifen, daher muss hier eine Rule für UDEV erstellt werden.

    Dazu einfach mal in diesem Wiki nachsehen :https://github.com/csowada/HEIMnode/...-auf-odroid-u3

    Download:
    https://drive.google.com/uc?export=d...lJtUVV0SWJoMTA

    Code:
    Number IndoorTemp "Temp. indoor: [%.1f °C]"  { wmr="id:temp.indoor.temperature" }
    Hier die Liste der unterstützen Ids:
    Code:
    wind.lowbatt              | Low battery alarm       | ON/OFF
    wind.gust                 | Wind gust               | km/h
    wind.average              | Wind average            | km/h
    wind.direction            | Wind direction          | °
    wind.chill                | Wind chill              | °C
    
    barometer.absolute        | Pressure absolute       | mb
    barometer.relative        | Pressure relative       | mb
    weather.forecast          | Weather forecast        | int value
    weather.previous          | Weather previous 24h    | int value
    
    rain.lowbatt              | Low battery alarm       | ON/OFF
    rain.rate                 | Rainfall rate           | mm/hr
    rain.recent               | Rainfall recent         | mm
    rain.day                  | Rainfall day            | mm
    rain.reset                | Rainfall since reset    | mm
    
    temp.indoor.lowbatt       | Low battery alarm       | ON/OFF
    temp.indoor.temperature   | Indoor temperature      | °C
    temp.indoor.humidity      | Indoor humidity rel.    | %
    temp.indoor.dewpoint      | Indoor dewpoint         | °C
    
    temp.outdoor.lowbatt      | Low battery alarm       | ON/OFF
    temp.outdoor.temperature  | Outdoor temperature     | °C
    temp.outdoor.humidity     | Outdoor humidity rel.   | %
    temp.outdoor.dewpoint     | Outdoor dewpoint        | °C
    
    temp.outdoor2.lowbatt     | Low battery alarm       | ON/OFF
    temp.outdoor2.temperature | Outdoor 2 temperature   | °C
    temp.outdoor2.humidity    | Outdoor 2 humidity rel. | %
    temp.outdoor2.dewpoint    | Outdoor 2 dewpoint      | °C
    
    temp.outdoor3.lowbatt     | Low battery alarm       | ON/OFF
    temp.outdoor3.temperature | Outdoor 3 temperature   | °C
    temp.outdoor3.humidity    | Outdoor 3 humidity rel. | %
    temp.outdoor3.dewpoint    | Outdoor 3 dewpoint      | °C
    Translation Map (ungeprüft)
    Code:
    undefined=undefiniert
    -=unbekannt
    0=leicht bewölkt
    1=Regen
    2=bedeckt
    3=sonnig
    4=klar (nacht)
    5=Schnee
    6=leicht bewölkt (nacht)
    Angehängte Dateien
    Zuletzt geändert von csowada; 02.06.2015, 13:47. Grund: Mapping angeängt

    #2
    Super vielen Dank.

    Jetzt kann ich guten Gewissens eine Orgon kaufen :]

    ich denke es wird eine 180 :]

    Kommentar


      #3
      Ich hatte noch vergessen die Gretchenfrage zu stellen.
      Wie hält Orgon es denn mit den Treibern? Da ich OpenHab auf meinem PI laufen habe, wäre ein Linux Treiber wichtig.
      Weist du etwas darüber?

      Kommentar


        #4
        Da sich die Wetterstation als HID-Device meldet, sollte unter jedem normalen Linux kein weiterer Treiber benötigt werden. Auf meinem ODroid U3 mit Arch-Linux hat das auch sofort geklappt.
        Unter Windows 7 wird automatisch ein Treiber installiert.

        Kommentar


          #5
          Perfekt

          Kommentar


            #6
            Heya
            Meine Oregon WMRS200 ist heute gekommen.

            Ich habe den indoor temp sensor angebunden und konnte meine Werte schon ablesen (ist übrigens ein Schnäppchen mit 99€ incl Regen,Wind und Temp/Hygro Sensor)
            Dann habe ich die Station per USB an meinen PI geknübbelt und dein Binding installiert. Dann noch ein Item angelegt und gehofft. Leider hat es noch nicht funktioniert. Es wird kein Wert angezeigt, aber auch kein Fehler im Log protokolliert.

            Das Binding wird offenbar korrekt geladen:
            PHP-Code:
            16:50:56.016 INFO  o.o.b.wmr.internal.WmrBinding[:43]- Update WMR Binding configuration ... 
            der Sensor wird vom OS (Debian Weezy) offebar auch erkannt: dmesg
            PHP-Code:
            [1641920.150349usb 1-1.2: new low-speed USB device number 6 using dwc_otg
            [1641920.274880usb 1-1.2: New USB device foundidVendor=0fdeidProduct=ca01
            [1641920.283222usb 1-1.2: New USB device stringsMfr=0Product=1SerialNumber=0
            [1641920.291923usb 1-1.2ProductUniversal Bridge
            [1641920.309569hid-generic 0003:0FDE:CA01.0002hiddev0,hidraw0USB HID v1.10 Device [Universal Bridgeon usb-bcm2708_usb-1.2/input0 

            Sonst finde ich leider nichts... hast du einen Tip wie ich debuggen kann? Wie ich z.B. den Sensor per Shell auslesen kann etc.? Unter Win klappt es zumindest

            Kommentar


              #7
              Zitat von Tulamidan Beitrag anzeigen
              Heya
              Meine Oregon WMRS200 ist heute gekommen.
              ...
              Es wird kein Wert angezeigt, aber auch kein Fehler im Log protokolliert.
              Wir die WMRS200 überhaupt vom Binding unterstützt? Wenn ich das richtig lese ist das Binding doch nur für WMR 88/100/180, oder etwa nicht?

              Gruß,
              thoern

              Kommentar


                #8
                Ach ich denke das passt schon. Die Oregon Software für die 88 funktioniert auch mit diesem Model. Und ich denke nicht, dass sie sich extra ein eigenes Protokoll ausdenken

                Kommentar


                  #9
                  Also ich habe jetzt das Binding mal unter windows getestet. Dort ist der Treiber installiert und ich bekomme Werte.
                  Liegt also daran, dass Linux die Station nicht richtig ansprechen kann.

                  Kommentar


                    #10
                    @csowada
                    Könntest du mir mal deine Ausgabe von lsusb -v und dmesg geben?

                    Nutzt du libhid? oder javahidapi?

                    Edit mittlerweile bin ich ein wenig weiter: Du nutzt die bibliothek von javahidapi. Dieses benötigt: libusb1.0, libudev und libudev-devel. libudev gibt es nicht für raspbian darum habe ich udev installiert, libudev ist offenbar enthalten. jedenfalls kompliert javahidapi und hidapitest zeigt mir die Station an. Leider bringt es mich nicht weiter...
                    Wo schreibst du denn deine errorlogs hin, im openhab.log finde ich keine Fehler?

                    Kommentar


                      #11
                      Moin,

                      ich war am Wochenende mit Renovierungsarbeiten beschäftigt.
                      Also, dass die WMR200 läuft, wundert mich ein bisschen, kann aber sein. Wenn es unter Windows läuft, sollte es auch unter Linux laufen. Aber richtig, es wird "javahid" verwendet.

                      Läuft openhab als root? Hier konnte es mit den Rechten Probleme geben.
                      Ich bin mir nicht mehr sicher, ob ich nicht ein symlink für eine Bibliothke erstellen musste.

                      Ich werde mir das mal heute Abend im Quelltext ansehen. Der soll auch demnächst veröffentlicht werden.

                      Kommentar


                        #12
                        Es gibt eine neue Version, die alte läuft nicht auf ARM CPU's. Dieser Version sollte nun auf allen aktuelleren Betriebssystemen laufen. Ich werde die javahid Bibliothek später in ein extra Bundle auslagern. So sollte es aber erstmal laufen. Die Fehlermeldung beim Start kann ignoriert werden.

                        Es wird auch libusb auf Linux Kisten benötigt, siehe hier https://github.com/cibuddy/cibuddy/t...er/drivers/hid

                        Kommentar


                          #13
                          Grrrr, die Version war schon wieder nicht i.O.
                          Nächster Versuch, hab leider etwas zu viel aufgeräumt.
                          Angehängte Dateien

                          Kommentar


                            #14
                            Estmal ein riesen Top, dass Du Dir soviel Mühe gibst!

                            openhab läuft bei mir als root, daran dürfte es nicht scheitern.

                            Deine neue Version läd bei mir offebar gar nicht mehr...

                            Die Alte meldete sich im openhab.log noch mit:
                            16:37:29.706 INFO o.o.b.wmr.internal.WmrBinding[:43]- Update WMR Binding configuration ...

                            Diese habe ich gelöscht und durch die Neue ersetzt. Nun bekomme ich keinerlei log Einträge von deinem Binding mehr Ich nutze Java7 und openHab 1.6.1

                            Muss mittlerweile in openhab.cfg etwas eingetragen werden?

                            Kommentar


                              #15
                              Nimm mal die neue Version ...

                              Kommentar

                              Lädt...
                              X