CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichbar

Fehler in Firmware und WebUI & Workarounds

Moderator: Co-Administratoren

BitBeisser
Beiträge: 65
Registriert: 24.02.2013, 09:02

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von BitBeisser » 24.03.2013, 11:40

Hallo,

habe sehr selten das gleiche Problem, allerdings habe ich keine Fritzbox. Nach einem Reboot von Router (Netgear) und / oder zusätzlichem Switch(D-Link) ist die CCU1 nicht mehr zu erreichen. Die Link-LEDs an Switch und CCU1 sind aus.

Problemlösung bei mir: Alle 10 Minuten überprüft ein Script auf der CCU1 ob die beiden LAN-Konfigurationsadpater noch erreichbar sind. Können diese zweimal nicht hintereinander erreicht werden, rebootet sich die CCU1 selbst.

VG BitBeisser

BitBeisser
Beiträge: 65
Registriert: 24.02.2013, 09:02

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von BitBeisser » 05.05.2013, 09:51

Hallo,

auf allgemeinen Wunsch eines Einzelnen stelle ich hier mein verwendetes Script rein.

1) Schritt
Anlegen einer Systemvariablen vom Typ "Zahl" (z.B. LanOK)

2) Schritt
Erstellen eines Programms, das alle 10 min ausgelöst wird. Damit dieses Programm das anschließende Script ausführen kann, muss auch das Zentralennetzteil OK sein. Sollte nämlich ein Stromausfall vorliegen, kann man sich den Reboot sparen.

3) Schritt
Das Script.

Code: Alles auswählen

! ***************************************************
! erstellt von: BitBeisser
! erstellt am: 22.03.2013
! geaendert von: BitBeisser
! geaendert am: 22.03.2013
! ***************************************************
! Variable im Script muss gleich heissen wie Systemvariable
integer LanOK ;
integer Max_Kontrolle = 2.00 ;
var c_return;
string c_string;

var obj = dom.GetObject('LanOK') ;

LanOK = obj.State();

LanOK = LanOK + Max_Kontrolle ;

dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("ping -c 1 192.168.xxx.xx1");
c_return = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();

foreach(c_string,c_return.Split(" "))
{
  if (c_string=="from")
  {
    LanOK = LanOK - 1.00 ;
  }
}
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("ping -c 1 192.168.xxx.xx2");
c_return = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();

foreach(c_string,c_return.Split(" "))
{
  if (c_string=="from")
  {
    LanOK = LanOK - 1.00 ;
  }
}
if (LanOK < Max_Kontrolle)
{
  LanOK = 0.00 ;
}
if (LanOK >= 4.00)
{
  LanOK = 0.00 ;
  dom.GetObject('LanOK').State(LanOK);
  system.Save();
  string stdout; 
  string stderr;
  system.Exec("/sbin/reboot", &stdout, &stderr);
}
! ***************************************************
!  Ergebnis in die Sysvar "LanOK" schreiben
! ***************************************************
dom.GetObject('LanOK').State(LanOK);

! ***************************************************
! Ende
! ***************************************************
Ablauf:
3.1) erst wird die Systemvariable um 2 erhöht, weil zwei IP-Adressen kontrolliert werden
3.2) danach werden die zwei IP-Adressen angepingt (Richtige IP-Adresse eintragen). Für jeden erfolgreichen Ping-Vorgang wird die Systemvariable um 1 verringert.
3.3) Wird nur eine IP-Adresse erreicht, wird die Systemvariable trotzdem auf 0 gesetzt, weil ja somit Netz vorhanden ist.
3.4) Konnte im Abstand von der Zeit, wo das Programm ausgeführt wurde (hier 10 min) kein Ping erfolgreich abgesetzt werden, so erhöht sich die Systemvariable um weitere 2 auf 4.
3.5) Wenn die Systemvariable 4 erreicht hat, wird das System gesichert und anschließend rebootet.

Achtung! Wie das zeitliche Verhalten von sichern und reboot ist, habe ich noch nicht getestet, d.h. ich weiß nicht, ob zwischen den Befehlen ein Delay bzw. Wait erforderlich ist. Auch kann ich keine Angaben machen, ob das Test Zeitfenster von 10 min in jedem Fall richtig ist, oder wenn z.B. ein Reboot der CCU1 25 min dauert gegebenfalls größer gewählt werden sollte.

VG BitBeisser

