HomeMatic Wired - HMW-LAN-Gateway

Begonnen von Dirk, 02 September 2013, 21:38:44

Vorheriges Thema - Nächstes Thema

gevoo

Hallo,

habe das Modul von Dirk wieder etwas erweitert. Alles getestet für Rolloaktoren HMW_LC_Bl1_DR.
Es funktionieren jetzt beim Neustart von FHEM das automatische Initialisieren der Channels und auch die Ermittlung des aktuellen State.
Der Vorgang ist etwa nach 10s abgeschlossen.
Damit kann ich dann auch die StateIcons für das entsprechende Rollo in der *.cfg setzen:
# StateIcon der Channels setzen
define SetLevel at +00:01:00 {\
fhem( "attr WZRolloWest_03 devStateIcon level_[0-9]:shutter_closed level_1[0-9]:shutter_closed level_2[0-9]:shutter_7 level_3[0-9]:shutter_7 level_4[0-9]:shutter_6 level_5[0-9]:shutter_5 level_6[0-9]:shutter_4 level_7[0-9]:shutter_3 level_8[0-9]:shutter_2 level_9[0-9]:shutter_1 level_100:shutter_open");;\
}

Die Initialisierungssequenzen aus meinem vorigen Beitrag können mit dem neuen Modul in der fhem.cfg entfallen.
Die Datei 10_HM485.pm habe ich wieder angehängt.
Viel Spaß beim Testen.

grogra

Zitat von: Dirk am 23 Oktober 2013, 20:59:17
werden konnten bitte am device ein "get infos" ausführen

- Die Device-Config, also die Register im EEprom werden noch nicht automatisch gelesen. Hierfür erst ein "get config all" am Device ausführen. Auch werden erst danach die Konfigurationswerte korrekt angezeigt.

ich bin dabei das HMW-IO-12-Sw7-DR an FHEM zu Koppeln.
aktuelle Version von HM485 habe ich installiert

Der Eintrag in der fhem.save scheind bei meiner Konfiguratrion so wie oben beschrieben noch nicht zu Funktionieren!

Wenn ich die Befehle "get infos" und "get config all" Nutze bekomme ich die ansage  "Please define infos first"

Wo muss ich ansetzen?

Vielen Dank Grüße

grogra




gevoo

Hallo grogra,

schicke doch bitte mal den dazugehörigen Abschnitt in deiner fhem.cfg und aus dem Logfile.

Gruß gevoo

abc2006

Hallo,
ich hänge mich hier auch mal rein. Ich besitze folgende Geräte:
1x HMW-LGW-O-DR-GS-EU
1x HMW-IO-12-Sw14-DR

Diese habe ich an fhem angeschlossen. Die Verschlüsselung habe ich mit NetFinder abgeschaltet und die IP auf .5 geändert. durch rumprobieren habe ich das ganze ans laufen gekriegt und konnte mit RAW-Befehlen die Ausgänge schalten, auch habe ich die Definitionen in FHEM gesehen.
Um den WIKI-Artikel zu schreiben, und eine reproduzierbare Anleitung zu erstellen, habe ich das ganze aus der fhem.cfg wieder gelöscht.
Dann habe ich das LAN-Gateway angelegt:


define HM485_LAN HM485_LAN 192.168.0.5:1000
attr HM485_LAN hmwId 00000001
attr HM485_LAN room HM485


Nun habe ich den Befehl
set HM485_LAN discovery start
ausgeführt. Hierzu eine Frage:

ZitatMit dem Discovery-Befehl wird der gesamte RS485-Bus nach unbekannten HMW Geräten durchsucht.
Nachdem neue Geräte gefunden worden, werden diese automatisch mit FHEM gepairt.

Bedeutet "gepairt", dass die Geräte in der fhem.cfg eingetragen werden? Oder wird Firmwareseitig irgend etwas im 12/14 IO verändert?

Okay, der Discovery-Befehl lieferte im WEB-Frontend gar keine Ausgabe, also hier das Log:

