Loxone und Siri; Einbindung der Homebridge

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Muto
    LoxBus Spammer
    • 06.09.2016
    • 322

    #91
    Ich habe gestern homebridge auf meinem Pi installiert und letztlich auch erfolgreich mit meinem Iphone (IOS10) gepaired. Leider hat die Anleitung im Loxwiki aber nicht wirklich gut funktioniert und ich musste einiges ausprobieren um es tatsächlich zum laufen zu bekommen. Ich möchte die Wiki Page aber nicht anpassen, da ich (also Linux Noob) nicht beurteilen kann, ob die Wiki Page angepasst werden sollten und welche Konsequenzen meine Änderungen haben. Wäre aber vielleicht doch sinnvoll, da es wohl auch Menschen gibt, die noch weniger Ahnung als ich haben Folgendes habe ich abweichend von der Anleitung im Loxwiki gemacht:
    Punkt 5:
    wget http://nodejs.org/dist/v5.6.0/node-v5.6.0-linux-armv6l.tar.gz -P /tmp && cd /usr/local && sudo tar xzvf /tmp/node-v5.6.0-linux-armv6l.tar.gz --strip=1
    anstatt
    wget http://nodejs.org/dist/v5.6.0/node-v5.6.0-linux-armv7l.tar.gz -P /tmp && cd /usr/local && sudo tar xzvf /tmp/node-v5.6.0-linux-armv7l.tar.gz --strip=1
    Punkt 7:

    sudo npm install -g --unsafe-perm homebridge
    anstatt
    sudo npm install -g homebridge
    Punkt 10:

    sudo npm install -g --unsafe-perm homebridge-loxone homebridge-http
    anstatt
    sudo npm install -g homebridge-loxone homebridge-http
    Bei Konfiguration Punkt 1 und Punkt 3 jeweils

    sudo vi homebridge

    bzw.

    sudo vi config.json



    anstatt


    vi homebridge

    bzw.

    vi config.json

    Zuletzt geändert von Muto; 04.10.2016, 16:42.

    Kommentar


    • Gast
      Gast kommentierte
      Kommentar bearbeiten
      ist wahrscheinlich schwierig eine Anleitung zu erstellen die für alle passt. bei Punkt 5 können beide Varianten richtig sein, je nachdem welches Raspberry Modell man hat. Bei Punkt 7+10 hat bei mir genau das Gegenteil von dem was du schreibst funktioniert. Mit dem Parameter --unsafe-perm hat es bei mir Fehler gegeben...
      Ich denke, Raspberry Projekte sind eben eine Spielerei und werden das auch bleiben ;-)
  • Muto
    LoxBus Spammer
    • 06.09.2016
    • 322

    #92
    nightfreak / Noon könnt ihr mal kurz erklären wie man auf die URLs kommt bzw die einzelnen Parameter?

    Ich schreibe mal meine Interpretation mit der Bitte um Vervollständigung/Korrektur:


    Code:
     {
    "accessory": "loxone-light-switch",  [I]//typ des accessory[/I]
    "name": "Testbulb",  [I]//Name der später in Eve /Home angezeigt wird[/I] "service":
    "Light",  //Typ der in [I]Eve /Home verwendet wird?[/I]
    "brightness_handling": "yes",  [I]//wenn hier "no" steht handelt es sich nicht um einen dimmer und die set_brightness_url entfällt[/I]
    "on_url": "http://user:password@miniserver-ip/jdev/sps/io/bathroom_light/on",    [I]//URL mit der das Licht eingeschaltet werden kann                                                                                                                                                         // "Lichsteuerung_Szimmer" ist dabei der Name des Lichtsteurung Bauseins[/I]
    "off_url": "http://user:password@miniserver-ip/jdev/sps/io/bathroom_light/off",  //Selbes zum ausschalten
    "set_brightness_url": "http://user:password@miniserver-ip/jdev/sps/io/bathroom_light/%b", //selbes zum dimmen
    "status_url": "http://user:password@miniserver-ip/jdev/sps/io/bathroom_light_state/state"  //ist "Lichtsteuerung_Szimmer_sate" hier der Name eines virtuellen Ausgangs?
    },
    Code:
    {
    "accessory": "loxone-garage",     [I]//typ des accessory[/I]  
    "name": "Garage",    [I] //Name der später in Eve /Home angezeigt wird[/I]
    "garage_open_url": "http://user:password@miniserver-ip/dev/sps/io/garage_door/on",   [I]//URL mit der die Garage geöffnet wird."L[/I]garage_door[I]" ist dabei der Name eines Bauseins ?[/I]
    "garage_close_url": "http://user:password@miniserver-ip/dev/sps/io/garage_door/off", //selbes zum schließen
    "status_url": "http://user:password@miniserver-ip/jdev/sps/io/garage_door_state/state"  //ist "garage_door_state" hier der Name eines virtuellen Ausgangs?
    }
    Code:
       "TemperatureSensors":[
                       {
                           "name": "Temperature kitchen",  [I] //Name der später in Eve /Home angezeigt wird[/I]
                           "input": "AWI3" //???
                       }
    Vielen Dank schonmal für eure Hilfe!

    Gruß
    Muto

    Edit: was muss ich denn machen damit ich am Iphone neue Geräte erkennen kann, die ich nach dem Pairing konfigutiert habe?
    Zuletzt geändert von Muto; 05.10.2016, 22:58.

    Kommentar


    • Muto
      Muto kommentierte
      Kommentar bearbeiten
      Danke nochmals. Habe ich soweit verstanden.

      Mir stellt sich allerdings die Frage, warum hier ein extra Ausgang bzw. Merker angelegt werden muss. Könnte man nicht direkt den jeweiligen Ausgang abfragen?

      Code:
      http://user:passwort@miniserver-ip/jdev/sps/io/name_des_digitalen_ausgangs/state

    • Gast
      Gast kommentierte
      Kommentar bearbeiten
      Bei einem einfachen Dimmer oder Taster kannst du den Wert soweit ich weiß auch direkt abfragen, ohne virtuellem Ausgang/Merker.
      Dafür benutze ich den Namen des Dimmers/Tasters

      Code:
       http://user:passwort@miniserver-ip/jdev/sps/io/name_des_Dimmers_oder_Tasters/state
      Bei einer Lichtsteuerung habe ich noch keine andere Möglichkeit gefunden den Status eines bestimmten Ausgangs abzufragen. Was jetzt nicht heißt, dass es keine Möglichkeit gibt, nur weiß ich nicht wie ;-) Hab mich auch nicht wirklich viel damit beschäftigt, da es ja die beschriebenen anderen Möglichkeiten gibt.
      Solltest du rausfinden wie das geht, lass es mich wissen.

    • Gast
      Gast kommentierte
      Kommentar bearbeiten
      Hab gerade festgestellt, man kann den Status von z.B. einer Lampe (oder irgendeinem anderen Ausgang) direkt abfragen und benötigt eigentlich gar keinen zusätzlichen virtuellen Ausgang/Merker..... man lernt nie aus ;-)
  • Gast

    #93
    Marco Grasso: Temperatur Plugin ist bereits fertig, muss mir nur mehr die Zeit nehmen das ganze als Paket hochzuladen damit es installiert werden kann


    @Noon: welcher Wert wird denn angezeigt wenn du die Status URL im Browser eingibst? Wenn hier auch 7 ausgegeben wird zeigt das Plugin ja den richtigen Wert an. Du könntest den Wert dann ggf. mit einem Multiplizierer (x10) auf eine 0-100 Skala umrechnen. Oder du stellst deinen Dimmer/Ausgang auf diese Skala ein.

    Kommentar

  • Gast

    #94
    Für alle bei denen die Temperaturanzeige nicht korrekt funktioniert hab ich nun mein Plugin hochgeladen.


    Installiert wird das Plugin so:
    Code:
    npm install -g homebridge-loxone-temperature

    Konfiguriert wird es so:

    Code:
            "accessories":
            [
                {
                "accessory": "loxone-temperature",
                "name": "Temperatur Badezimmer",
                "url": "http://user:password@miniserver-ip/jdev/sps/io/temp_bathroom/state"
                }
            ]
    Zu achten ist wieder darauf, dass die Werte im JSON Format angezeigt werden, also "jdev" anstelle von "dev" in der URL benützen.
    Die url darf bei "value" nur Werte im Format "12.3" zurückgeben und kein Leerzeichen oder Grad (°) oder sonst etwas enthalten.

    Zusatzinfo: Bei der iOS 10 eigenen Home App werden keine Kommastellen angezeigt, bei anderen Apps schon oder wenn man Siri fragt. Das liegt nicht am Plugin sondern an Apple und der Home App.


    LG
    Chris
    Zuletzt geändert von Gast; 06.10.2016, 20:21.

    Kommentar

  • Scrati
    LoxBus Spammer
    • 25.08.2015
    • 216

    #95
    Hallo zusammen,

    ich versuche mich gerade durchs Tutorial zu arbeiten. Aber ich scheitere schon hier:
    Code:
    root@raspberry-pi:~# apt-get install gcc-4.8 g++-4.8
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    E: Unable to locate package gcc-4.8
    E: Couldn't find any package by regex 'gcc-4.8'
    E: Unable to locate package g++-4.8
    E: Couldn't find any package by regex 'g++-4.8'

    Kommentar


    • tholle
      tholle kommentierte
      Kommentar bearbeiten
      Versuch's mal mit:

      # apt-get install gcc g++

      Also ohne Angabe der Versionsnummer.

      Gruss,
      tholle
  • Scrati
    LoxBus Spammer
    • 25.08.2015
    • 216

    #96
    Ah, super. Hat geklappt bzw. gcc war schon installiert.

    Jetzt hänge ich aber bei node. Kann es sein, dass mein wheezy nicht damit klar kommt?

    Raspbian GNU/Linux 7 \n \l
    Linux version 3.12.23+ (dc4@dc4-Latitude-E6510) (gcc version 4.8.3 20140303 (pre release) (crosstool-NG linaro-1.13.1+bzr2650 - Linaro GCC 2014.03) )

    Es gibt ein Segmentation Fault.

    Leider bin ich nicht der Linux Crack und weiß wo ich suchen muss und vor allem, wie ich den gerade installierten node für arm7 wieder deinstalliere. Ich hoffe auf eure Unterstützung

    Viele Grüße

    Kommentar


    • Scrati
      Scrati kommentierte
      Kommentar bearbeiten
      Ok. Ich bin der Lösung etwas näher gekommen: DIe Änderung am Loxwiki wie von Muto vorgeschlagen, die er in Post 91 https://www.loxforum.com/forum/germa...8514#post58514 dokumentiert hat, musste ich auch machen und auf die alte arm6 Variante ausweichen. Jetzt läuft auch node.js.
      Zuletzt geändert von Scrati; 10.10.2016, 13:40.
  • Scrati
    LoxBus Spammer
    • 25.08.2015
    • 216

    #97
    Ich stehe vor dem nächsten Problem. Ich bekomme Homebridge nicht installiert. Zuerst brach die Installation immer mangels RAM ab. Dann habe ich fix ein Swapfile erstellt. Irgendwann kam ich auf die glorreiche Idee einfach den Grafikspeicher runterzuschreiben. Beide Varianten ließen die Installation wenigstens durchlaufen aber mit Fehler und Abbruch. Ich habe mal zwei exemplarische Bilder angehangen, die einige Fehler zeigen. Habt ihr dazu Tipps oder Hinweise.

    Kommentar


    • Muto
      Muto kommentierte
      Kommentar bearbeiten
      Hast du mal den ebenfalls in #91 beschriebenen Parameter --unsafe-perm probiert?
      Code:
      sudo npm install -g --unsafe-perm homebridge
      Verwendest du auch den Pi 2?
  • Scrati
    LoxBus Spammer
    • 25.08.2015
    • 216

    #98
    Soweit ich das gesehen habe, habe ich noch den 1er Modell B. Es läuft die wheezy distri, wodurch ich tatsächlich den falschen Compiler hatte. Ich bin jetzt hier fündig geworden: https://alexbloggt.com/homebridge-installieren/

    Damit habe ich den richtigen Compiler installieren können und Homebridge läuft jetzt. Nun muss ich mal eine Testlampe integrieren...und versuchen mit Siri zu steuern.

    Kommentar


    • Muto
      Muto kommentierte
      Kommentar bearbeiten
      Der Link ist gut. Ich werde auf dieser Basis in den nächsten Tagen das Wiki mal updaten.
  • Gast

    #99
    Hallo,
    ich habe Homebridge am laufen. Könnte jemand mal seine config.json posten für die homebridge loxone Temperatur und switch oder wie die genau aussehen muss.
    Und was muss ich in der loxone config genau machen das meine Leuchten geschalten werden oder eine Temperatur angezeigt bekomme?

    Vielen Dank im Vorraus
    Zuletzt geändert von Gast; 11.10.2016, 16:23.

    Kommentar


    • Gast
      Gast kommentierte
      Kommentar bearbeiten
      Ich habe EIB Taster in meiner config. Ich wollte nur wissen mit welchen Baustein in Loxone ich on und off schalte laut meiner config.json
      accessory": "loxone-light-switch",
      "name": "Licht Küche",
      "service": "Light",
      "brightness_handling": "no",
      "on_url": "http://name:Passwort@ip miniserver//jdev/sps/io/Küche/on",
      "off_url": "http://name:Passwort@ip miniserver//jdev/sps/io/Küche/off",
      "status_url": "http://name:Passwort@ip miniserver/jdev/sps/io/KGI1.7.0/state"
      nehme ich für Url on und off jeweils einen Virtuellen Eingang den ich Küche benenne? hier liegt noch mein Fehler alles andere funktioniert ja.

      Danke für die Unterstützung

    • Gast
      Gast kommentierte
      Kommentar bearbeiten
      wie alle anderen normalen Schalter/Taster kannst du einen EIB-Taster so schalten:
      Code:
      http://user:passwort@ip_adresse/jdev/sps/io/name_des_tasters/on

    • Gast
      Gast kommentierte
      Kommentar bearbeiten
      du hast übrigens 2 Slashes hintereinander in deinen on/off Adressen, was so nicht funktionieren kann
  • Scrati
    LoxBus Spammer
    • 25.08.2015
    • 216

    Ich bin es nochmal. Homebridge läuft und ich habe versucht die config.json zu adaptieren und anschließend den Dienst zu starten. Nun sagt er mir, dass er keine config findet:
    Code:
    [10/11/2016, 11:31:55 PM] Registering accessory 'homebridge-loxone-light-switch.loxone-light-switch'
    [10/11/2016, 11:31:55 PM] ---
    [10/11/2016, 11:31:55 PM] config.json (/root/.homebridge/config.json) not found.
    Ich scheine jetzt zwei Verzeichnisse zu haben. Zum einen:
    Code:
    root@raspberry-pi:~/homebridge# cd [COLOR=#FF0000]/root/.homebridge[/COLOR]
    root@raspberry-pi:[COLOR=#FF0000]~/.homebridge[/COLOR]# ls
    accessories  persist
    und zum anderen:
    Code:
    root@raspberry-pi:~/.homebridge# cd ..
    root@raspberry-pi:~# ls
    homebridge  startscript
    root@raspberry-pi:~# cd homebridge/
    root@raspberry-pi:[COLOR=#FF0000]~/homebridge[/COLOR]# ls
    accessories  config.json  config.json.save  homebridge.log  persist
    Was läuft denn da jetzt schief?

    Kommentar


    • tholle
      tholle kommentierte
      Kommentar bearbeiten
      mach mal bitte in ein 'ls -la .' in dem Verzeichnis und poste das Ergebnis hier bitte einmal.

      Gruss,
      tholle
  • Scrati
    LoxBus Spammer
    • 25.08.2015
    • 216

    Hallo tholle,

    danke das du dich meiner annimmst

    Mein Homeverzeichnis des root users:
    Code:
    root@raspberry-pi:~# ls -la
    total 92
    drwx------   7 root  root   4096 Oct 11 23:31 .
    drwxr-xr-x  23 root  root  36864 Oct 10 17:15 ..
    -rw-------   1 root  root  10324 Oct 11 23:39 .bash_history
    -rw-r--r--   1 root  root    570 Jan 31  2010 .bashrc
    drwx------   3 root  root   4096 Jul 23 20:18 .config
    drwxr-xr-x   4 root  root   4096 Oct 11 23:31 .homebridge
    -rw-------   1 root  root     12 Oct 11 23:30 .nano_history
    drwxr-xr-x   3 root  root   4096 Oct 10 16:53 .node-gyp
    drwxr-xr-x 149 root  root   4096 Oct 11 22:41 .npm
    -rw-r--r--   1 root  root    140 Nov 19  2007 .profile
    drwxr-xr-x   4 root  root   4096 Oct 11 23:39 homebridge
    -rwxr--r--   1 admin admin   127 Jul 23 20:13 startscript
    Das Verzeichnis .homebridge:
    Code:
    root@raspberry-pi:~/.homebridge# ls -la
    total 16
    drwxr-xr-x 4 root root 4096 Oct 11 23:31 .
    drwx------ 7 root root 4096 Oct 11 23:31 ..
    drwxr-xr-x 2 root root 4096 Oct 11 23:32 accessories
    drwxr-xr-x 2 root root 4096 Oct 11 23:31 persist
    Das Verzeichnis homebridge:
    Code:
    root@raspberry-pi:~/homebridge# ls -la
    total 32
    drwxr-xr-x 4 root root 4096 Oct 11 23:39 .
    drwx------ 7 root root 4096 Oct 11 23:31 ..
    drwxr-xr-x 2 root root 4096 Oct 11 11:38 accessories
    -rw-r--r-- 1 root root  776 Oct 11 23:30 config.json
    -rw-r--r-- 1 root root  848 Oct 11 22:58 config.json.save
    -rw-r--r-- 1 root root  998 Oct 11 23:39 config.json.save.1
    -rw-r--r-- 1 root root 2063 Oct 11 23:30 homebridge.log
    drwxr-xr-x 2 root root 4096 Oct 11 11:37 persist

    Kommentar


    • Scrati
      Scrati kommentierte
      Kommentar bearbeiten
      Ok. Ich habe ein wenig rumprobiert. Den Ordner ~/homebridge habe ich mit allen Inhalten gelöscht und vorher das config.json file nach ~/.homebridge kopiert. Wahrscheinlich war das andere Verzeichnis ein Relikt der vorhergehenden Installationsversuche...

      Jetzt scheint der Dienst zu laufen. Heute abend vor Ort kann ich das ganze mal ausprobieren.
      Zuletzt geändert von Scrati; 12.10.2016, 10:05.
  • Scrati
    LoxBus Spammer
    • 25.08.2015
    • 216

    Immer wenn ich einen Schritt weiterkomme, stoße ich auf das nächste Problem (siehe Bild). Der Homebridge-Dienst auf dem Raspy stürzt dann auch ab. Meine config json sieht so aus:
    Code:
                
    {
    
            "bridge":
    
            {
    
                    "name": "Homebridge",
    
                    "username": "CC:22:3D:E3:CE:30",
    
                    "port": 51826,
    
                    "pin": "123-456-789"
    
            },
    
    
    
    
            "platforms":
    
            [
    
                    {
    
                    "platform": "Loxone",
    
                    "name": "Loxone",
    
                    "ip_address": "192.168.x.x",
    
                    "username": "xxxxxxxx", #Welcher User muss hierhin? Vom Miniserver nehme ich an?
    
                    "password": "xxxxxxxx"
    
                    }
    
            ],
    
    
            "accessories":
    
            [
    
                    {
    
                    "accessory": "loxone-light-switch",
    
                    "name": "PC Licht",
    
                    "service": "Light",
    
                    "brightness_handling": "no",
    
                    "on_url": "http://MSuser:MSpw@192.168.x.x/jdev/sps/io/Wohnzimmer%20Licht%20PC/on",
    
                    "off_url": "http://MSuser:MSpw@192.168.x.x/jdev/sps/io/Wohnzimmer%20Licht%20PC/off",
    
                    "status_url": "http://MSuser:MSpw@192.168.x.x/jdev/sps/io/Wohnzimmer%20Licht%20PC/state"
    
    
                    }
    
            ]
    
    }
    Was mache ich denn jetzt schon wieder falsch?

    Hier noch der Auszug aus dem log:
    Code:
    [2016-10-12 18:16:42] [PC Licht] Getting power state
    
    undefined:1
    
    <html><head><title>error</title></head><body><errorcode>401</errorcode> <errordetail>Unauthorized</errordetail></body></html>
    
    ^
    
    
    
    
    SyntaxError: Unexpected token <
    
        at Object.parse (native)
    
        at Request._callback (/usr/local/lib/node_modules/homebridge-loxone-light-switch/index.js:115:20)
    
        at Request.self.callback (/usr/local/lib/node_modules/homebridge-loxone-light-switch/node_modules/request/request.js:373:22)
    
        at emitTwo (events.js:100:13)
    
        at Request.emit (events.js:185:7)
    
        at Request.<anonymous> (/usr/local/lib/node_modules/homebridge-loxone-light-switch/node_modules/request/request.js:1318:14)
    
        at emitOne (events.js:95:20)
    
        at Request.emit (events.js:182:7)
    
        at IncomingMessage.<anonymous> (/usr/local/lib/node_modules/homebridge-loxone-light-switch/node_modules/request/request.js:1266:12)
    
        at emitNone (events.js:85:20)

    Kommentar


    • tholle
      tholle kommentierte
      Kommentar bearbeiten
      Ja, glaube ich dir. Aber Authentifizierung definiert sich u.U. durch weit mehr, als nur ein korrektes Passwort. Manchmal z.B.braucht man auch den richtigen User. Und dazu zaehlt bei Linux auch die Schreibweise (gross/klein).
      Nichts fuer ungut.. Hauptsache, der Kram laeuft.

      Gruss,
      tholle

    • Scrati
      Scrati kommentierte
      Kommentar bearbeiten
      Habt ihr eigentlich einen vernünftigen Workaround gefunden um Szenen in Homebridge zu integrieren? Ich habe gestern ein wenig damit rumgespielt, aber es wäre total aufwendig, die notwendigen Stati zu bauen.
      Zuletzt geändert von Scrati; 13.10.2016, 09:15.

    • tholle
      tholle kommentierte
      Kommentar bearbeiten
      Ich bin an dem Thema derzeit nicht mehr dran. Einfach aus Zeitgruenden. Bin vor ca 8 Wochen ins Haus gezogen und haben gefuehlt tausend andere Sachen zu tun. Derzeit muss ich die Musik zum Laufen bringen. Danach kann ich mich wieder mit SIRI beschaeftigen.

      Gruss,
      tholle
  • arne.g
    Azubi
    • 05.02.2016
    • 3

    Hallo @ALL!

    Besten Dank für die genialen Zeilen! Ich habe es heute soweit alles hinbekommen: Temperatur, Licht in Verbindung mit der Loxon. Aber nun stolpern ich darüber, dass ich die Rollos auch gerne mit einbinden möchte. Wie habt ihr das gelöst. Über den "Service" Light? Siri erzählt einem ja dann immer, dass keine Jalousie gefunden wurde :-). Und habt ihr auch Regensensoren eingebunden, sodass Siri auch auf die Frage ob es draußen regnet auch entsprechend antwortet?

    @nightfreak: Wie aufwendig ist die Programmierung eines Plugins? Besten Dank überhaupt - ich nutze deine Plugins!

    Arne

    Kommentar

    • Gast

      Hallo Nightfreak!

      Ich verwende deine plugins und bin begeistert - tolle Arbeit. Ich würde mich gerne in die plugin Programmierung einlesen. Kannst du mir ein paar Links zukommen lassen wo ich die nötigen Infos für eine Plugin Programmierung finden kann?

      Vielen Dank.
      Gerhard

      Kommentar

      • Gast

        Hallo,




        ich habe heute Abend mal die Anleitung von der LoxoneWiki ausprobiert hat auch glaube ich alles gut geklappt mit mit ein paar Änderungen wie es von Muto beschrieben wurde.

        Jetzt wo ich den Letzten Befehl eingegeben habe geht es nicht weiter der CODE wird nicht angezeigt sonder das hier

        Ich hoffe mir kann jemand weiter helfen




        Mit freundlichen Grüßen Sebastian

        Kommentar


        • NetMac
          NetMac kommentierte
          Kommentar bearbeiten
          Mit dem "tail" Befehl lässt du dir nur die letzten 10 Zeilen von der Log Datei anzeigen. In deinem Fall von der Datei "homebridge.log". Somit ist es richtig was passiert. Du kannst die Anzeige mit "strg c" beenden.
      Lädt...