ricroe
Beiträge: 126
Registriert: 25.11.2012, 16:08
Hat sich bedankt: 11 Mal

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von ricroe » 05.05.2013, 20:12

BitBeisser hat geschrieben:Hallo,

auf allgemeinen Wunsch eines Einzelnen stelle ich hier mein verwendetes Script rein.

1) Schritt
Anlegen einer Systemvariablen vom Typ "Zahl" (z.B. LanOK)

2) Schritt
Erstellen eines Programms, das alle 10 min ausgelöst wird. Damit dieses Programm das anschließende Script ausführen kann, muss auch das Zentralennetzteil OK sein. Sollte nämlich ein Stromausfall vorliegen, kann man sich den Reboot sparen.

3) Schritt
Das Script.

Code: Alles auswählen

! ***************************************************
! erstellt von: BitBeisser
! erstellt am: 22.03.2013
! geaendert von: BitBeisser
! geaendert am: 22.03.2013
! ***************************************************
! Variable im Script muss gleich heissen wie Systemvariable
integer LanOK ;
integer Max_Kontrolle = 2.00 ;
var c_return;
string c_string;

var obj = dom.GetObject('LanOK') ;

LanOK = obj.State();

LanOK = LanOK + Max_Kontrolle ;

dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("ping -c 1 192.168.xxx.xx1");
c_return = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();

foreach(c_string,c_return.Split(" "))
{
  if (c_string=="from")
  {
    LanOK = LanOK - 1.00 ;
  }
}
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("ping -c 1 192.168.xxx.xx2");
c_return = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();

foreach(c_string,c_return.Split(" "))
{
  if (c_string=="from")
  {
    LanOK = LanOK - 1.00 ;
  }
}
if (LanOK < Max_Kontrolle)
{
  LanOK = 0.00 ;
}
if (LanOK >= 4.00)
{
  LanOK = 0.00 ;
  dom.GetObject('LanOK').State(LanOK);
  system.Save();
  string stdout; 
  string stderr;
  system.Exec("/sbin/reboot", &stdout, &stderr);
}
! ***************************************************
!  Ergebnis in die Sysvar "LanOK" schreiben
! ***************************************************
dom.GetObject('LanOK').State(LanOK);

! ***************************************************
! Ende
! ***************************************************
Ablauf:
3.1) erst wird die Systemvariable um 2 erhöht, weil zwei IP-Adressen kontrolliert werden
3.2) danach werden die zwei IP-Adressen angepingt (Richtige IP-Adresse eintragen). Für jeden erfolgreichen Ping-Vorgang wird die Systemvariable um 1 verringert.
3.3) Wird nur eine IP-Adresse erreicht, wird die Systemvariable trotzdem auf 0 gesetzt, weil ja somit Netz vorhanden ist.
3.4) Konnte im Abstand von der Zeit, wo das Programm ausgeführt wurde (hier 10 min) kein Ping erfolgreich abgesetzt werden, so erhöht sich die Systemvariable um weitere 2 auf 4.
3.5) Wenn die Systemvariable 4 erreicht hat, wird das System gesichert und anschließend rebootet.

Achtung! Wie das zeitliche Verhalten von sichern und reboot ist, habe ich noch nicht getestet, d.h. ich weiß nicht, ob zwischen den Befehlen ein Delay bzw. Wait erforderlich ist. Auch kann ich keine Angaben machen, ob das Test Zeitfenster von 10 min in jedem Fall richtig ist, oder wenn z.B. ein Reboot der CCU1 25 min dauert gegebenfalls größer gewählt werden sollte.

VG BitBeisser

Ich bin der einzelne ;-) Vielen Dank !!!

grazcrew
Beiträge: 302
Registriert: 14.12.2010, 23:27
Danksagung erhalten: 1 Mal

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von grazcrew » 01.07.2013, 11:08

Hallo,

ich habe das Script noch nicht getestet. Warum werden zwei IPs angepingt? Ich habe neben der Fritzbox kein anderes Gerät in dem LAN.
Hat das "CUxD" was zu bedeuten? CUX-Daemon?

joe.oster
Beiträge: 288
Registriert: 17.06.2013, 12:15
Wohnort: NRW
Danksagung erhalten: 2 Mal

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von joe.oster » 01.07.2013, 11:44

Hallo,

auch ich bin seit Samstag leittragender User mit Fritzbos 7270 und CCU2.

