Mal wieder virtuelle Geräte - jetzt aber richtig!

:+1::+1::+1::+1::+1::+1::+1::clap::clap::clap::clap::clap::clap::clap:

:tophat:ab. Tolles Projekt. Vielen Dank @stfnhmplr und @Micha,

2 „Gefällt mir“

Verständnisfrage: muss die id und die node_id beim Anlegen eines Gerätes immer identisch sein?

Nein, stell dir zwei Listen vor: einmal Node- und einmal AttributeID’s. Zähle einfach jeweils die ID’s von 1 an aufwärts. Wenn du bei 2147483647 angekommen bist, sag Bescheid dann müssen wir unser System überdenken :wink:

11 „Gefällt mir“

Man kann sich ja ein System überlegen…

z.B. Node ID immer in 10er Schritten und dazugehörige Attribute IDs dann in 1er Schritten

Node ID 10
Attribute ID 10, 11, 12, 13, 14, 15, usw. 10 Attribute müssten eigentlich reichen

Node ID 20
Attribute ID 20, 21, 22, 23, usw.

4 „Gefällt mir“

Letzte Frage zu dem Thema: muß ich dabei auch zu den Node_ids von meinen Wemos aufpassen?
Diese sind ja direkt im “realen“ homee eingelernt.

Nein, die IDs um die es hier geht, beziehen sich nur auf den virtuellen homee.

2 „Gefällt mir“

Hallo zusammen,

zunächst mal tolle Arbeit! Ich bin auch gerade ein wenig am Spielen und habe zwei virtuelle Geräte angelegt. Leider crasht auch bei mir der homee beim Hinzufügen über die Homee-in-Homee-Funktion.

Die Geräte haben unterschiedliche Node- und Attribute-IDs. Die Logfile sagt lediglich:

2 Nov 20:50:08 - [info] [homee:homee xyz] connected to homee
2 Nov 20:50:53 - [info] [homee:homee xyz] Error: connect ECONNREFUSED 192.168.0.100:7681

Muss man ein ausführlicheres Logging zunächst aktivieren? Ports sind ziemlich sicher keine geblockt. Muss der Benutzer auf dem echten homee, der in Node-Red hinterlegt wird irgendwelche besonderen Rechte (z.b. Admin) haben?

Ich habe es mit dem Adminuser, wie beim alten node, versucht :man_shrugging:t2:

Ich hab als ID für den virtuellen homie nur Zahlen und Großbuchstaben verwendet.

User und PW in der Konfiguration ohne Sonderzeichen.

Damit gings dann bei mir.

Hast du einen neuen User angelegt?
Falls ja, mit welchen Rechten im homee?
Oder muss der hier garnicht angelegt sein?

Nee… einfach ein neuer Name, der nicht auf dem Master homee existiert.

:thinking: Evtl. liegt da mein Problem…
Kann ich aber leider erst morgen testen :frowning:

Läuft Node Red bei dir auch über ioBroker?
Nachdem ich einige Kombinationen von Node- und Attribut- ID’s und ausprobiert habe, glaube ich nicht, dass hier der Fehler liegt. Für alle Versuche habe ich den User mit vollen Berechtigungen genutzt. Wobei der mit den virtuellen Geräten ja nichts zu tun hat, oder?

Hast du mal einen x-beliebigen Nutzer versucht, so wie @medicus07 es oben gerade geschrieben hat?

Für die virtuellen Geräte war es immer ein x-beliebiger. Nur im API-node war es der Admin.
Oben etwas missverständlich von mir :see_no_evil:

Genau so sieht es bei mir auch aus. Geht nur leider nicht. Ich habe zwei Geräte (Profil 15) mit unterschiedlichen Node- und Attribute-IDs. Hat das mal jemand nachgestellt? Node-Red ist direkt installiert, ohne ioBroker.

Bei mir startet der homee immer neu beim hinzufügen der beiden simulierten Geräte. Beide werden unter node red als online angezeigt und im ersten schritt sehe ich auch die Geräte in homee, nach dem auswählen schmiert homee aber ab. Das ist bei mir reproduzierbar. 2 Geräte als switch mit unterschiedlichen node IDs und unterschiedlichen Attribut IDs. Ich weiß momentan auch nicht weiter.

