Openhab2

open Home Automation Bus (openHAB) ist eine in Java entwickelte Softwarelösung, die Komponenten zur Gebäudeautomatisierung von den verschiedensten Anbietern hersteller- und protokollneutral in einer Plattform miteinander verbindet.
idznak
Beiträge: 10
Registriert: Di 21. Jun 2016, 13:42
Wohnort: Raubling
Mäher: Gardena R40Li
Firmware des Mähers (MSW): MSW 5.xx.xx
Herstellungsjahr: 2015
Robonect-Modul: Robonect Hx (Rev.4)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von idznak » Do 29. Jun 2017, 14:35

Wie würde die CURL lauten?

michael
Beiträge: 49
Registriert: Do 12. Mai 2016, 20:28

Re: Openhab2

Beitrag von michael » So 2. Jul 2017, 21:45

Den "spontanen Auftrag" hab ich im ersten Beitrag schon implementiert...
Robonect H30x Firmware V0.9 (Final)
Automower: R40Li MSW-Version: 5.01.00 SUB-Version: 5.00.00 Software: OpenHab 2.0

reyem
Beiträge: 17
Registriert: Fr 21. Apr 2017, 14:14
Mäher: Husqvarna Automower 105
Firmware des Mähers (MSW): MSW 6.xx.xx
Herstellungsjahr: 2017
Robonect-Modul: Robonect Hx (Rev.3)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von reyem » Mi 12. Jul 2017, 22:32

@michael:
Nur so zur info falls es noch interessiert. Das binding hat mittlerweile einen trigger channel. Wenn der Röbi X Minuten (konfigurierbar auf binding stufe) nicht mehr erreichbar war, wird getriggered. Damit lässt sich jetzt hoffentlich angenehmer arbeiten und rules basteln ;)

Gruss
Marco

bezibaerchen
Beiträge: 68
Registriert: Mi 4. Mai 2016, 14:57
Mäher: Gardena R40Li
Firmware des Mähers (MSW): MSW 5.xx.xx
Herstellungsjahr: 2015
Robonect-Modul: Robonect Hx (Rev.2)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von bezibaerchen » Do 13. Jul 2017, 12:41

Servus Marco,

hab's jetzt auch mal installiert und meine HTTP-Variante quasi transferiert. Gute Arbeit und weniger manuell als bei HTTP.

Frage mich nur gerade: Duration gibst Du in Sekunden zurück, irgendwelche Pläne bzgl. einer Umrechnung?
MSW-Software: R40Li
MSW-Version: 5.01.00
MSW-Datum: 2014-10-10 13:44:38
SUB-Version: 5.00.00

reyem
Beiträge: 17
Registriert: Fr 21. Apr 2017, 14:14
Mäher: Husqvarna Automower 105
Firmware des Mähers (MSW): MSW 6.xx.xx
Herstellungsjahr: 2017
Robonect-Modul: Robonect Hx (Rev.3)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von reyem » Do 13. Jul 2017, 16:11

@bezibarchen: Danke! Ja, momentan gibt das binding 1:1 das zurück was es von der API bekommt. Aber ich könnte das natürlich easy in Minuten umrechnen. Andererseits lässt es sich auch einfach in rules umrechnen. Wenn ich das bereits im Binding mache gibt es keinen Weg zurück an die Sekunden zu kommen und es geht information verloren. Deshalb die Frage, was wäre der Vorteil von einer anderen Einheit, bzw. wie/wozu verwendest du die duration in deinen rules?

bezibaerchen
Beiträge: 68
Registriert: Mi 4. Mai 2016, 14:57
Mäher: Gardena R40Li
Firmware des Mähers (MSW): MSW 5.xx.xx
Herstellungsjahr: 2015
Robonect-Modul: Robonect Hx (Rev.2)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von bezibaerchen » Do 13. Jul 2017, 16:21

In meiner HTTP-Variante der Items mache ich es so:

Code: Alles auswählen

Number AutoMowerDuration "Dauer [%s]"                                                                   <clock-on>              {http="<[automowerCache:30000:JS(automower_duration.js)]"}
automower_duration.js:

Code: Alles auswählen

(function(i) {
    var ret = "";
    var seconds = JSON.parse(input).status.duration;
    var days = Math.floor(seconds/(24*60*60));
    var restwodays = seconds % (24*60*60);
    var hours = Math.floor(restwodays/(60*60));
    var restwohours = restwodays % (60*60);
    var minutes = Math.floor(restwohours/ 60);
    var seconds = restwohours % 60;

    var minutess = "" + minutes;
    if(minutes<=9) minutess = "0"+minutes;

    var secondss = "" +  seconds;
    if(seconds<=9) secondss = "0"+seconds;

    if ( days  > 0 )   ret = ""  + days    + "T ";
    if ( hours > 0 )   ret = ret + hours   + ":";
    if ( minutes > 0 ) ret = ret + minutess + ":";
    ret = ret + secondss + "";
    return ret;
})(input)
Vielleicht lässt sich das auch so im Binding lösen, dass das Binding rechnet und dementsprechend anzeigt.
MSW-Software: R40Li
MSW-Version: 5.01.00
MSW-Datum: 2014-10-10 13:44:38
SUB-Version: 5.00.00