Zitat2014.04.02 17:16:58.846 3: HM485_LAN: Alive: (85) 3030
2014.04.02 17:17:00.265 5: Cmd: >set HM485_LAN discovery start<
2014.04.02 17:17:00.268 3: HM485_LAN: TX: (86) I[0](0,Y,F,B)(98) 00000001 -> FFFFFFFF [3] 7A(z)
2014.04.02 17:17:00.269 5: Triggering HM485_LAN (1 changes)
2014.04.02 17:17:00.269 5: Notify loop for HM485_LAN discovery start
2014.04.02 17:17:00.371 3: HM485_LAN: TX: (87) I[0](0,Y,F,B)(98) 00000001 -> FFFFFFFF [3] 7A(z)
2014.04.02 17:17:00.376 3: HM485_LAN: Alive: (87) 3032
2014.04.02 17:17:00.884 3: HM485_LAN: Alive: (86) 3031
2014.04.02 17:17:10.269 2: HM485_LAN: Discovery - canceled. No results found within 10 seconds!
2014.04.02 17:17:10.273 3: HM485_LAN: TX: (89) I[0](0,Y,F,B)(98) 00000001 -> FFFFFFFF [3] 5A(Z)
2014.04.02 17:17:10.375 3: HM485_LAN: TX: (90) I[0](0,Y,F,B)(98) 00000001 -> FFFFFFFF [3] 5A(Z)
2014.04.02 17:17:10.382 3: HM485_LAN: Alive: (90) 3032
2014.04.02 17:17:10.890 3: HM485_LAN: Alive: (89) 3031

Dann habe ich ein
set HM485_LAN broadcastSleepMode off
abgesetzt. Trotzdem wird das Gerät nicht gefunden.

Ausserdem ist mir noch nicht klar, was der hm485d.pl ist bzw. wo der läuft. Mein erster Versuch funktionierte ausschliesslich mit den zwei fhem-Modulen (oder irgendwas lief, was jetzt nicht mehr läuft)...

Könnt ihr mir einen Tipp geben?
Sobald ich das verstanden habe, würde ich auch gerne begeistert beim Debuggen und Entwickeln unterstützen, falls Bedarf besteht.

Viele Grüße und schonmal Danke für die Hilfe
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

gevoo

Hallo Stephan,

ich habe leider noch kein HMW-IO-12-Sw14-DR im Einsatz. Vielleicht kann ich die mit einigen prinzipiellen Sachen helfen.
Dein HMLan Gateway wird in der Weboberfläche angezeigt und hat den Status "open"?

Ein set HM485_LAN discovery start sollte dein I/O Modul erkennen. Alternativ kannst du an einen Eingang ein Signal anlegen, oder das Modul auf andere Weise überreden etwas über den Bus zu senden. Dann müßte es auch erkannt werden. Ein Neustart von FHEM müßte das gleiche Ergebnis liefern.

"gepairt" bedeutet hier, daß das Modul von fhem erkannt wird und sich ansteuern läßt. Im Modul wird nichts geändert. Es erfolgt lediglich die Ablage einer Eprom- Kopie im Speicher deines Rechners. Deren Werte können in der Weboberfläche angezeigt werden.

Die Datei 10_HM485.pm findest du in deiner fhem- Installation im Unterverzeichnis FHEM.

Die hm485d.pl benötigst du nicht, da du das originale HMWGateway benutzt. Das läßt sich direkt ansprechen. Für andere Busadapter benötigst du hm485d.pl als "Emulator".

Gruß gevoo

abc2006

