Versionen inkompatibel (homee in homee)

Wer sich wundert, warum ich gerade zwei meiner Posts gelöscht habe:
Offenbar habe ich mich beim Anmelden meines virtuellen Homees zu blöd angestellt :face_with_peeking_eye: . Zwischenzeitlich funktioniert es auch mit der orginal vhih-ESP32 lib :grinning:. Natürlich mit neuem Versionsstring.

Wer nicht lange selber den String ändern möchte wird bei meinem Fork der Original-Lib fündig:

Achtung, Branch „feature/stabilityImprovements“ auswählen!

Und wer mit neueren Libs im Unterbau arbeiten will, der kann auch folgenden Branch testen:
feature/new_ESPAsyncWebServer
Aber Achtung: Bisher nicht größer getestet und noch gar nicht für den ESP8266

2 „Gefällt mir“

Da hier explizit nach weiteren Node Red Usern gefragt wurde, trage ich mal meine Story bei :wink:
Bei mir läuft IOBroker mit Nodered, um das Zeug anbinden zu können, für das es Homee-seitig keine Anbindungen gibt (PV-Speicher, Wallbox, alte Homematic-Geräte, die in FHEM wohnen etc.).
Ich bekam meinen Braincube V2 mit V2.41.1 und gab dem Genörgel nach und machte das Update auf 2.41.2. Als ich dann meinen NR vhomee hinzufügen wollte, stieß ich auf die Probleme, die hier im Thread mannigfaltig berichtet wurden. Meine Lösung zu dieser Zeit: Backup, Downgrade auf 2.41.1, Backup zurückfahren und Geräte hinzufügen. Dann konnte ich wieder auf V2.41.2 aktualisieren und der vhomee war meinem Homee weiterhin bekannt und ich konnte neue NR Geräte durch Klick direkt auf Schritt 2b des Dialogs hinzufügen.
Jetzt nach dem Update auf V2.41.3 ist die Erinnerung an den vhomee leider dahin und ein neuer Verbindungsversuch scheitert an den angeblich nicht passenden Versionen. Ich habe die ganzen Versionen durchgespielt, die @Andy75 hier auch probiert und geschildert hat. Leider funktionierte keine davon bei mir.
Was allerdings funktioniert, ist IP-Adresse statt HomeeID. Damit klappt es sofort (Versionen des Cubes und vhomee gleichlautend). Insofern läuft es bei mir mit diesem Workaround, aber der Bug ist damit ja leider nicht weg…

1 „Gefällt mir“

Zu früh gefreut. Zwar konnte ich einmal mit diesem Hack verbinden und die ganze Gerätelist aus NR sehen und die neuen Geräte dann einbinden, aber nur kurze Zeit danach lieferten die Geräte dann schon keine korrekten Werte mehr und die Verbindung war dahin. Nochmals mittels IP Adresse verbinden funktionierte nicht. Also werde ich morgen dann wohl nolens volens auf 2.41.1 zurück gehen müssen…

Den Versuch mit der homee-ID muss ich noch machen. Weiß aber leider nicht, wann ich dazu komme.

Außerdem habe ich den Verdacht, dass sich homee anders verhält wenn ein virtueller homee schon mal angemeldet war.
Z.B. habe ich Probleme ihn zu verbinden, wenn ich beim zweiten Mal einen anderen Usernamen / Passwort verwende. Weiß jemand, wie man homee die virtuellen homees komplett vergessen lassen kann? (außer Rücksetzen auf Werkseinstellungen)

Ich auch, aber ich verfolge das nicht weiter.

So ist das immer mit den nicht öffentlich vom Hersteller dokumentierten Schnittstellen. Irgendwann geht das schief.

1 „Gefällt mir“

Ich habe es auch mit der IP versucht. Klappt nicht.

Ich habe da vor dieser Problematik schon damit rum gespielt bzw. rum spielen müssen weil mein NodeRed und Homee nicht die besten Freunde sind. Und mit der IP ist die Wahrscheinlichkeit höher das es klappt.

Wenn homee zu dem Punkt kommt, dass es wirklich nicht mehr geht bin ich weg …

Ich hoffe, dass es nicht so weit kommt, denn ich mag die Würfel eigentlich und es steckt auch einiges an Arbeit drin.

also mein Homee hat mich heute Abend knapp zwei Stunden und einige graue Haare gekostet: ESP32 programmiert mit einer IP und einem Namen die bei mir sicher noch kein virtueller homee hatte. Vor dem Verbindungsversuch den echten homee noch mal neu gestartet. Der Erfolg: gleich NULL. Keine Verbindung weder per Namen noch per IP - Immer nur Verbindungsfehler (kein Versions-Konflikt). Nach x Versuchen, anderer ESP Firmware, etc. pp. aber eigentlich ohne wirkliche Änderung ging es dann - und zwar sowohl mit dem Namen als auch mit der IP. Keine Ahnung was das soll … aber Spaß macht sowas echt nicht.

1 „Gefällt mir“

Ich habe
Mir die Settings der verschiedenen versionen mal angeschaut und hier gibt es einige Änderungen. Ich werde mal eine Settings auf den Stand der aktuelle Version setzen und schauen was da dann passiert.