reyem
Beiträge: 17
Registriert: Fr 21. Apr 2017, 14:14
Mäher: Husqvarna Automower 105
Firmware des Mähers (MSW): MSW 6.xx.xx
Herstellungsjahr: 2017
Robonect-Modul: Robonect Hx (Rev.3)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von reyem » Fr 14. Jul 2017, 17:01

OK, verstehe... Leider kann ich das nicht vom binding erledigen lassen. Ich könnte natürlich einen String channel dafür erstellen, aber der müsste dann wiederum Formatierung-Patterns als configuration unterstützen etc. Ich bin der Meinung das gehört eher in die rule, bzw. in einen transformation service den du ja schon korrekt benutzt.

bezibaerchen
Beiträge: 68
Registriert: Mi 4. Mai 2016, 14:57
Mäher: Gardena R40Li
Firmware des Mähers (MSW): MSW 5.xx.xx
Herstellungsjahr: 2015
Robonect-Modul: Robonect Hx (Rev.2)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von bezibaerchen » So 16. Jul 2017, 11:24

Mit der Rule hat das wenig zu tun, ich schau mal, ob ich es transformiert bekomme und poste dann den Code.
MSW-Software: R40Li
MSW-Version: 5.01.00
MSW-Datum: 2014-10-10 13:44:38
SUB-Version: 5.00.00

bezibaerchen
Beiträge: 68
Registriert: Mi 4. Mai 2016, 14:57
Mäher: Gardena R40Li
Firmware des Mähers (MSW): MSW 5.xx.xx
Herstellungsjahr: 2015
Robonect-Modul: Robonect Hx (Rev.2)
Robonect Firmware: 0.9e

Re: Openhab2

Beitrag von bezibaerchen » Fr 21. Jul 2017, 12:50

So, das hat mir jetzt einfach keine Ruhe gelassen.

Hattest übrigens Recht, muss in eine Rule.

Falls das auch jemand möchte, hier mal die entsprechenden Snippets. Bitte beachten, man braucht 2 Items für die Dauer. Eines an den Channel gebunden und ein leeres.

Relevante Items:

Code: Alles auswählen

Number robonect_duration "Dauer aktueller Modus [%s h]" <grass> {channel="robonect:mower:13b76ca8:mowerStatus#duration" }
String robonect_transform "Dauer aktueller Modus [%s h]"
Rule automower_duration.rules:

Code: Alles auswählen

when
        Item robonect_duration changed
then
        var robonectduration=transform("JS", "robonect_duration.js", robonect_duration.state.toString)
        robonect_transform.postUpdate(robonectduration)
end
JavaScript zum Umrechnen (robonect_duration.js)

Code: Alles auswählen

(function(seconds) {
var retval = "";

  var days = Math.floor(seconds / (24 * 60 * 60));
  seconds = seconds % (24 * 60 * 60);
  var hours = Math.floor(seconds / (60 * 60));
  seconds = seconds % (60 * 60);
  var minutes = Math.floor(seconds / (60));
  seconds = seconds % (60);

  if (days > 0) {
    if (days > 1) {
      retval = retval + days + " " + "days ";
    }
    else {
      retval = retval + days + " " + "day ";
    }
  }

  retval = retval + hours + ":";

  if (minutes < 10) {
    retval = retval + "0" + minutes;
  }
  else {
    retval = retval + minutes;
  }

  return retval;
})(input)
MSW-Software: R40Li
MSW-Version: 5.01.00
MSW-Datum: 2014-10-10 13:44:38
SUB-Version: 5.00.00

Galileo
Beiträge: 4
Registriert: Sa 1. Okt 2016, 12:16
Mäher: Husqvarna Automower 330X
Firmware des Mähers (MSW): MSW 5.xx.xx
Robonect-Modul: Robonect Hx (Rev.0)
Robonect Firmware: -0.9

Re: Openhab2

Beitrag von Galileo » Do 21. Sep 2017, 16:29

Hallo Reyem,
Ich bin gerade dabei, von EibPC auf Openhab2 umzusteigen. Also noch im Lernprozess was Raspi/Openhab betrifft.
Licht und Heizung habe ich schon geschafft und jetzt wollte ich den Robonect angehen. Ein Binding dafür ist natürlich verlockend und laut deiner Beschreibungen sollte es auch leicht zu installieren sein. Alleine - ich finde das von dir
beschriebene zip-File zum Download auf github nicht. Vielleicht bin ich auch zu dumm um github zu bedienen :-(
Könntest du bitte einen Link oder eine Beschreibung geben, wo genau ich die aktuelle Version herunterladen kann?
Vielen Dank,
Eduard
Husqvarna 330x Firmware V0.9 MSW-Version V5.03.00 SUB-Version 5.00.00

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast