Ankündigung

Einklappen
Keine Ankündigung bisher.

homebridge-knx 0.3.0 alpha (Apple HomeKit interface)

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

  • MrWichtig
    antwortet
    hi Snowdd,

    liegt wahrscheinlich daran dass ich :

    1.) homebridge ALT
    sudo npm install -g homebridge

    2.) homebridge-knx
    sudo npm install -g homebridge-knx

    und...

    3.) homebridge@BETA
    sudo npm install -g homebridge-knx@beta

    installiert habe :-)

    ich komm schon ganz in durcheinander mit den ganzen homebridge(n)


    wenn ich Dich richtig verstehe brauche ich nur....

    1.) homebridge-knx (lt Boerny's Beschreibung)
    sudo npm install -g homebridge homebridge-knx

    und

    2.) homebridge@BETA
    sudo npm install -g homebridge-knx@beta


    RICHTIG?


    ok...dann wieder zurück zum Start...ich setze noch einmal alles sauber auf....ist eh schon das 24. mal :-) :-) :-)

    Einen Kommentar schreiben:


  • snowdd
    antwortet
    Ooops, da sollte keine config.json drin sein. Da muss ich mal gucken was da schief gelaufen ist.

    DA ist keine drin :
    https://github.com/snowdd1/homebridg...e/v0.3.0-beta9

    Wo hast Du die her? Abgesehen davon werden die "platform": "KNX" und folgende Einträge von homebridge-knx v0.3 ignoriert. Irgendwo scheint bei Dir noch eine halte homebridge aktiv zu sein!

    Einen Kommentar schreiben:


  • MrWichtig
    antwortet
    snowdd

    ich habe Die Standard knx_config.json vom besagten Verzeichnis nach var/homebridge kopiert.

    da waren ein paar Testgeräte enthalten.

    .... und diese paar müsste ich ja auch sehen in Eve?


    ...auch die config.json ist die Standard drinn die bei der Installation reingelegt wird:
    HTML-Code:
    {
        "bridge": {
            "name": "Homebridge",
            "username": "CC:22:3D:E3:CE:31",
            "port": 51826,
            "pin": "031-45-154"
         },
    
        "description": "This is an example configuration file for KNX platform shim",
        "hint": "Always paste into jsonlint.com validation page before starting your homebridge, saves a lot of frustration",
        "hint2": "Replace all group addresses by current addresses of your installation, these are arbitrary examples!",
        "hint3": "For valid services and their characteristics have a look at the KNX.md file in folder platforms!",
        "hint99": "Everything that is named description or hint is not used by homebridge but decriptive only, you may change or remove at will",
        "platforms": [
            {
                "platform": "KNX",
                "name": "KNX",
                "knxd_ip": "192.168.1.200",
                "knxd_port": 6720,
                "knxd_do_not_read_set_groups": true,
                "hint_knxd_do_not_read_set_groups": "true if homebridge must not send read requests to Set addresses",
                "accessories": [
                    {
                        "description": "Only generic type knxdevice is supported, all previous knx types have been merged into that.",
                        "name": "Living Room North Lamp",
                        "services": [
                            {
                                "type": "Lightbulb",
                                "description": "iOS8 Lightbulb type, supports On (Switch) and Brightness",
                                "name": "Living Room North Lamp",
                                "On": {
                                    "Set": "1/1/6",
                                    "Listen": [
                                        "1/1/63"
                                     ]
                                 },
    
                                "Brightness": {
                                    "Set": "1/1/62",
                                    "Listen": [
                                        "1/1/64"
                                     ]
                                 }
                             }
                         ],
    
                        "services-description": "Services is an array, you CAN have multiple service types in one accessory, though it is not fully supported in many iOS HK apps, such as EVE and myTouchHome"
                     },
    
                    {
                        "name": "Office Temperature",
                        "description": "iOS8.4.1 TemperatureSensor type, supports CurrentTemperature",
                        "services": [
                            {
                                "type": "TemperatureSensor",
                                "name": "Raumtemperatur",
                                "CurrentTemperature": {
                                    "Listen": "3/3/44"
                                 }
                             }
                         ]
                     },


    ....und so sieht die Standard knx_config.json aus

    HTML-Code:
    {
        "platform": "KNX",
        "name": "KNX",
        "knxd_ip": "192.168.1.201",
        "knxd_port": 6720,
        "Devices": [
            {
                "DeviceName": "Arbeitszimmerlampe",
                "Services": [
                    {
                        "ServiceType": "Lightbulb",
                        "ServiceName": "Licht Büro",
                        "Characteristics": [
                            {
                                "Type": "On",
                                "Set": [
                                    "2/0/3"
                                ],
                                "Listen": [
                                    "1/3/5"
                                ]
                            }
                        ]
                    }
                ]
            },
            {
                "DeviceName": "Arbeitszimmerrollo",
                "Services": [
                    {
                        "ServiceType": "WindowCovering",
                        "Handler": "GiraJalousieActuator",
                        "ServiceName": "Büro-Rollo",
                        "Characteristics": [
                            {
                                "Type": "TargetPosition",
                                "Set": [
                                    "2/3/46"
                                ],
                                "DPT": "DPT5"
                            },
                            {
                                "Type": "CurrentPosition",
                                "Listen": [
                                    "2/3/26"
                                ]
                            },
                            {
                                "Type": "PositionState"
                            }
                        ],
                        "KNXObjects": [
                            {
                                "Type": "ShutterMove",
                                "Listen": "2/3/6",
                                "DPT": "DPT1"
                            }
                        ],
                        "KNXReadRequests": [
                            "2/3/26",
                            "2/3/46"
                        ],
                        "LocalConstants": {
                            "SomeVariable_notUsedHere": "SomeValue",
                            "OtherBlinds_notUsedHere": "OfficeShutter"
                        }
                    }
                ]
            },
                    {
                "DeviceName": "TestDevice",
                "hint": "Sample to show characteristics without KNX addresses",
                "Services": [
                    {
                        "ServiceType": "LockMechanism",
                        "Handler": "DummyHandler",
                        "ServiceName": "Türschloss",
                        "Characteristics": [
                            {
                                "Type": "LockCurrentState"
                            },
                            {
                                "Type": "LockTargetState"
                            }
                        ]
                    }
                ]
            }
        ],
        "GroupAddresses": []

    lg
    Zuletzt geändert von MrWichtig; 06.11.2016, 18:11.

    Einen Kommentar schreiben:


  • DosOrDie
    antwortet
    Zitat von misc2000 Beitrag anzeigen

    Hallo DosOrDie,
    kannst du mal etwas genau schreiben was dir in meinem Handler noch fehlt bzw. wie dein Schloss am Garagentor über KNX angesprochen wird und welche Rückmeldungen es gibt.
    Dann kann ich mal schauen ob ich das in meinen Handler als Option aufnehmen kann.

    misc2000
    Hallo misc2000,

    das währ natürlich super wenn du deinen Handler no so erweitern könntest

    Her mal die Config im alten format als Beispiel:
    Code:
    {
                        "description": "Funktioniert mit eigem an Logik im HS ",
                        "name": "Garagentor",
                        "services": [
                            {
                                "type": "GarageDoorOpener",
                                "description": "iOS9 Garage",
                                "name": "Garagentor",
                                "CurrentDoorState": {
                                    "Listen": "11/2/51"
                                },
                                "TargetDoorState": {
                                    "Set": "11/2/52",
                                    "Listen": [
                                        "11/2/53"
                                    ]
                                },
                                "LockCurrentState": {
                                    "Listen": "11/2/50"
                                },
                                "LockTargetState": {
                                    "Set": "11/2/5R",
                                     "Listen": [
                                        "11/2/5R"
                                    ]
                                }
                            }
                        ]
                    },
    Meine Objekte funktionieren genau anders herum als Hombridge das will. Deswegen invertiere ich LockCurrentState im HS (glaube "R" ging nicht da 1byte Wert), LockTargetState wird als DPT1 verarbeitet, deswegen gings hier mit "R"

    Währe schon cool wenn LockCurrentState und LockTargetState im Garagentor Service mit drinnen sind, da das ganze in der home App dann sauber gruppiert ist und die Push Mitteilungen bei verschlossenem Tor Funktionieren


    gruß

    Dominik
    Zuletzt geändert von DosOrDie; 06.11.2016, 12:04.

    Einen Kommentar schreiben:


  • snowdd
    antwortet
    Hallo MrWichtig
    Was hast Du denn noch in Deiner config.json drin?

    Die sollte doch jetzt ziemlich leer sein, so ungefähr wie diese:
    Code:
    {
     "bridge": {
      "name": "Homebridge",
      "username": "CC:22:3D:E3:CE:30",
      "port": 51826,
      "pin": "031-45-154"
     },
     "description": "This is an example configuration file for KNX platform shim",
     "platforms": [
     ],
     "accessories": [
    
     ]
    }
    Wenn dann Deine knx_config.json auch noch recht leer ist, sollte es auch in Home (etc.) entsprechend leer sein.

    Gruß

    Einen Kommentar schreiben:


  • MrWichtig
    antwortet
    Hallo,

    ich habe mich bis jetzt herumgespielt, einiges ausprobiert und möchte kurz meinen Stand mitteilen und hoffe auf Euer Feedback dazu:

    1.)
    Als erstes habe ich wieder eine saubere Installation (Updates, homebridge, homebridge-knx (noch nicht BETA Version), knxd, etc....) hergestellt und alle Dienste laufen soweit

    - ich kann mich Verbinden und auch ganz normal steuern
    - im Eve sehe ich auch die homebridge und es klappt alles


    2.) (hier hoffe ich jetzt auch auf Euer Feedback ob das so passt bzw. was ich noch machen muss)

    folgende Tätigkeiten habe ich durchgeführt:

    - homebridge-knx Beta Version folgendermaßen installiert (wurde auch IMHO korrekt installiert)
    npm install -g homebridge-knx@beta


    __________________________________________________ _____________________________
    - statehood@4.0.1 node_modules/homebridge-knx/node_modules/hapi/node_modules/statehood
    - hapi@13.5.3 node_modules/homebridge-knx/node_modules/hapi
    /usr/lib
    └─┬ homebridge-knx@0.3.0-beta9
    └─┬ debug@2.2.0
    └── ms@0.7.1


    __________________________________________________ ____________________________

    - danach die knx_config.json von Ordner (/usr/lib/node_modules/homebridge-knx) nach Ordner (/var/homebridge) kopiert und auch die knxp_ip von meinem Raspi darin geändert....also quasi gleich wie in der config.json


    Trotzdem werden mir in EVE nur die Geräte der config.json angezeigt????

    wo habe ich da noch einen Denkfehler bzw. was muss ich noch machen, dass mir auch oder nur die Geräte der knx_config.json angezeigt werden???


    bin ich noch weiter weg vom Ziel als bisher gedacht?


    Danke u. lg

    Einen Kommentar schreiben:


  • MrWichtig
    antwortet
    Hi,

    OK...sorry wenn ich jetzt etwas blöd frage (ich versuche gerade mein Puzzle zusammen zu basteln :-) ) aber wenn ich das richtig verstehe benötige ich die ......

    1.) homebridge - Intsallation lt. Boerny's Anleitung (quasi was bisher auch bereits immer erforderlich war)

    mit Befehl installiert:
    sudo npm install -g homebridge homebridge-knx


    2.) homebridge-knx Installation:

    sudo npm install -g homebridge-knx@beta ???? wäre das so richtig bzw. kann ich das ebenfalls ONLINE Installieren od. muss ich mir hier zuerst die Source von Snowdd runterladen und lokal installieren? Wenn Lokal, wie gehe ich da vor? wohin muss ich was kopieren (mittels FTP)?


    ....somit sind beide *.json Dateien (config.json und knx-config.json) im gleichen Verzeichnis und muss dann aber nur mehr eigentlich die knx-config.json bearbeiten mit den neuen Parametern?!


    ich glaube mir fehlt nicht mehr viel um auch die 0.3.x Homebridge zu laufen zu bringen :-)

    Danke Euch!

    lg



    Einen Kommentar schreiben:


  • misc2000
    antwortet
    Hallo MrWichtig,
    ja du kannst gleich die beta anstelle der 2.x installieren.
    Und ja du brauchst weiterhin homebridge + homebridge-knx
    Und du brauchst ab der 0.3 2 .json Dateien.

    Wobei in der alten jetzt nichts mehr zu KNX eingetragen werden muss.
    ​​​​​​​
    Ein Beispiel zum Inhalt zur config.json findest du hier: https://github.com/snowdd1/homebridg...le-config.json
    Und eine Beschreibung des Formats der neuen knx_congig.json hier: https://github.com/snowdd1/homebridg...config.json.md

    misc2000

    Einen Kommentar schreiben:


  • MrWichtig
    antwortet
    Hi,

    ok den Befehl habe für die homebridge-knx habe ich jetzt einmal gefunden :-)

    npm install homebridge-knx@beta

    wenn ich das ganze aber so richtig jetzt noch einmal durchdenke mit boerny's installationsanleitung dann brauche ich ja gar nicht mehr die alte homebridge (0.2.x) installiert und muss eigentlich statt dem letzten Befehl nur die homebridge-knx (beta) installieren, oder?

    SW Komponenten installieren[CODE]
    HTML-Code:
      curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
    HTML-Code:
    sudo apt-get install -y nodejs libavahi-compat-libdnssd-dev git-core build-essential cdbs autoconf
    HTML-Code:
    suod apt-get install -y automake libtool libsystemd-dev libsystemd-daemon-dev dh-systemd base-files
    HTML-Code:
    sudo npm install -g homebridge homebridge-knx
    statt dieser Zeile dann einfach:
    npm install homebridge-knx@beta eingeben?!

    richtig?

    benötige ich eigentlich homebridge + homebridge-knx ???? sprich config.json + knx_congig.json??
    Zuletzt geändert von MrWichtig; 05.11.2016, 16:28.

    Einen Kommentar schreiben:


  • MrWichtig
    antwortet
    HI,

    ich merke schon, ein paar Tage nicht an der Sache zu bleiben ist fast schon unmöglich um nachher noch mitzukommen :-)

    ich habe probiert (nachdem die homebridge bisher nach boernys Anleitung funktioniert) die homebridge-knx zu installieren aber irgendwie bekomme ich das mit den Befehlen nicht ganz hin?!

    was genau muss ich denn eingeben und muss ich dabei in ein bestimmtes Verzeichnis vorher schon gewechselt haben?

    Zitat von snowdd Beitrag anzeigen
    Hab's gefunden.

    Ihr könnt nun boernys Anleitung auch für die BETA Versionen verwenden. Die Installation erfolgt mit
    Code:
    pi@homebridge-dev:~/z_test $ npm install homebridge-knx@beta
    homebridge-knx@0.3.0-beta2 ../node_modules/homebridge-knx
    ├── eibd@0.3.5
    └── debug@2.2.0 (ms@0.7.1)
    pi@homebridge-dev:~/z_test $

    Einen Kommentar schreiben:


  • snowdd
    antwortet
    misc2000 ich weiß, das Umstellen ist blöd - aber leider führt kein Weg dran vorbei, ansonsten wäre ewig ein hard-codiertes Mapping in homebridge-knx nötig gewesen, und ehrlich, solange ich damit nicht meinen Lebensunterhalt bestreiten will und kann, kann ich das nicht dauerhaft leisten. Ich habe ja gesehen wie das bei thinka nun aussieht, das Ding basiert ja noch auf einer alten Version - die haben immer noch nur 7 verschiedene Services in der Software - und homebridge-knx kann jetzt (theoretisch) alle, die im hap-nodejs vorhanden sind (i.d.R. alle die in HomeKit existieren).

    Ich habe mein ganzes Haus einfach neu aufgesetzt (und dabei auch noch ein paar Fehlzuweisungen korrigiert :-) und dafür dank copy & paste etwa 3h gebraucht - Split screen ETS und notepad++ (highly recommended! Da kann man in JSONs einfach mit Alt-6, Alt-4 die Objekte schön einfalten!)

    Gruß
    Raoul


    Einen Kommentar schreiben:


  • misc2000
    antwortet
    Zitat von snowdd Beitrag anzeigen

    JavaScript reicht!

    Und Vielleicht ist Michael ja so nett und baut Dir was, misc2000 ???
    Hallo DosOrDie,
    kannst du mal etwas genau schreiben was dir in meinem Handler noch fehlt bzw. wie dein Schloss am Garagentor über KNX angesprochen wird und welche Rückmeldungen es gibt.
    Dann kann ich mal schauen ob ich das in meinen Handler als Option aufnehmen kann.
    Oder vielleicht passt ja auch mein AbusDoorLock Handler den ich mir geschrieben habe.

    Hallo Raoul,
    ich habe heute auch mal angefangen meine produktive Konfig vom alten Format für die 0.3 Beta umzuschreiben.
    Leider ist das sehr zeitaufwändig da ich 127 services (2500+ Zeilen) in der Datei habe.
    Habe viel mit suchen und ersetzen gearbeitet bin aber noch lange nicht fertig...

    misc2000

    Einen Kommentar schreiben:


  • SeatSLF
    antwortet
    ich muss mal Zeit finden, es auf meinem anderen Raspi zu installieren, nur die Zeit ist momentan das Problem

    Einen Kommentar schreiben:


  • snowdd
    antwortet
    Das wird so langsam mein persönliches Blog...

    Habe heute die homebridge-knx 0.3.0 Beta 9 mit einer über 105kbyte großen Konfigurationsdatei in Betrieb genommen, nachdem es schon letzte Woche mit nur wenigen Geräten in Betrieb gegangen ist. Dabei hatte ich ja schon noch ein paar Fehler gefunden und ein paar Verbesserungen eingebaut.

    Damit ist die Beta 9 nun der Release candidate 0 für die nächste stabile Version!

    Ein paar Statistiken zu meiner Installation:
    - Bisher nur Licht, Jalousien, Fenster- und Türkontakte, Ist-Temperatur vom RTR, Markise (als WindowCovering verkleidet)
    - macht 119 "Services", 199 "Characteristics", 369 GAs
    - i.d.R. habe ich ein Sammelgerät (device) pro Raum verwendet
    - knx_config hat nun 2933 Zeilen.
    Zuletzt geändert von snowdd; 04.11.2016, 22:03. Grund: Typos und Statistik

    Einen Kommentar schreiben:


  • snowdd
    antwortet
    Zitat von DosOrDie Beitrag anzeigen

    Hallo Raoul,

    genau da habe ich auch mit den KNXReadRequests gemeint. Natürlich sollen die nur beim HB Start abgerufen werden. Allerdings funzt das bei mir nur bei Add-Ins.
    Hier mal ein Beispiel wo nichts abgefragt wird beim Start...
    Hab ich einen Fehler drin?

    Code:
     {
    "DeviceName": "Büro Lampe",
    "Services": [
    {
    "ServiceType": "Lightbulb",
    "ServiceName": "Büro Lampe",
    "Characteristics": [
    {
    "Type": "On",
    "Set": [
    "1/1/11"
    ],
    "Listen": [
    "1/3/10"
    ],
    "DPT": "DPT1"
    },
    {
    "Type": "Brightness",
    "Set": [
    "1/2/11"
    ],
    "Listen": [
    "1/3/11"
    ],
    "DPT": "DPT5.001"
    }
    ],
    "subtype": "SUB_12389a71-f76f-4507-bc00-6c2c0b5fdc98"
    }
    ],
    "KNXReadRequests": [
    "1/3/10",
    "1/3/11"
    ],
    "UUID": "5a1fd0c7-0012-4046-aa67-1f0a56469c5e"
    },
    Hallo Dominik, die KNXReadRequests gehören zum Service, nicht zum Device, daher eine Klammer früher! Vor dem "subtype" wäre richtig!
    Da wo sie jetz stehen werden sie einfach ignoriert...
    Raoul

    PS: Sorry im Reply geht die Formatierung kaputt.
    Zuletzt geändert von snowdd; 04.11.2016, 16:26. Grund: PS: Sorry im Reply geht die Formatierung kaputt.

    Einen Kommentar schreiben:

Lädt...
X