1 „Gefällt mir“

Das ist alles etwas mysteriös oder eher random…
Ich wollte ja heute eigentlich auf V2.41.1 zurückgehen, hatte dann aber mein Backup aus der vergangenen Nacht auf die aktuelle Installation mit V2.41.3 zurückgespielt und zu meiner großen Überraschung füllten sich die Geräte dann auf einmal wieder mit den aktuellen, aus Nodered via vhomee gespeisten Daten. Auch wurde ein in NR gelöschtes Gerät als nicht mehr vorhanden gekennzeichnet und – Surprise, Surprise!!! – ließ sich auf einmal wieder direkt Schritt 2b beim Geräte des vhomee verbinden ausführen. Nach dem Restore des Backups kannten sich mein Homee und Nodered auf einmal wieder. Dubios…
Sei es drum. Ich fasse es jetzt erst einmal nicht mehr an.
Was ich aber nebenbei noch gemerkt habe: Wenn ich einen Bock in einem Node habe (ungültiges Javascript z. B.) mit einem roten Dreieck an dem Node, dann ist Homee nicht in der Lage, die Geräteliste (Schritt 2b) vom vhomee zu bekommen. Erst nachdem dort alle Nodes wieder gefixt waren, kam die Geräteliste wieder in Homee rein…

Ich denke ich hab den Fehler gefunden wenn es mal jemand ausprobieren möchte dann mal folgende Datei anpassen.

virtualHomee.js bei Zeile 208 folgendes einsetzen
vorher

+ '        "my_version": "'}${version}" ,`

nachher

+ '        "my_version":  "2.41.3+46ad073c",'

Vorher war es so angelegt das die gesendet Version vom Original homee übernommen wurde und dann an homee zurück gesendet.
Das scheint aktuell etwas zu klemmen daher habe ich das mal Hardcodiert und damit klappt es.

Bitte mal gegenchecken damit ich das bei GitHub als Änderung anregen kann.

5 „Gefällt mir“

Bin dem nochmal etwas tiefer nachgegangen und das Problem liegt an der Behandlung des + Zeichen innerhalb des Versionsnummer. Dadurch wird der String aufgeteilt und mit einem Leerzeichen versehen was natürlich dann zu einer falschen Version führt. Das sollte also erstmal die Lösung sein für das Problem.

Edit

Das liegt an der Art wie die Websocketnachricht im parse() behandelt wird. Da wird aus dem ‚+‘ ein Leerzeichen gemacht und schon hängt das ganze.

Node Red Fork

Edit:
Habe die Settings.js jetzt auch noch angepasst und somit klappt es jetzt auch mit dem anlernen wieder. Die Hardcodierung habe ich entfernt und bei mir am System getestet. Es sind also zwei Stellen wo hier gecheckt wird ob es passt einmal in den Settings und einmal der compatibility_check beim Abruf der Nodeliste.

10 „Gefällt mir“

Hat es von den Betroffenen mal jemand getestete?

Bin erst am Wochenende wieder bei meinem Homee. Werde es dann ausprobieren

1 „Gefällt mir“

Hallo Micha,

ich habe deine Änderungen in meine Testinstallation übernommen. Es hat dann auf Anhieb mit der iOS App funktioniert, den neuen virtuellen Homee einzubinden.

Sowohl mit IP-Addresse als auch per UID.

Vielen Dank für deinen Einsatz.

4 „Gefällt mir“

Danke für das Feedback, freut mich das es dann wieder läuft. Dann muss ich das nur noch im Orginal Repro ändern lassen.

5 „Gefällt mir“

Vielen Dank für deine Mühen.
Ich hatte es gestern zwischen Tür und Angel getestet, habe aber beim Neustart von NodeRed die Meldung bekommen „Flows gestoppt aufgrund fehlender Node-Typen > virtualHomee“

Heute habe ich etwas mehr Zeit, bekomme es aber nicht hin. Nach Neustart NodeRed bekomme ich immer die gleiche Meldung (s.o.).
Irgendwas mache ich falsch…
Die Zeile 208 in meiner virtualHomee.js sieht so aus wie auch bei dir im obigen Post:

              + '        "my_version": "'}${version}" ,`

Was muss ich da eintragen?
Weder deine Codezeile mit der Versionsnummer noch deine Änderung aus dem github-Fork funktioniert bei mir.
Sorry für die blöde Nachfrage…

Nimm aus meinem Code die Settings und die virtualhomee.js dann geht es


So sieht das jetzt aus in der virtualjomee.js

2 „Gefällt mir“

Das deutet auf einen Fehler im Code hin. Da scheinen Syntaxfehler vorhanden zu sein.

2 „Gefällt mir“

DU BIST MEIN HELD :slight_smile:

Ein ganz ganz großes Dankeschön von mir.
Es funktioniert :+1:

Ja, lag sicherlich daran, dass ich nur die Zeile 208 bearbeitet habe. Nach Übernahme des kompletten Inhalts klappt es auf Anhieb. Alle Geräte sind wieder da.

Nochmals ganz herzlichen Dank!!

4 „Gefällt mir“