#140
Zitat von: gevoo am 03 April 2014, 17:29:19
Dein HMLan Gateway wird in der Weboberfläche angezeigt und hat den Status "open"?
check (ja)
Zitat von: gevoo am 03 April 2014, 17:29:19
Ein set HM485_LAN discovery start sollte dein I/O Modul erkennen. Alternativ kannst du an einen Eingang ein Signal anlegen, oder das Modul auf andere Weise überreden etwas über den Bus zu senden. Dann müßte es auch erkannt werden. Ein Neustart von FHEM müßte das gleiche Ergebnis liefern.
Ein "set HM485_LAN discovery start" bricht nach 10 Sekunden erfolglos ab (siehe log im vorherigen Beitrag)
Ein Neustart von fhem (shutdown restart) bringt keine Fortschritte.
Ein reboot des Servers ändert ebenfalls nichts.
Ein an den Eingang angeschlossener Schalter erzeugt folgende Events
014-04-03 23:17:34.080 Global global UNDEFINED HMW_IO_12_Sw14_DR_JEQ0459634 HM485 00009A2B
2014-04-03 23:17:34.249 Global global UNDEFINED HMW_IO_12_Sw14_DR_JEQ0459634 HM485 00009A2B
2014-04-03 23:17:34.765 Global global UNDEFINED HMW_IO_12_Sw14_DR_JEQ0459634 HM485 00009A2B
2014-04-03 23:17:34.933 Global global UNDEFINED HMW_IO_12_Sw14_DR_JEQ0459634 HM485 00009A2B

dadurch wird ein
HM485
HMW_IO_12_Sw14_DR_JEQ0459634
angelegt.
nun kann ich sagen
get HMW_IO_12_Sw14_DR_JEQ0459634 info
was mir die Channels anlegt.
Wie funktioniert das bei Ausgabe-Only-Bausteinen?
Was genau macht der Befehl
get config all
Kann ich auch einzelne Configs auslesen?
Wie kann ich die Ausgänge umschalten/config editieren?


Zitat von: gevoo am 03 April 2014, 17:29:19
Die Datei 10_HM485.pm findest du in deiner fhem- Installation im Unterverzeichnis FHEM.
ja, diese habe ich bereits heruntergeladen. Es hat ja auch schonmal funktioniert. Allerdings wollte ich eine reproduzierbare Anleitung schreiben, und habe die Definitionen gelöscht. Jetzt bekomme ich fhem nicht mehr dazu, sie anzulegen. ;-)

Zitat von: gevoo am 03 April 2014, 17:29:19
Die hm485d.pl benötigst du nicht, da du das originale HMWGateway benutzt. Das läßt sich direkt ansprechen. Für andere Busadapter benötigst du hm485d.pl als "Emulator".

Okay, das bringt schonmal Licht ins Dunkel ... :-)
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

gevoo

Hallo Stephan,

das "set HM485_LAN discovery start" nach 10s abbricht, ist so vorgesehen, wenn kein Modul antwortet. Offenbar ist dein I/O Modul damit nicht zum Datenaustausch zu begeistern. Aus den Events kannst du zumindest die ID deines Moduls herausfinden, hier 00009A2B. Damit könntest du es per Hand in der fhem.cfg definieren, z.B. so: define IOModul HM485 00009A2B.
Bei Ausgabe-Only-Bausteinen ist meist ein Taster zum pairen vorhanden, wie auch bei dem HMW_LC_Bl1_DR. Wenn du die Taste betätigst, wird auch ein Event ausgelöst. Normalerweise sollte der Baustein dann auch mit Autocreate in der fhem.cfg angelegt werden.

Config für einen Channel ist nicht möglich. es wird immer der gesamte Eprom gelesen.

Die Ausgänge beim I/O Modul lassen sich derzeit nur mit RAW- Befehlen schalten. Siehe auch in diesem Thread weiter vorn. Da wollte Dirk noch etwas machen. Ich würde das auch übernehmen, habe aber keines zum Testen.

Gruß gevoo



abc2006

Moin gevoo,

danke für die schnelle Antwort.
Das anlegen der Devices funktioniert bei mir ja, sobald ich einen Eingang betätige. Nur das Discovery macht Probleme.
Wegen dem Umschalten der Ausgänge werde ich mal noch ein wenig in der HMW-Protokoll-Doku lesen, vielleicht kommen mir da ja noch ein paar Erkenntnisse:)

Danke und lg
stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

gevoo

Hallo Stephan,

erkennt fhem von deinem I/O Baustein alle Eingänge und Ausgänge?