Mal schauen ob der Switch Abhife schafft.

Joe

boersenman
Beiträge: 62
Registriert: 13.11.2012, 20:25

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von boersenman » 02.07.2013, 14:31

Hallo!
Mit der CCU1 und meiner Fritzbox 7390 hatte ich auch das Problem. Diese hatte ich bis zum Schluss an einem Switch in Betrieb.
Die CCU2 hat dieses Problem an meiner FB7390 nicht mehr. Sie verrichtet tadellos ihren Dienst direkt an der Fritzbox auch nach einem simulierten Stromausfall oder Reboot.

BitBeisser
Beiträge: 65
Registriert: 24.02.2013, 09:02

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von BitBeisser » 07.07.2013, 16:28

Hallo grazcrew,

es sollten deshalb mindestens zwei Geräte angepingt werden, falls ein Gerät wegen irgendwelcher anderer notweniger Arbeiten vom Netz getrennt werden muss. Sei das wegen Arbeiten an 230 V ein Leitungsschutzschalter ausgeschaltet werden muss. Dann würde die CCU unnötiger Weise rebooten.

VG BitBeisser

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von paul53 » 08.07.2013, 16:22

Bei mir führt ein Reboot per /sbin/reboot nicht zur Wiederherstellung der LAN-Verbindung zur Fritzbox nach Stromunterbrechung der Fritzbox.
Das Programm mit dem CUxD Ping device wird alle 10 Minuten ausgelöst:
Ping_Reboot.jpg
Erst ein Reset per Taster aktiviert wieder die LAN-Verbindung (Link-LED an der CCU leuchtet sofort nach Reset). Offenbar muss der Ethernet controller zurück gesetzt werden. Ein OS-Reboot genügt nicht.
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von paul53 » 13.07.2013, 11:59

Mit meiner Fritzbox 7360 hat auch ein 10 m langes Patch-Kabel zwischen FB und CCU 1 nicht geholfen. Erst das Zwischenschalten eines Switches sorgte dafür, dass nach Spannungsausfall die Verbindung zwischen FB und CCU wieder hergestellt wird.

Dabei habe ich folgendes Verhalten festgestellt:
Nach Spannungswiederkehr erfolgt sofort ein Verbindungsaufbau zwischen den Ethernet-Controllern (CCU-FB bzw. CCU-Switch). Die Fritzbox kappt aber nach wenigen Sekunden die Verbindung für ca. 30 s und versucht dann einen erneuten Verbindungsaufbau. Dieser erneute Verbindungsaufbau klappt zwar zu einem Switch (und zu anderen Geräten im Netzwerk) aber nicht zur CCU.
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

leknilk0815
Beiträge: 6693
Registriert: 19.03.2007, 08:21
Danksagung erhalten: 2 Mal

Re: CCU mit Fritzbox -> CCU nach Stromausfall nicht erreichb

Beitrag von leknilk0815 » 22.10.2013, 09:34

paul53 hat geschrieben:Die Fritzbox kappt aber nach wenigen Sekunden die Verbindung für ca. 30 s und versucht dann einen erneuten Verbindungsaufbau. Dieser erneute Verbindungsaufbau klappt zwar zu einem Switch (und zu anderen Geräten im Netzwerk) aber nicht zur CCU.
Servus,
bin grad zufällig über den Thread gestolpert, daher meine "späte" Anmerkung:
Die Fritzboxen haben einen Notfallmodus, der eine IP- Verbindung auch ermöglicht, wenn die Box nicht mehr ansprechbar ist. Dazu wird (nach Reboot) der LAN- Port 1 für ein paar Sekunden auf die Default- Adresse 192.168.178.1 gesetzt, wodurch ein Tool in der Lage ist, die Box zu reaktivieren. Die default- Adresse wird nach ein paar Sekunden in die vom Benutzer eingestellte IP geändert, danach fährt die Box hoch.
Möglicherweise hat dieses Verhalten Einfluss auf die CCU?
Die Umschaltung an der Box erfolgt übrigens NUR auf Port 1!
Gruß - Toni

KS300 + Sonnendauer + Windrichtung, KS888, HM-CC-TC/HM-CC-VD, FHT80b, und etwas FS20-xx, Keymatic, EM1000, CCU2 und FHZ2000 sowie HP Studio, HPCL + Upgrade für FHZ

Antworten

Zurück zu „HomeMatic - bekannte Bugs“