DebMatic - CCU auf Debian Systemen

Begonnen von zap, 12 Februar 2019, 12:01:21

Vorheriges Thema - Nächstes Thema

deimos

Hi,

man sollte nicht so spät noch Foren Posts schreiben. Ich habe dich an der Stelle mit fhemfreund uns seinem Selbstbauversuch der HB-RF-USB verwechselt. Der HmIP-RFUSB wird von mir offiziell unterstützt. Dein Problem bekomme ich allerdings auch nicht nachgestellt. Wobei sich der Stick bisher bei mir nicht unbedingt als sehr zuverlässig dargestellt hat, der ist mir immer mal wieder abgestürzt.

Viele Grüße
Alex

carlos

Hi,
Ich kann leider immer noch keine HMIP Geräte anlernen.
Im log sehe ich folgendes:
[159484.610805] eq3loop: created slave mmd_hmip
[159484.611134] eq3loop: created slave mmd_bidcos
[159486.743108] eq3loop: eq3loop_open_slave() mmd_bidcos
[159499.011744] eq3loop: eq3loop_open_slave() mmd_hmip
[159499.011863] eq3loop: eq3loop_close_slave() mmd_hmip
[159499.015052] eq3loop: eq3loop_open_slave() mmd_hmip
[159499.015161] eq3loop: eq3loop_close_slave() mmd_hmip
[159499.024003] eq3loop: eq3loop_open_slave() mmd_hmip
[159499.026249] eq3loop: eq3loop_ioctl_slave() mmd_hmip: unhandled ioctl 0x5459
[159499.026260] eq3loop: eq3loop_ioctl_slave() mmd_hmip: unhandled ioctl 0x545D

Feb 17 13:14:47 de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer INFO  [vert.x-worker-thread-3] IO Exception: Could not reinitialize interface: 1009. Remove interface from list.
de.eq3.cbcs.legacy.communication.rpc.RpcIOException: java.net.ConnectException: Connection refused
        at de.eq3.cbcs.legacy.communication.rpc.internal.transport.http.HttpTransport.sendRequest(HttpTransport.java:90)
        at de.eq3.cbcs.legacy.communication.rpc.internal.rpc.RpcClient.sendRequest(RpcClient.java:99)
        at de.eq3.cbcs.legacy.communication.rpc.internal.rpc.RpcClient.invoke(RpcClient.java:87)
        at com.sun.proxy.$Proxy9.listDevices(Unknown Source)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.LegacyBackendClient.listDevices(LegacyBackendClient.java:140)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.DeviceUtil.synchronizedBackendDevices(DeviceUtil.java:127)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer.loadClients(InterfaceInitializer.java:205)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer.handle(InterfaceInitializer.java:130)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer.handle(InterfaceInitializer.java:31)
        at io.vertx.core.eventbus.impl.HandlerRegistration.deliver(HandlerRegistration.java:212)
        at io.vertx.core.eventbus.impl.HandlerRegistration.handle(HandlerRegistration.java:191)
        at io.vertx.core.eventbus.impl.EventBusImpl.lambda$deliverToHandler$3(EventBusImpl.java:505)
        at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:337)
        at io.vertx.core.impl.TaskQueue.lambda$new$0(TaskQueue.java:60)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.ConnectException: Connection refused
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:120)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:179)
        at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:144)
        at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:134)
        at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:612)
        at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:447)
        at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:884)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
        at de.eq3.cbcs.legacy.communication.rpc.internal.transport.http.HttpTransport.sendRequest(HttpTransport.java:86)
        ... 16 more
Feb 17 13:14:47 de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer INFO  [vert.x-worker-thread-3] IO Exception: Could not reinitialize interface: HmIP-RF_java. Remove interface from list.
de.eq3.cbcs.legacy.communication.rpc.RpcIOException: java.net.ConnectException: Connection refused
        at de.eq3.cbcs.legacy.communication.rpc.internal.transport.http.HttpTransport.sendRequest(HttpTransport.java:90)
        at de.eq3.cbcs.legacy.communication.rpc.internal.rpc.RpcClient.sendRequest(RpcClient.java:99)
        at de.eq3.cbcs.legacy.communication.rpc.internal.rpc.RpcClient.invoke(RpcClient.java:87)
        at com.sun.proxy.$Proxy9.listDevices(Unknown Source)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.LegacyBackendClient.listDevices(LegacyBackendClient.java:140)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.DeviceUtil.synchronizedBackendDevices(DeviceUtil.java:127)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer.loadClients(InterfaceInitializer.java:205)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer.handle(InterfaceInitializer.java:130)
        at de.eq3.cbcs.legacy.bidcos.rpc.internal.InterfaceInitializer.handle(InterfaceInitializer.java:31)
        at io.vertx.core.eventbus.impl.HandlerRegistration.deliver(HandlerRegistration.java:212)
        at io.vertx.core.eventbus.impl.HandlerRegistration.handle(HandlerRegistration.java:191)
        at io.vertx.core.eventbus.impl.EventBusImpl.lambda$deliverToHandler$3(EventBusImpl.java:505)
        at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:337)
        at io.vertx.core.impl.TaskQueue.lambda$new$0(TaskQueue.java:60)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.ConnectException: Connection refused
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:120)
        at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:179)
        at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:144)
        at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:134)
        at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:612)
        at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:447)
        at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:884)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
        at de.eq3.cbcs.legacy.communication.rpc.internal.transport.http.HttpTransport.sendRequest(HttpTransport.java:86)
        ... 16 more