Vielleicht könnten wir in Zusammenarbeit das Modul 10_HM485.pm noch etwas dafür erweitern?

Gruß Gert

grogra

Hallo @all,

bin mal wieder an einer Aufgabenstellen wo es bei mir nicht Funkt. Vieleicht habt Ihre einen Tip für mich?

Ich möchte einen zweiten HM485 LAN Betrieben, nach dem der erste super Funktioniert
Nun habe ich folgendes in die Config eingetragen..


# LAN to RS485 Kopplung im EG
define HM485_LAN HM485_LAN 192.xxx.xxx.110:1000
attr HM485_LAN hmwId 00000001
attr HM485_LAN room EGCenter
attr HM485_LAN verbose 4

# LAN to RS485 Kopplung im OG
define OG.HM485 HM485_LAN 192.xxx.xxx.111:1000
attr OG.HM485 hmwId 00000002
attr OG.HM485 room OGCenter
attr OG.HM485 verbose 4


Wenn ich das cfg speichere erhalten ich folgende Meldung


hmwId 00000001 already used. Please use another one.
Please define OG.HM485 first
Please define OG.HM485 first
Please define OG.HM485 first


Hinweis
der erste HM485 ist derzeit deaktiviert

Was mach ich Falsch?

Danke an alle

grogra


Dirk

Hallo grogra,

ZitatIch möchte einen zweiten HM485 LAN Betrieben, nach dem der erste super Funktioniert
Nun habe ich folgendes in die Config eingetragen..
Dieses Szenario ist zwar vorgesehen, aber noch ungetestet.
Evtl hast du hier einen Bug gefunden

Zitatder erste HM485 ist derzeit deaktiviert
Wie hast du den deaktiviert?


Gruß
Dirk

abc2006

Hallo Gert,

Zitat von: gevoo am 04 April 2014, 15:50:13
erkennt fhem von deinem I/O Baustein alle Eingänge und Ausgänge?
Ja, das tut es. Habe auch die Frequenz-Input und Frequenz-Output funktion getestet (dabei wahrscheinlich zwei OC-Ausgänge geschossen) ;-(
Den Analogspannungseingang habe ich dann nicht mehr getestet  :-[ :P

Zitat von: gevoo am 04 April 2014, 15:50:13
Vielleicht könnten wir in Zusammenarbeit das Modul 10_HM485.pm noch etwas dafür erweitern?
(fast) nichts lieber als das... sag mir, was ich tun soll :-)
Habe durchaus ein bisschen Perl-, und programmierkenntnisse, aber bei HMW blick ich (noch) nicht durch...
Gibt es noch andere Module, die mangels Besitz nicht richtig getestet sind?
Baue gerade eine Test-Anlage ( will wissen, was ich im Sommer in meinem Haus verwenden kann), vielleicht komme ich ja noch auf die ein oder andere Idee:-)

@grogra: ich glaube, ich habe irgendwo gelesen, dass das LAN-Gateway nur! auf die ID 1 hört ...

Viele Grüße
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

grogra

an dem gerät liegt ein Strom an..

abc2006

Zitat von: grogra am 04 April 2014, 15:59:06
an dem gerät liegt ein Strom an..

meinst du:

Zitatan dem gerät liegt kein Strom an..

?
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

Dirk

Zitat von: abc2006 am 04 April 2014, 15:58:44
Gibt es noch andere Module, die mangels Besitz nicht richtig getestet sind?
Noch einige. Die letzte Zeit hatte ich der Weiterentwicklung leider nur wenig Zeit spendiert.
Das wird sich aber wieder ändern.

Zitatich glaube, ich habe irgendwo gelesen, dass das LAN-Gateway nur! auf die ID 1 hört ...
Grundsätzlich sind die Adresse 00000001 - 000000FF für die Zentrale vorgesehen.
Das ganze wird aber selbst bei der CCU so nicht genutzt. Daher kann man dort auch nur ein HM-Wired Interface definieren

Gruß
Dirk