Angelernte Geräte weg nach RPi Neuinstallation (MAX!)

Hallo zusammen,

ich habe das Problem, dass meine MAX! Geräte nach der Neuinstallation von Homegear auf einem RPi3 verschwunden sind, und ich sie auf die schnelle auch nicht angelernt bekommen. Grund für die Neuinstallation war ein korruptes Dateisystem auf der MicroSD-Karte des Pi; die Verzeichnisse /etc/homegear und /home/pi konnte ich jedoch sichern.

Umgebung:

Schritte zur Reproduktion des Problems:

  • RPi neu aufgesetzt
  • Homegear so konfiguriert, wie es von der alten Konfiguration bekannt war (also die neuen, unmodifizierten Konfig-Dateien unter /etc/homegear/families editiert entsprechend der alten families-Definitionen.) Insbesondere habe ich in homematicbidcos.conf die alten Werte für centralAddress und rfKey auf die alten Werte gesetzt.

Erwartetes Verhalten:

  • Die alte Geräteliste der MAX! Komponenten ist wieder zu sehen.
  • Bisherige Steuerung der MAX! Komponenten funktioniert.

Tatsächliches Verhalten:

  • Die Liste der Geräte ist leer:

    root@rpi3:/home/pi# homegear -r
    Connected to Homegear (version 0.7.30-1900).

    Please type >>help<< to list all available commands.

    ls
    ID │ Name
    ──────┼───────────────────────────────
    0 │ HomeMatic BidCoS
    4 │ MAX!
    254 │ Miscellaneous
    ──────┴───────────────────────────────
    fs 4
    For a list of available family commands type >>help<<.
    Family 4> ls
    No peers are paired to this central.

  • Es kommen sowohl Pakete von MQTT als auch Pakete vo CC1101 Adapter an; siehe homegear.log:
    12/15/18 12:28:36.409 Info: MQTT RPC call received. Method: setValue
    12/15/18 12:28:36.409 RPC Server (Port 2001): Info: RPC Method called: setValue Parameters:
    (Integer) 8
    (Integer) 1
    (String) SET_TEMPERATURE
    (Float) 19.5
    12/15/18 12:29:37.341 MAX packet received (My-MAX-CC1101, RSSI: 0x37): 0C16044218DF88000000002CB6
    12/15/18 12:32:31.589 MAX packet received (My-MAX-CC1101, RSSI: 0x37): 0C17044218DF88000000002CB6
    12/15/18 12:35:22.336 MAX packet received (My-MAX-CC1101, RSSI: 0x37): 0C18044218DF88000000002CB6

Fragen:

  • Kann ich die Liste der Geräte wiederherstellen?
  • Falls nein, wie kann ich die Geräte neu anlernen? In einem anderen Beitrag (aus 2015) habe ich etwas vom Löschen einer virtuellen Zentrale gelesen (innerhalb von homegear -r); wie geht das und wie lege ich eine neue Zentrale an?

Viele Grüße
Johannes

Du musst auch die Datenbank wieder herstellen. Die liegt aus dem Kopf in /var/lib/Homegear/db oder so ähnlich. Da gibt es auch 10 Sicherungen im Backupordner.

1 Like

Hallo job,

vielen Dank für die schnelle Antwort. Deine Vermutung scheint richtig zu sein. Hier die sqlite-Files der aktuellen Installation:

root@rpi3:/var/lib/homegear# pwd
/var/lib/homegear
root@rpi3:/var/lib/homegear# ll db.sql*
-rwxrwx--- 1 homegear homegear 245760 Dez 15 13:00 db.sql
-rwxrwx--- 1 homegear homegear 245760 Dez 15 13:00 db.sql.bak0
-rwxrwx--- 1 homegear homegear 245760 Dez 15 12:58 db.sql.bak1

Leider hatte ich nur /etc/homegear, nicht aber /var/lib/homegear gesichert. (Das weiß ich nun für das nächste Mal.) Also bleibt nur der Weg, die Geräte neu anzulernen? Wie ist da das Vorgehen? Ich hatte gestern kurz mal ein Anlernen ausprobiert (ohne Factory reset der Komponenten), habe dann im Log folgendes gefunden:

....
homegear.log:12/14/18 18:13:47.479 Module HomeMatic BidCoS: Created HomeMatic BidCoS central with id 0, address 0xFD.... and serial number VBC332....
homegear.log:12/14/18 18:13:47.540 Module Miscellaneous: Created Miscellaneous central with id 0.
homegear.log:12/14/18 18:20:12.442 Module MAX: Created MAX central with id 0, address 0xFD.... and serial number VBC502....
....
homegear.log:12/14/18 18:52:54.568 Module MAX: Error: Pairing packet rejected, because this peer is already paired to another central.

Kann ich die Datenbank evtl. doch noch rekonstruieren? Ich habe noch die Ausgabe von
homegear -r
fs 4
ls
in der Form:
ID │ Name │ Address │ Serial Number │ Type │ Type String │ Firmware │ Unreach
─────────┼───────────────────────────┼─────────┼───────────────┼──────┼───────────────────────────┼──────────┼────────
│ │ │ │ │ │ │
1 │ kitchen_central │ 17… │ NEQ158… │ 0200 │ BC-RT-TRX-CyG-2 │ 1.0 │ No

Falls nicht: Wie ist das Vorgehen zum Neuanlernen?

Grüße
Johannes

Ich kenne Max! nicht.

Bei Homematic macht man einen Gerätereset und dann das pairing neu.

Gleiches gilt für Max!. Außerdem braucht man dort AES nicht zu beachten: https://wiki.fhem.de/wiki/AES_Encryption#Hinweise

Ergänzung:
Eventuell macht es Sinn mit setId() die neu angelerneten Geräte wieder auf die alten ID’s zu schieben.

2 Likes

Hallo zusammen,

@job, @pmayer: Vielen Dank für die Unterstützung. Ich habe die 12 MAX! Geräte neu angelernt.

Das Factory Reset und folgende Anlernen hat übrigens für alle Geräte ohne Probleme funktioniert (BC-PB-2-WM, BC-RT-TRX-CyG-2, BC-RT-TRX-CyN, BC-SC-Rd-WM-2, BC-TC-C-WM-4).

@pmayer: Den Hinweis mit dem Setzen der ID habe ich zu spät gesehen; jetzt habe ich die neuen IDs schon im Node.RED Flow umgebogen - war aber auch kein großes Problem. :nerd_face:

Grüße und nochmals Danke
Johannes

1 Like