Das sollte wohl der Fehler sein.
Gruß

Carlos
FHEM svn auf Intel NUC mit proxmox, 3 Raspberry Pi, signalduino, nanoCUL,  toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

deimos

Hi,

@Carlos Beide Blöcke sind normal. Wird HmIP beim Anlernen angezeigt? Zählt der Dialog runter? Wie genau lernst du die Geräte an? Waren die Geräte schon wo anders angelernt?

Viele Grüße
Alex

carlos

Hallo,
Ich habe einen HmIP-PSM, der war schon mal mit pivccu angelernt.
Habe mehrere Male ein reset gemacht und ihn dann nie mehr wieder mit pivccu noch mit rasperrymatic anlernen können.
Da hatte ich noch einHM-MOD-RPI-PCB im Einsatz.

Jetzt habe ich mir den RPI-RF-MOD geholt und versuche das mit debmatic.

Ich gebe den key und SGTIN(komplet oder auch nur die letzten 4 Stellen, was ist hier eigentlich richtig?) ein, der Dialog zählt runter, aber es passiert nichts.
Gleiches Verhalten mit einem neuen HMIP-BSM.

Gruß
Carlos
FHEM svn auf Intel NUC mit proxmox, 3 Raspberry Pi, signalduino, nanoCUL,  toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

deimos

Hi,

wenn du ihn nie wieder anlernen konntest an verschiedenen Systemen, dann spricht ja viel dafür, dass nicht die Systeme einen Fehler haben, sondern dass du entweder den Werksreset nicht korrekt gemacht hast oder der Aktor eine Macke hat.
Die SGTIN muss komplett angegeben werden un da muss man auch stark auf den Unterschied 0/O und I/1 aufpassen. Einfacher geht es mit dem Anlernen per Internet.

Aber ich frage nochmal: Wie genau machst du das mit dem Anlernen? Wirklich jeder einzelne Schritt, sowohl in der CCU, als auch am Aktor.
Mein stabilster Weg bisher: Werksreset am Aktor, danach Aktor stromlos machen. In der CCU Anlernmodus (Internet) starten. Aktor mit Strom versorgen, nichts drücken. Die 60 Sekunden ablaufen lassen. Mit dem Virgehen hatte ich die Geräte danach immer im Posteingang außer es gab ein Hardware Problem (z.B. defekte Antenne).

Viele Grüße
Alex

carlos


Hi,
Ich mache einen Werksreset wie in der Anleitung beschrieben.
In der CCU gebe ich den key und SGTIN  ein.
Dann starte ich den Anlernmodus.
Der Dialog zählt runter.
Dann stecke ich den HMIP-PSM in die Steckdose, die LED blinkt zum Anlernen.
60 Sekunden später nichts.

Das gleiche über Internet anlernen.

Das gleiche mit dem nagelneuen HMIP-BSM, der noch nirgends angelernt worden ist.

Wenn der HMIP-PSM defekt wäre wurde ich das ja noch verstehen, aber der HMIP-BSM ist neu und kann nicht defekt sein.
Gruß
Carlos
FHEM svn auf Intel NUC mit proxmox, 3 Raspberry Pi, signalduino, nanoCUL,  toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

deimos

Hi,

die Frage wäre jetzt, kannst du den BSM irgendwo anders anlernen? Wenn nein, dann braucht man nicht bei debmatic weitersuchen, sondern irgendwo in deiner Hardware.

Viele Grüße
Alex

carlos

Nein kann ich leider nicht.
Aus meiner Sicht ist das auch kein Debmatic problem.
Ich habe mir ja extra den  RPI-RF-MOD und den HMIP-BSM gekauft, weil ich es mit komplett neuen Geräten testen wollte.
Aber es zeigt sich halt das gleiche Verhalten wie mit dem HM-MOD-RPI-PCB vorher.
Ich bin ratlos.
Kann es an meinem PI3 liegen?
Aber in der CCU sehe ich ja den HM-RCV-50 BidCoS-RF, also sollte das doch mit HMIP auch gehen.
Ich probier mal eins meiner alten HM devices anzulernen, die ich im Moment direkt mit FHEM betreibe.
Hoffentlich geht das wenigstens.
Gruß

Carlos
FHEM svn auf Intel NUC mit proxmox, 3 Raspberry Pi, signalduino, nanoCUL,  toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

deimos

Hi,

ja, das kann an deinem Pi liegen oder auch an deinem Netzteil oder dem fehlenden Ferrit am Kabel. Oder an einem Störsender, da HmIP Listen-Before-Talk macht und wenn da irgendwas auf der Frequenz zu hören ist, dann wird nicht gesendet.

