NEWS
Supportthread Resol-Adapter
-
@gargano es sind zu viele Zeichen um sie in codetags zu setzen.
-
@faz Danke , dann kannst Du die Zeile
this.log.debug('received raw data: ' + JSON.stringify(packetFields));
auskommentieren , sonnst wird Dein Protokoll so voll gemüllt. ( mit // am Anfang)
Dann muß ich auf die Antwort vom Daniel warten. Ich hatte gehofft da gäbe es ein majorVersion
-
@gargano erledigt, Dankeschön
-
@faz Du kannst nochmal eins versuchen.
Such mal im main.js dies :
const options = { optimize: !readConfig };
und ersetze es mit diesem
const options = { optimize: !readConfig, deviceMajorVersion : 2 };
dann die Instanz neu starten und schauen ob dann die Fehlermeldung weg ist.
Evtl. funktioniert es dann ja auch.Andernfalls müssen wir auf Daniel warten.
-
@gargano sagte in Supportthread Resol-Adapter:
const options =
Hat leider auch nicht funktoniert. Fehlermeldung bleibt.
-
@faz Daniel hat sich noch nicht gemeldet , aber jetzt habe ich noch etwas gefunden:
Suche mal in main.js dies (das gibt es zwei mal, alle beide ersetzen)const optimizer = await vbus.ConfigurationOptimizerFactory.createOptimizerByDeviceAddress(context.deviceAddress);
kommentiere es aus mit '//' am Anfang und setze dafür dies ein :
const options1 = { deviceAddress : context.deviceAddress, version : 2 } const optimizer = await vbus.ConfigurationOptimizerFactory.createOptimizer(options1);
Damit teilst Du dem Optimizer auch die Version mit.
Und Instanz wieder neu starten. -
@gargano Schade immer noch der gleiche Fehler.
-
@faz Versuch mal
deviceMajorVersion : 2
anstatt
version : 2
an beiden Stellen und die Instanz wieder neu starten.
Ist im Moment ziemlich eine Raterei, aber ich meine da wäre die richtige Stelle.
-
@gargano sagte in Supportthread Resol-Adapter:
deviceMajorVersion : 2
Auch hier bleibt die Fehlermeldung.
-
@faz sagte in Supportthread Resol-Adapter:
Sollte da nicht die "resol-deltasol-mx-2xx-data.js" sein?
Schau mal in dieses Verzeichnis ob, die Datei auch in dem Verzeichnis ist.
/opt/iobroker/node_modules/iobroker.resol/node_modules/resol-vbus/src/configuration-optimizers
Da wird wahrscheinlich auch die optimizer drin sein, aber ohne resol-deltasol-mx-2xx-data.js.
Damit der Resol Adapter den richtigen Pfad nimmt ändere bitte ganz am Anfang den Pfad von
const vbus = require('resol-vbus');
nach
const vbus = require('../resol-vbus');
Und dann Instanz nochmal starten.
-
@gargano Super jetzt funktioniert es
Vielen Dank für deine AusdauerÜbrigens die resol-deltasol-mx-2xx-data.js ist in diesem Vereichnis dies wurde mit dem MyVbus
dort erzeugt. -
@faz na endlich. Dann war das zum Schluss noch der falsche Pfad.
Kannst Du bitte noch einen Test machen:Nimm mal bei den Options die deviceMajorVersion raus. (Einfach auskommentieren). Ich möchte nur wissen, ob er automatisch in beiden Optimizer Files sucht.
Dann Instanz wieder neu starten. -
@gargano sagte in Supportthread Resol-Adapter:
deviceMajorVersion
Wenn ich das auskommentiere kommen diese Fehlermeldungen:
-
@faz das Komma auch wegnehmen :
const options1 = { deviceAddress : context.deviceAddress }
-
-
@faz ok, dann brauchen wir die Versions Info unbedingt. Muss ich mal schauen, wie ich das dann in dem Adapter allgemein gültig unterbringe. Die jetzige Lösung funktioniert, ist aber ein Hack und würde mit dem nächsten Update wieder weg sein.
Vielen Dank fürs Testen.Schalten kannst Du auch unter Actions?
-
@gargano Ich habe zu Danken, da werde ich mal mir die Daten die wir geändert haben vorerst sichern
-
@gargano Schalten kannst Du auch unter Actions?
-
@gargano ja Funktioniert
-
@grizzelbee Hi grizzelbee,
das war ein etwas fummeliger Act mit dem MX-Controller, da der ja 2 Dateien hat aber mit der gleichen Adresse.
Dazu muss man dann im createOptimizer die Version mit angeben.Leider gibt der MX Controller keine Info über die Version aus. Eine Lösung wäre das in der Konfiguration wählbar zu machen.
Noch ein Punkt:
Im Main ist der Pfad für den VBus so beschriebenconst vbus = require('resol-vbus');
Das hat zur Folge das die VBus LIb im Pfad vom Resol sich befinden muss.
/opt/iobroker/node_modules/iobroker.resol/node_modules/resol-vbus
Bei einem normalen Install vom Vbus befindet sich der VBus aber hier :
/opt/iobroker/node_modules/resol-vbus
Was zur Folge hat, daß der require Pfad so aussehen muss
const vbus = require('../resol-vbus');
Ein Update vom Vbus wird auch in das Verzeichnis gemacht
/opt/iobroker/node_modules/resol-vbus
Viele Grüße