Versionen inkompatibel (homee in homee)

Ich habe das Format nochmal bei Stefan auf GitHub geändert. Muss dann nur nochmal freigegeben werden.

4 „Gefällt mir“

Rückfrage:
Reicht es nicht aus, node-red zu stoppen, die Datei zu ändern und dann neu starten?

Guten Abend,

wir haben es schon aufgenommen und werden bei dem nächsten Release drauf achten ob es für euch dann nicht im Weg steht. :muscle:

5 „Gefällt mir“

:sweat_smile: das heißt jetzt was?
Bleibt es so oder wird es wieder auf den alten Stand geändert?

4 „Gefällt mir“

Ihr solltet es einfach so lassen oder beide Versionen anbieten. Oder einfach nur den String splitten und die Werte vor dem + oder Leerzeichen vergleichen.
Ihr könnt auch nach 6 Zeichen den String trennen und dann vergleichen ob die Version passt. Dann muss weder der eine noch der andere was ändern.

8 „Gefällt mir“

Vielen Dank, dass ihr das so fleißig verfolgt.

Könntest du @Andy75, mal bitte kurz darlegen, was du genau geändert hast?
Ich habe:

  • Das Format in der settings.js entsprechend geändert / gespeichert
  • node red + homee neu gestartet
  • mit „altem“ virt. homee sowie einem neu angelegten die Verbindung getestet
  • (auf dem physischen homee läuft die 2.41.3)

Ergebnis: Ich bekomme immer noch die Fehlermeldung, dass die Versionen inkompatibel sind, wenn ich den virt. homee verbinden möchte. :thinking:
Wo habe ich einen Fehler drin?
Meine settings.js:

Amodule.exports = class Settings {
  constructor(homeeId) {
    this.address = '';
    this.city = '';
    this.zip = 11111;
    this.state = 'BW';
    this.latitude = '';
    this.longitude = '';
    this.country = 'Germany';
    this.language = 'de';
    this.wlan_dhcp = 1;
    this.remote_access = 1;
    this.beta = 0;
    this.webhooks_key = 'WEBHOOKKEY';
    this.automatic_location_detection = 0;
    this.polling_interval = 60;
    this.timezone = 'Europe%2FBerlin';
    this.enable_analytics = 0;
    this.wlan_enabled = 1;
    this.wlan_ip_address = '192.168.178.222';
    this.wlan_ssid = 'homeeWifi';
    this.wlan_mode = 2;
    this.online = 0;
    this.lan_enabled = 1;
    this.available_ssids = ['homeeWifi'];
    this.time = 1562707105;
    this.civil_time = '2019-07-09 23:18:25';
    this.version = '2.41.3+46ad073c';
    this.uid = homeeId;
    this.gateway_id = 1313337;
    this.cubes = [];
    this.extensions = {
      weather: {
        enabled: 1,
      },
      amazon_alexa: {
        enabled: 0,
      },
      google_assistant: {
        enabled: 0,
        syncing: 0,
      },
      apple_homekit: {
        enabled: 0,
        paired: 0,
        config_number: 1,
        syncing: 0,
      },
      ftp: {
        enabled: 0,
      },
      history: {
        enabled: 0,
      },
      backup: {
        enabled: 0,
      },
    };
  }
};

hallo @lumpi

wie oben schon geschrieben habe, bastel ich mir meist ESP32 basierte Virtuelle Homees mit einem oder mehreren Geräten. Von NodeRed habe ich keine Ahnung.
Ich die C++ Lib an entsprechender Stelle geändert und zwar folgendermaßen:

virtualHomee::virtualHomee()
    : server(7681),
      ws("/connection")
{
    String mac = WiFi.macAddress();
    mac.replace(":", "");
    this->homeeId = mac;
    //this->version = "2.25.0 (ed9c50)";
    this->version = "2.41.2+0fd65df2";
    this->nds.AddNode(new node(-1, 1, "homee"));

    initializeWebServer();
    initializeWebsocketServer();
    server.addHandler(&ws);
}