Viele Grüße
Alex

deimos

Hi,

ich habe grade das debmatic Update auf die 3.43.15 hochgeladen.

CUxD und das JP-HB-Devices-addon sind dann die nächsten Sachen, danach kommt die Aufteilung von debmatic in zwei Pakete: Core mit allen Diensten für die Kommunikation mit den Aktoren/Sensoren, also quasi alles, damit die XmlRPC Dienste verfügbar sind und ein zweites Paket mit der WebUI und Rega. Durch diese Trennung kann man dann bei Bedarf nur die XmlRPC Dienste installieren und z.b. den Homematic Manger von Hobbyquaker zu Konfiguration nutzen und ansonsten alle Logic in anderen Systemen abbilden. Aber man hat auch die Möglichkeit die WebUI und die Rega als Logikschicht zu nutzen, wenn man das möchte.

Viele Grüße
Alex

raimundl

@deimos

Ich habe deine pivccu3 mit fhem auf einen Raspi problemlos laufen.
Nun muss man ja auch in die Zukunft schauen:
Ist es sinnvoll sich langsam auf das DebMatic Paket einzustellen?
"Einzustellen" in Form von intensiven mitlesen, Installation auf TestRaspi o.ä...... - also uptodate sein.

Danke und LG
Homematic: Licht, Heizung, Alarm, Alexa ... auf einen RaspberryPi3+mit OS "Stretch" und RPI-RF-MOD mit piVCCU3 (HMCCU), ca. 40 HM Komponenten, alexa, MobileAlerts, Hue Ledstripes....

deimos

Hi,

Zitat von: raimundl am 26 Februar 2019, 09:29:11
Ich habe deine pivccu3 mit fhem auf einen Raspi problemlos laufen.
Nun muss man ja auch in die Zukunft schauen:
Ist es sinnvoll sich langsam auf das DebMatic Paket einzustellen?
"Einzustellen" in Form von intensiven mitlesen, Installation auf TestRaspi o.ä...... - also uptodate sein.

Ich sehe in debmatic keine Ablösung für piVCCU. Je nach Einsatzzweck kann das eine oder das andere besser geeignet sein. Beides pflege ich auch aktiv weiter, so wie auch piVCCU mit der CCU2 Firmware weiterhin Updates bekommt (zumindest solange, wie eQ-3 entsprechende Updates liefert und an den Downloads erkennbar ist, dass es Nutzer gibt).

Viele Grüße
Alex

cho

Zitat von: deimos am 26 Februar 2019, 09:42:54
... Je nach Einsatzzweck kann das eine oder das andere besser geeignet sein. ...

Hi, ich habe deine pivccu auf einem raspi laufen. Vielleicht habe ich es ja überlesen, aber bei welchem Einsatzzweck ist den welche Lösung besser geeignet?
Danke und Grüße

deimos

Hi,

ganz grob: Man will die Original CCU Firmware nutzen mit allem drum und dran: piVCCU. Man braucht nur ein "Gateway" zur Homematic Hardware und hat die gesamte Logik in einer externen Lösung: debmatic.

Viele Grüße
Alex

fhemfreund

Will auch kurz mal meine Erfahrungen hier teilen. Habe das Ganze nun mit einem RPI-RF-MOD zusammen mit Alex' Platine zum Laufen gebracht. Mit einem HM-MOD-RPI-PCB geht es bei mir nicht (nur 1x initial mit BidCos direkt nach einem FW Update des HM-MOD-RPI-PCB - nach einem Reboot keine Funktion mehr). Denke mal dass es irgendwo mit USB zu tun hat (habe nur 3.0 Ports), da Alex bestätigt hat, dass es bei einigen mit dem HM-MOD-RPI-PCB funktioniert.

Beim HMIP Binden ist mir aufgefallen, dass der RPI-RF-MOD in etwas größerer Entfernung zu anderen HM-MOD-RPI-PCBs sein muss (habe diese bei anderen Instanzen noch im Einsatz). Andernfalls klappt das Binden überhaupt nicht.

Bis dato habe ich in meiner Testumgebnung einen HM-MOD-RE8, HMIP-MOD-OC8 und ein HMIP-SPI eingebunden. Die beiden 8 Kanal Empfänger habe ich mal via HMCCU in Fhem eingebunden und kann diese normal steuern. Dabei fällt mir auf, dass HM gefühlt etwas träger als HMIP bei Schaltvorgängen aus der CCU heraus ist. Auch ist der Statusupdate der Kanäle (HM + HMIP) verzögert - das geht nativ in Fhem (BidCos) schneller.

Habe das Ganze in einem Proxmox Cluster in einer VM (Debmatic) / LXCs (Fhem Dev, Prod) laufen. Ist jetzt schön kompakt, da nur noch eine HW für alles verwendet werden kann. Der große Vorteil der Virtualisierung ist, dass man u.a. Backups script-gesteuert im laufenden Betrieb machen kann. Bei Fehlern kann einfach per Restore sehr schnell wieder ein funktionierendes System hergestellt werden.

Andreas