NEWS
Rega aktualisiert nicht - Got unexpected ID: hm-rega.0.xxx
-
Hallo,
an manchen Tagen (ioBroker startet um 05.00 Uhr jeden Tag neu) hört Rega auf die Variablen zu aktualisieren. In den Zuständen steht alive und connected auf true.
Meist finde ich dann folgenden Fehler im Log:
hm-rega-0 2016-04-08 06:26:05 warn Got unexpected ID: hm-rega.0.25880 hm-rega-0 2016-04-08 06:25:05 warn Got unexpected ID: hm-rega.0.25879 hm-rega-0 2016-04-08 06:21:00 warn Got unexpected ID: hm-rega.0.25880 hm-rega-0 2016-04-08 06:20:00 warn Got unexpected ID: hm-rega.0.25879
25880, 25879 -> boolean
Manchmal sind es aber auch andere Variablen. Das ist erst seit Rega 0.3.5 so.
Hat jemand eine Idee?
Grüße
Brati
-
Morjens,
das Problem besteht leider immer noch, heute morgen:
hm-rega-0 2016-04-19 06:26:05 warn Got unexpected ID: hm-rega.0.25880 hm-rega-0 2016-04-19 06:25:07 warn Got unexpected ID: hm-rega.0.25879 hm-rega-0 2016-04-19 06:21:00 warn Got unexpected ID: hm-rega.0.25880 hm-rega-0 2016-04-19 06:20:00 warn Got unexpected ID: hm-rega.0.25879
Dazu muss man sagen, dass ich im Script um 06:21 Uhr folgendes ausgeführt habe:
setState("hm-rega.0.25880"/,true);
und 06:20 Uhr
setState("hm-rega.0.25879",true);
Das sind aber boolean Variablen und die anderen Tage hat es ja funktioniert?! Das setState kam in der CCU gar nicht erst an, also die Variablen wurden nicht auf "true" gesetzt. Warum klappt das manchmal nicht?!?!
Ich habe leider Rega schon neu gestartet und einlesen lassen, beim nächsten Absturz werde ich mal schauen welche Werte im ioBroker eingelesen wurden.
Grüße
Brati
-
Morjens,
das Problem besteht leider immer noch, heute morgen:
hm-rega-0 2016-04-19 06:26:05 warn Got unexpected ID: hm-rega.0.25880 hm-rega-0 2016-04-19 06:25:07 warn Got unexpected ID: hm-rega.0.25879 hm-rega-0 2016-04-19 06:21:00 warn Got unexpected ID: hm-rega.0.25880 hm-rega-0 2016-04-19 06:20:00 warn Got unexpected ID: hm-rega.0.25879
Dazu muss man sagen, dass ich im Script um 06:21 Uhr folgendes ausgeführt habe:
setState("hm-rega.0.25880"/,true);
und 06:20 Uhr
setState("hm-rega.0.25879",true);
Das sind aber boolean Variablen und die anderen Tage hat es ja funktioniert?! Das setState kam in der CCU gar nicht erst an, also die Variablen wurden nicht auf "true" gesetzt. Warum klappt das manchmal nicht?!?!
Ich habe leider Rega schon neu gestartet und einlesen lassen, beim nächsten Absturz werde ich mal schauen welche Werte im ioBroker eingelesen wurden.
Grüße
Brati `
Schreibst du wirklich so?setState("hm-rega.0.25880"/,true);
-
Ne, da habe ich nur beim Kopieren und den Namen nicht richtig rausgelöscht. Im Script steht er so wie durch einfügen übernommen.
Grüße Brati
Gesendet via Tapatalk.
-
Ne, da habe ich nur beim Kopieren und den Namen nicht richtig rausgelöscht. Im Script steht er so wie durch einfügen übernommen.
Grüße Brati
Gesendet via Tapatalk. `
Du kannst die Zeile 52 (return) in opt/iobroker/node_modules/iobroker.hm-rega/hm-rega.js kommentieren und schauen, ob besser wird.if (regaStates[rid[2]] === undefined) { if (!id.match(/\.updated$/)) adapter.log.warn('Got unexpected ID: ' + id); //return; }
Danach adapter neu starten.
-
Ok danke, ich berichte. Wenn er 1 Woche und Absturz läuft. Hat es funktioniert
Gesendet via Tapatalk.
-
Ich habe den Fehler (Got unexpected ID) immer wenn ich den Raspi (ioBroker und LXCCU) neu starte. IoBroker ist dann schon fertig mit laden bevor die LXCCU da ist. RPC verbindet dann später, bei Rega bleiben aber die Fehler "Got unexpected ID". Sobald ich den Rega Adapter manuell neustarte sind die Fehler weg.
-
Hmm, daran könnte es liegen. Ich mache jeden Morgen ein Backup und weil ioBroker dann eh gestoppt ist boote ich gleich neu. Der Fehler tritt aber nicht jeden Tag auf?!!
Gesendet via Tapatalk.
-
Hmm, daran könnte es liegen. Ich mache jeden Morgen ein Backup und weil ioBroker dann eh gestoppt ist boote ich gleich neu. Der Fehler tritt aber nicht jeden Tag auf?!!
Gesendet via Tapatalk. `
Habe ein ernsthaftes Problem entdeckt. Falls beim Adapterstart kein CCU aktiv war, dann bleibt Adapter für immer im nicht verbundenem Zustand… Fix ist unterwegs.Danke.
-
Juhu, dann stelle ich erstmal nur den Reboot ab. System wird momentan eh nicht angefasst und läuft fast
perfekt.
Gesendet via Tapatalk.
-
Juhu, dann stelle ich erstmal nur den Reboot ab. System wird momentan eh nicht angefasst und läuft fast
perfekt.
Gesendet via Tapatalk. `
Kann jemand vom git ausprobieren?### 1.0.0 (2016-04-19) * (bluefox) detect disconnection and handle it
-
Das alleinige Updaten von Rega half leider nicht. Heute wieder
hm-rega-0 2016-04-21 10:01:00 warn Got unexpected ID: hm-rega.0.25633
Ich habe mal hier das Script eingefügt, dass um 10.01 Uhr die Variable 25633 setzen sollte.
! ````
function szeit() {
! // ##################### Wochenplan #####################
// Zeitplan - wird jeden Tag um 10:00 Uhr für nächsten Tag gesetzt
// 0 1 2 3 4 5 6
// M D M D F S S
// o i i o r a o
//...................................................................
var TagStunde = new Array("6", "6", "6", "6", "6", "9", "9");
var TagMinute = new Array("30", "30", "45", "45", "30","00", "00");
var KDienst = new Array("1", "1", "0", "0", "1", "2", "2"); // 0=M , 1=V, 2=X
var WAktiv = new Array("1", "1", "1", "1", "1", "0", "0");
! var jetzt = new Date();
var tag = jetzt.getDay(); // Achtung Mo = 1, Arry beginnt aber bei 0
if ( tag == "7" ){
tag = "0";}
if (WAktiv[tag] == "1") {
setState("Timer.Wecker.Person1.Aktiv", true);}
else {
setState("Timer.Wecker.Person1.Aktiv", false);}
log ('Weckzeit Person1 morgen: ' + TagStunde[tag] + ':' + TagMinute[tag] + ' Uhr');
setState("javascript.0.Timer.Wecker.Person1.Stunde",TagStunde[tag]);
setState("javascript.0.Timer.Wecker.Person1.Minute",TagMinute[tag]);
setState("hm-rega.0.25633",KDienst[tag]);
}
! schedule("1 10 * * *", function (){
szeit();
});
! // ##################### variable ZEITSTEUERUNG #####################
on(/^javascript.0.Timer.Wecker.Person1.Stunde|javascript.0.Timer.Wecker.Person1.Minute/, function(obj) {
clearSchedule(Li_Auf);
var id_Stunde = getState("javascript.0.Timer.Wecker.Person1.Stunde").val,
id_Minute = getState("javascript.0.Timer.Wecker.Person1.Minute").val - 10;
if (id_Minute < 0)
id_Minute = 60 + id_Minute,
id_Stunde = id_Stunde - 1;
AufZeit = id_Minute + ' ' + id_Stunde + ' * * *';
log("Person1 Aufstehen geändert auf: " + AufZeit);
Li_Auf = schedule(AufZeit, function(){
var WStatus = getState("Timer.Wecker.Person1.Aktiv").val;
if (WStatus === true)
log("++++++++++ Test Aufsteh Script Person1+++++ "),
sendTo("pushover", {
message: 'in 10min', // mandatory - your text message
title: 'Aufstehen Person1', // optional - your message's title, otherwise your app's name is used
priority: -2,
}),
setState("hm-rega.0.25879"/Person1 Wecker/,true);
setStateDelayed("hm-rega.0.25879"/Person1 Wecker/,false, 305000, false);
! });
});var Li_Auf = "00 12 * * *";
createState("Timer.Wecker.Person1.Stunde");
createState("Timer.Wecker.Person1.Minute");
createState("Timer.Wecker.Person1.Aktiv", true);
var Temp_Minute = getState("Timer.Wecker.Person1.Minute").val;
setState("Timer.Wecker.Person1.Minute", 59);
setState("Timer.Wecker.Person1.Minute", Temp_Minute);! on ({
id: "hm-rega.0.25633",
change: 'ne',
val: 1
},
function(){
setState("javascript.0.Timer.Wecker.Person1.Stunde",6);
setState("javascript.0.Timer.Wecker.Person1.Minute",30);
setState("javascript.0.Timer.Wecker.Person2.Stunde",6);
setState("javascript.0.Timer.Wecker.Person2.Minute",30);
setState("Timer.Wecker.Person1.Aktiv", true);
setState("Timer.Wecker.Person2.Aktiv", true);
}
);
! on ({
id: "hm-rega.0.25633",
change: 'ne',
val: 0
},
function(){
setState("javascript.0.Timer.Wecker.Person1.Stunde",6);
setState("javascript.0.Timer.Wecker.Person1.Minute",45);
setState("javascript.0.Timer.Wecker.Person2.Stunde",6);
setState("javascript.0.Timer.Wecker.Person2.Minute",45);
setState("Timer.Wecker.Person1.Aktiv", true);
setState("Timer.Wecker.Person2.Aktiv", true);
}
);
! on ({
id: "hm-rega.0.25633",
change: 'ne',
val: 2
},
function(){
setState("Timer.Wecker.Person1.Aktiv", false);
setState("Timer.Wecker.Person2.Aktiv", false);
}
);
! ````Nach dem Neustart von Hand, stürzt Rega den ganzen Tage nicht mehr ab. Also irgendwas muss beim Start von ioBroker schief laufen und das leider
nicht immer. Der Fehler wird dann im Log erst bemerkt, wenn die Variable durch das Script gesetzt werden soll. Ansonsten werden Variablen halt einfach nicht aktualisiert.
Ich lasse jetzt mal den Reboot morgens weg, dann wird es vermutlich durchlaufen.
Grüße
Brati
-
Das alleinige Updaten von Rega half leider nicht. Heute wieder
hm-rega-0 2016-04-21 10:01:00 warn Got unexpected ID: hm-rega.0.25633
Ich habe mal hier das Script eingefügt, dass um 10.01 Uhr die Variable 25633 setzen sollte.
! ````
function szeit() {
! // ##################### Wochenplan #####################
// Zeitplan - wird jeden Tag um 10:00 Uhr für nächsten Tag gesetzt
// 0 1 2 3 4 5 6
// M D M D F S S
// o i i o r a o
//...................................................................
var TagStunde = new Array("6", "6", "6", "6", "6", "9", "9");
var TagMinute = new Array("30", "30", "45", "45", "30","00", "00");
var KDienst = new Array("1", "1", "0", "0", "1", "2", "2"); // 0=M , 1=V, 2=X
var WAktiv = new Array("1", "1", "1", "1", "1", "0", "0");
! var jetzt = new Date();
var tag = jetzt.getDay(); // Achtung Mo = 1, Arry beginnt aber bei 0
if ( tag == "7" ){
tag = "0";}
if (WAktiv[tag] == "1") {
setState("Timer.Wecker.Person1.Aktiv", true);}
else {
setState("Timer.Wecker.Person1.Aktiv", false);}
log ('Weckzeit Person1 morgen: ' + TagStunde[tag] + ':' + TagMinute[tag] + ' Uhr');
setState("javascript.0.Timer.Wecker.Person1.Stunde",TagStunde[tag]);
setState("javascript.0.Timer.Wecker.Person1.Minute",TagMinute[tag]);
setState("hm-rega.0.25633",KDienst[tag]);
}
! schedule("1 10 * * *", function (){
szeit();
});
! // ##################### variable ZEITSTEUERUNG #####################
on(/^javascript.0.Timer.Wecker.Person1.Stunde|javascript.0.Timer.Wecker.Person1.Minute/, function(obj) {
clearSchedule(Li_Auf);
var id_Stunde = getState("javascript.0.Timer.Wecker.Person1.Stunde").val,
id_Minute = getState("javascript.0.Timer.Wecker.Person1.Minute").val - 10;
if (id_Minute < 0)
id_Minute = 60 + id_Minute,
id_Stunde = id_Stunde - 1;
AufZeit = id_Minute + ' ' + id_Stunde + ' * * *';
log("Person1 Aufstehen geändert auf: " + AufZeit);
Li_Auf = schedule(AufZeit, function(){
var WStatus = getState("Timer.Wecker.Person1.Aktiv").val;
if (WStatus === true)
log("++++++++++ Test Aufsteh Script Person1+++++ "),
sendTo("pushover", {
message: 'in 10min', // mandatory - your text message
title: 'Aufstehen Person1', // optional - your message's title, otherwise your app's name is used
priority: -2,
}),
setState("hm-rega.0.25879"/Person1 Wecker/,true);
setStateDelayed("hm-rega.0.25879"/Person1 Wecker/,false, 305000, false);
! });
});var Li_Auf = "00 12 * * *";
createState("Timer.Wecker.Person1.Stunde");
createState("Timer.Wecker.Person1.Minute");
createState("Timer.Wecker.Person1.Aktiv", true);
var Temp_Minute = getState("Timer.Wecker.Person1.Minute").val;
setState("Timer.Wecker.Person1.Minute", 59);
setState("Timer.Wecker.Person1.Minute", Temp_Minute);! on ({
id: "hm-rega.0.25633",
change: 'ne',
val: 1
},
function(){
setState("javascript.0.Timer.Wecker.Person1.Stunde",6);
setState("javascript.0.Timer.Wecker.Person1.Minute",30);
setState("javascript.0.Timer.Wecker.Person2.Stunde",6);
setState("javascript.0.Timer.Wecker.Person2.Minute",30);
setState("Timer.Wecker.Person1.Aktiv", true);
setState("Timer.Wecker.Person2.Aktiv", true);
}
);
! on ({
id: "hm-rega.0.25633",
change: 'ne',
val: 0
},
function(){
setState("javascript.0.Timer.Wecker.Person1.Stunde",6);
setState("javascript.0.Timer.Wecker.Person1.Minute",45);
setState("javascript.0.Timer.Wecker.Person2.Stunde",6);
setState("javascript.0.Timer.Wecker.Person2.Minute",45);
setState("Timer.Wecker.Person1.Aktiv", true);
setState("Timer.Wecker.Person2.Aktiv", true);
}
);
! on ({
id: "hm-rega.0.25633",
change: 'ne',
val: 2
},
function(){
setState("Timer.Wecker.Person1.Aktiv", false);
setState("Timer.Wecker.Person2.Aktiv", false);
}
);
! ````Nach dem Neustart von Hand, stürzt Rega den ganzen Tage nicht mehr ab. Also irgendwas muss beim Start von ioBroker schief laufen und das leider
nicht immer. Der Fehler wird dann im Log erst bemerkt, wenn die Variable durch das Script gesetzt werden soll. Ansonsten werden Variablen halt einfach nicht aktualisiert.
Ich lasse jetzt mal den Reboot morgens weg, dann wird es vermutlich durchlaufen.
Grüße
Brati `
Welche hm-rega Version? -
-
Sehe gerade, dass du oben von 1.0.0 sprichst. Hab leider keine Ahnung wie ich die drauf bekomme….
-
Sehe gerade, dass du oben von 1.0.0 sprichst. Hab leider keine Ahnung wie ich die drauf bekomme…. `
Nr 2 in -
Installation hat funktioniert, die eigentlich immer vorhandenen Fehler beim Start sind nicht mehr im Log. Nächster Bericht kommt nächste Woche oder bei Fehlern.
Gesendet via Tapatalk.
-
Mahlzeit,
die letzten Tage lief es super, ich habe nix geändert und heute war es wieder soweit:
hm-rega-0 2016-04-27 06:40:05 warn Got unexpected ID: hm-rega.0.25879 hm-rega-0 2016-04-27 06:35:00 warn Got unexpected ID: hm-rega.0.25879 hm-rega-0 2016-04-27 06:21:05 warn Got unexpected ID: hm-rega.0.25880 hm-rega-0 2016-04-27 06:16:00 warn Got unexpected ID: hm-rega.0.25880
Das führte dazu, dass zu den angegeben Uhrzeiten die Variablen nicht gesetzt wurden.Ich habe jetzt Rega neu gestartet und es sollte laufen.
Ich habe das Gefühl, dass der Neustart am Morgen nur Probleme mit sich bringt. Läuft das System durch, gibt es keine Aussetzer. Beim Nachschauen in den Instanzen gab es Fehler bei:
-
iCal
-
Pushover
-
Vcard
Ich musste alle neustarten. Als erstes werde ich nach dem täglichen Backup nicht rebooten sondern ein "iobrokrer start" verwenden.
Grüße
Brati
-
-
Das Problem wird häufig sein, dass noch kein Internet verfügbar ist (z.B. DHCP läuft noch) oder die CCU noch nicht gestartet ist (bei mir der Fall). Das verhindert bei vielen Adaptern ein korrektes Starten und nicht alle Adapter haben bisher korrekte Mechanismen um mit anfänglich und/oder zwischenzeitlich fehlendem Netzwerk umzugehen.
Mit dem neuen hm-rega aus dem GIT ist mir der neustart übrigens geglückt, bisher aber nur einmal ausprobiert.
Ich habe selber größere Probleme den Harmony Adapter korrekt zu implementieren. Der Harmony HUB ist sehr zickig und verliert oft die Verbindung, man kann auch nicht immer darauf zugreifen, selbst wenn er verfügbar ist. Diese Möglichkeiten muss der Adapter alle korrekt erkennen und berücksichtigen.
Während ich hier schreibe fällt mir auf, dass es gut wäre wenn ioBroker von sich aus States erstellt, welche den Netzwerk und Internet Zustand reflektieren, eine Art integrierter Ping-Adapter.
Andere Adapter könnten diese States abonnieren und entsprechend reagieren wenn Netzwerk oder Internet ausfällt.
-
Die CCU läuft durch, ich denke mal dass der Raspberry beim Systemstart überfordert ist. Mit Version 0.3.x hatte ich mir ein Widget gebastelt, dass nur zu sehen war, wenn Rega nicht connected war. Das funktioniert nicht mehr, weil Rega immer connected anzeigt.
Na ich teste mal ohne Raspi Start. Ohne Backup könnte ich ioBroker auch einfach durchlaufen lassen.
Grüße Brati
Gesendet von meinem SM-T530 mit Tapatalk