Ich habe das zwei mal hin und her probiert und jedes mal wenn ich den neuen Versionsstring verwendet habe ging es, beim alten String ging es nicht. Zu dem Zeitpunkt hatte ich noch die 2.41.2 installiert. Für einen ersten Test war das Beweis genug … ich hoffe, ich habe nicht zu früh gejubelt. Heute komme ich leider nicht mehr zum weiteren Testen.

Ich danke dir für dein Feedback. :+1:

Hat wer von den NodeRed Nutzern hier das schon testen können und könnte sein Ergebnis hier kundtun?

Gruß,
Lumpi

Hi @lumpi,

die Fork von Micha ist noch nicht integriert und ich hab es nicht geschafft, die Fork individuell in NR zu installieren.

:coffee:

1 „Gefällt mir“

Habe es gerade mal getestet und die Schreibweise in der settings.js angepasst. Bei mir klappts nicht.

Hi,

ich habe eben mein Homee auf 2.41.3 aktualisiert und die Version in der lib/settings.js auf

2.41.2+0fd65df2

in meiner Installation angepasst und meinen Node Red Docker Container neu gestartet. Damit kann ich neu angelegte virtuelle Geräte über eine vorhandene Verbindung hinzufügen.

Wann tritt bei euch das Problem auf?

Mein Vorgehen hatte ich oben beschrieben.
Die Fehlermeldung, dass die Versionen inkompatibel sind (min. 2.25 wird vorausgesetzt, s. Beitrag #1) kommt dann, wenn ich in der homee-App die Daten des virt. homee (ID, Benutername, PW) eingebe und ihn verbinden möchte.

Hi,

danke für die Klarstellung.

Habe es gerade mit meiner Test-NodeRed Installation probiert, leider bekomme ich dann auch die selbe Fehlermeldung, selbst mit der Anpassung.

1 „Gefällt mir“

Wenn du zwei Node red Systeme am Start hast dann mach doch mal ein get:All auf den einen und schau was dort in der Settings steht.

1 „Gefällt mir“

So, kleine abendliche Versuchsreihe mit Homee v2.41.3 und der ESP32 lib. Verbindung jeweils über die IP.

  1. this->version = "2.41.2+0fd65df2"; → virtueller homee wird erkannt
  2. this->version = "2.41.3+46ad073c"; → virtueller homee wird erkannt
  3. this->version = "2.25.0+ed9c50"; → virtueller homee wird erkannt
  4. this->version = "2.25.0+000000"; → virtueller homee wird erkannt
  5. this->version = "2.25.0 (ed9c50)"; → verbinden fehlgeschlagen
  6. homee neustart
  7. this->version = "2.25.0 (ed9c50)"; → verbinden fehlgeschlagen
  8. vhih IP geändert
  9. this->version = "2.25.0 (ed9c50)"; → Versionen inkompatibel
  10. this->version = "2.25.0+000000"; → virtueller homee wird erkannt
  11. this->version = "2.25.0 (ed9c50)"; → Versionen inkompatibel
  12. this->version = "2.25.0+000000"; → virtueller homee wird erkannt
  13. this->version = "2.41.3+46ad073c"; → virtueller homee wird erkannt
  14. this->version = "2.41.3+00000000"; → virtueller homee wird erkannt
  15. this->version = "0.00.0+00000000"; → Versionen inkompatibel

Anmerkung: Ich habe nur überprüft, ob der Virtuelle homee erkannt wurde. Ein paar mal habe ich auch das angezeigte Gerät erfolgreich eingebunden. Weiterführende Tests habe ich aber nicht gemacht.

4 „Gefällt mir“

Hallo Micha,

danke für den Tipp. Auf meiner Produktiv-Installation habe ich node red in einem Docker Container installiert und ich weiß, wo die Daten liegen. Da bekomme ich die Änderung der Version auch über get all.

Auf meiner Test-Installation mit iobroker habe ich bisher anscheinend nicht die passende settings.js gefunden. Jedenfalls liefert da der virtuelle Homee noch die 2.25 zurück. Und da klappt es natürlich nicht.

Ich weiß nicht was bei IoBroker NodeRed Installation anders ist. Die Setting Dateien haben keine Auswirkung.

Update:
Ich habe auf dem Test NodeRed die Palette node-red-contrib-homee von 0.12.2 auf die Version 0.13 meiner anderen Produktivinstallation gebracht. Jetzt hat die Anpassung der settings.js auch eine Auswirkung auf get:all.

{"all":{"nodes":[{"name":"homee","id":-1,"profile":1,"image":"default","favorite":0,"order":-1,"protocol":1,"routing":1,"state":1,"state_changed":12345,"added":12345,"history":0,"cube_type":1,"note":"","services":0,"phonetic_name":"","owner":0,"denied_user_ids":[],"attributes":[]},{"name":"random","id":500,"profile":18,"image":"default","favorite":0,"order":500,"protocol":1,"routing":1,"state":1,"state_changed":12345,"added":12345,"history":0,"cube_type":1,"note":"","services":0,"phonetic_name":"","owner":0,"denied_user_ids":[],"attributes":[{"instance":0,"minimum":0,"maximum":1,"current_value":0,"target_value":0,"last_value":0,"unit":"Ausl%C3%B6ser","step_value":1,"editable":1,"type":1,"state":1,"last_changed":1574494369,"changed_by":1,"changed_by_id":0,"based_on":1,"data":"","id":500,"node_id":500},{"instance":1,"minimum":0,"maximum":1,"current_value":0,"target_value":0,"last_value":0,"unit":"Random%20einschalten","step_value":1,"editable":1,"type":1,"state":1,"last_changed":1574494369,"changed_by":1,"changed_by_id":0,"based_on":1,"data":"","id":501,"node_id":500},{"instance":0,"minimum":0,"maximum":3600,"current_value":0,"target_value":0,"last_value":0,"unit":"Verz%C3%B6gerung%20in%20Sekunden","step_value":1,"editable":1,"type":2,"state":1,"last_changed":1574494369,"changed_by":1,"changed_by_id":0,"based_on":1,"data":"","id":502,"node_id":500},{"instance":1,"minimum":0,"maximum":3600,"current_value":0,"target_value":0,"last_value":0,"unit":"tats%C3%A4chliche%20Verz%C3%B6gerung%20in%20S","step_value":1,"editable":1,"type":2,"state":1,"last_changed":1574494369,"changed_by":1,"changed_by_id":0,"based_on":1,"data":"","id":503,"node_id":500},{"instance":2,"minimum":0,"maximum":3600,"current_value":0,"target_value":0,"last_value":0,"unit":"Mindestanschaltdauer%20in%20S","step_value":1,"editable":1,"type":2,"state":1,"last_changed":1574494369,"changed_by":1,"changed_by_id":0,"based_on":1,"data":"","id":504,"node_id":500},{"instance":3,"minimum":0,"maximum":3600,"current_value":0,"target_value":0,"last_value":0,"unit":"Random%20ausschalten","step_value":1,"editable":1,"type":2,"state":1,"last_changed":1574494369,"changed_by":1,"changed_by_id":0,"based_on":1,"data":"","id":505,"node_id":500},{"instance":4,"minimum":0,"maximum":3600,"current_value":0,"target_value":0,"last_value":0,"unit":"tats%C3%A4chliche%20Auschaltzeit","step_value":1,"editable":1,"type":2,"state":1,"last_changed":1574494369,"changed_by":1,"changed_by_id":0,"based_on":1,"data":"","id":506,"node_id":500}]}],"users":[{"id":1,"username":"homee","forename":"homee","surname":"homee","image":"","role":2,"type":1,"email":"","phone":"","added":"27. Jan 2016 13:37:00 (1453898220)","homee_name":"🏠","homee_image":"profileicon_5_1","access":1,"cube_push_notifications":1,"cube_email_notifications":0,"cube_sms_notifications":0,"node_push_notifications":1,"node_email_notifications":0,"node_sms_notifications":0,"warning_push_notifications":1,"warning_email_notifications":0,"warning_sms_notifications":0,"update_push_notifications":1,"update_email_notifications":0,"update_sms_notifications":0,"api_push_notifications":0,"api_email_notifications":0,"api_sms_notifications":0}],"groups":[],"relationships":[],"homeegrams":[],"settings":{"address":"","city":"","zip":11111,"state":"BW","latitude":"","longitude":"","country":"Germany","language":"de","wlan_dhcp":1,"remote_access":1,"beta":0,"webhooks_key":"WEBHOOKKEY","automatic_location_detection":0,"polling_interval":60,"timezone":"Europe%2FBerlin","enable_analytics":0,"wlan_enabled":1,"wlan_ip_address":"192.168.178.222","wlan_ssid":"homeeWifi","wlan_mode":2,"online":0,"lan_enabled":1,"available_ssids":["homeeWifi"],"time":1562707105,"civil_time":"2019-07-09 23:18:25","version":"2.41.2+0fd65df2","uid":"19216812","gateway_id":1313337,"cubes":[],"extensions":{"weather":{"enabled":1},"amazon_alexa":{"enabled":0},"google_assistant":{"enabled":0,"syncing":0},"apple_homekit":{"enabled":0,"paired":0,"config_number":1,"syncing":0},"ftp":{"enabled":0},"history":{"enabled":0},"backup":{"enabled":0}}},"plans":[]}}

Allerdings bekomme ich in Homee beim hinzufügen eines neuen homee-in-homee trotzdem die Fehlermeldung mit Version 2.25.

2 „Gefällt mir“

Guten Morgen,

was ist mit den übrigen NodeRed Nutzern?
Seid ihr alle zurück auf die 2.41.1 ??

Ich hätte das gern vermieden, da am Ende der Druck weg ist, keiner an einer Lösung arbeitet und es zum Dauerzustand werden könnte.

Dankeschön nochmal an alle, die hier mitarbeiten und nach einer Lösung suchen.
Ich selbst kann da leider fachlich kaum beitragen. :face_with_peeking_eye:

3 „Gefällt mir“

Ich denke mal das die meisten gerade darauf verzichten neue Geräte anzulegen. Bereits verbunden klappt’s ja.

Ich habe erst am Sonntag wieder Zeit mich intensiv darum zu kümmern und zu probieren. Hoffe auch das wir hier bald eine Lösung finden.

3 „Gefällt mir“

Hallo zusammen
Wie gewünscht von @lumpi gewünscht hier mein Stand der Dinge mit diesem Problem:
Also ich bin auf 2.41.2 und Node Red auf 4.1.1. Und wie ich weiter oben bereits erwähnt hatte - bei mir läuft es nach dem Downgrade, anschließendem Upgrade und zurückspielen eines Backup mit der Version 2.41.1 wieder. Da das sonst keiner hat, weiß ich nicht warum das so ist. Ich kann auch von Node Red neue Device hinzufügen. Seht Ihr in den Bildern.
IMG_0133


IMG_0130
Ich hatte mich nach dem wiederherstellen des Systems nicht getraut was neues hinzuzufügen. Aber um mehr Informationen bereitzustellen, hab ich das nun mal versucht, und es geht bei mir. Ich benutze allerdings aus der node-red-contrib-homee nur homeeDevice.

Ich hab den homee mit zwei Node Red Servern verknüpft. Bekomme also von beiden Systemen Informtionen, oder gebe sie dahin weiter. Bei mehr als 120 Geräten im Einsatz, brauche ich diese Funktion. Irgendwas kommt hinzu oder wird wieder wieder gelöscht. Wäre also schön, wenn man bald wieder auf eine verlässliche Funktion setzen kann.
All die Einstellungen, die weiter oben beschrieben sind in einer JS, konnte ich bei mir nicht finden. Beim Downgrade hatte ich ich ziemlich Probleme. Ich dachte schon ich bekomme es nicht mehr hin….er ist ja auch schon etwas älter …denke mehr als 10 Jahre. ich hab noch ein weiteren homee auf 2.41.1… (auch ein älteres Model) den werde ich definitiv erst anpacken, bis hier Klarheit herrscht.

2 „Gefällt mir“

Nein, ich verbinde mich über die IP des Raspberry PI, auf dem node-RED läuft.
Wenn ich dann neue Geräte hinzufüge, wird dabei scheinbar keine Versionsnummer geprüft.