Node red wurde als einziges auf dem Pi installiert.

@stfnhmplr
Jetzt brauche ich Hilfe.
Virtuellen Homee angelegt. Soweit klar.
Virtuelles Gerät… unklar. Licht und sogweiter sehe ich Beispiele.

Ich habe payload.vars.5.value, das ist ein float mit einem Wert. Wie kriege ich da jetzt einen virtuellen Sensor hin, der quasi den Wert liefert? Ich scheitere schon an dem Profil… irgendwie kann ich da keine Vorauswahl finden. Ist das ein Bug oder bin ich blind?

Hallo @simonw,

Grundsätlich musst du mindestens zwei Geräte anlegen mit unterschiedlichen Node id und unterschiedlichen Attributen.

hier hast du mal ein Node für einen Energiemeter.

Achtung das Node ist noch auf der einer vorgänger Version erstellt.

[
    {
        "id": "a323a22e.76e34",
        "type": "homeeDevice",
        "z": "c6d23543.6124f8",
        "homee-sim": "53428ad0.08fca4",
        "name": "Energiemeter",
        "nodeId": "80",
        "profile": "32",
        "attributes": "[{\"id\":80,\"node_id\":80,\"instance\":0,\"minimum\":0,\"maximum\":50000,\"current_value\":1.5,\"target_value\":1.5,\"last_value\":1.5,\"unit\":\"kWh\",\"step_value\":1,\"editable\":0,\"type\":4,\"state\":1,\"last_changed\":1572381987,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":81,\"node_id\":80,\"instance\":0,\"minimum\":0,\"maximum\":6000,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"W\",\"step_value\":0.1,\"editable\":0,\"type\":3,\"state\":1,\"last_changed\":1572452907,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\",\"node\":\"[Circular ~.node]\"},{\"id\":82,\"node_id\":80,\"instance\":0,\"minimum\":0,\"maximum\":50000,\"current_value\":1.5,\"target_value\":1.5,\"last_value\":1.5,\"unit\":\"kWh\",\"step_value\":1,\"editable\":0,\"type\":4,\"state\":1,\"last_changed\":1572381987,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\"},{\"id\":83,\"node_id\":80,\"instance\":0,\"minimum\":0,\"maximum\":6000,\"current_value\":0,\"target_value\":0,\"last_value\":0,\"unit\":\"W\",\"step_value\":0.1,\"editable\":0,\"type\":3,\"state\":1,\"last_changed\":1572452907,\"changed_by\":1,\"changed_by_id\":0,\"based_on\":1,\"data\":\"\",\"node\":\"[Circular ~.node]\"}]",
        "x": 400,
        "y": 700,
        "wires": [
            []
        ]
    },
    {
        "id": "53428ad0.08fca4",
        "type": "homeeSim",
        "z": "",
        "name": "5AB"
    }
]

N’abend :slight_smile:

Super das es homeejs geschafft hat ein NodeRed plugin zu werden, oder gerade dabei ist :slight_smile:
Habe es mir gerade auch ein wenig angeschaut.

Zum Thema Crash beim hinzufügen:
Hier hab ich die Ursache gefunden: und zwar erwartet homee die Attribute als Array, in dem Beispiel von @stfnhmplr ist der Attribute JSON allerdings nur ein Object, es fehlen also die Eckigen Klammern [{ "id":10 ... }] außen rum (wie im Screenshot im Blog zu sehen). Wäre super wenn du das hinzufügen könntest, oder noch besser im Plugin abfangen.
Werde mal am Montag versuchen homee den crash auszutreiben, da war wohl das JSON Schema/Validator nicht streng genug :slight_smile:

Außerdem ist bei mir NodeRed gecrasht wenn ich gar keinen Attribute Json eintrage.

Ansonsten ist das alles ja schonmal vielversprechend :slight_smile:

20 „Gefällt mir“