Hallo zusammen,
hat schon mal jemand ein zweites HMWired LAN Gateway in Fhem Konfiguriert? Wenn ich mir das Wiki anschaue scheint das nicht ohne weiteres möglich zu sein?
Die HMW-ID's für die HMW-Interfaces könnten dafür im Bereich von 00000001 - 000000FF gewählt werden. Da in den HMW-Geräten die HMW-ID der Zentrale aber mit 00000001 vordefiniert, sollte hier aktuell nur diese ID verwendet werden.
Gibt es dazu nähere Infos?
Gruß
Markus
Hi,
ausprobiert habe ich das noch nicht. Mit der Adresse sehe ich aber kein Problem. Die steht eigentlich im EEPROM der Geräte, d.h. sie kann von der Zentrale geändert werden. Genau das macht FHEM beim Anlernen auch. Es müsste also gehen.
Es kann nur sein, dass es beim Definieren des Geräts das Problem gibt, dass es dem falschen IODevice (also Lan Gateway) zugewiesen wird.
...außerdem weiß ich nicht, was ein Originales HMW-Gateway da treibt. Wenn, dann würde ich das mit dem USB-Teil ausprobieren, da haben wir mehr Kontrolle drüber.
Gruß,
Thorsten
Zitat von: mago0211 am 19 Februar 2016, 20:58:24
Hallo zusammen,
hat schon mal jemand ein zweites HMWired LAN Gateway in Fhem Konfiguriert? Wenn ich mir das Wiki anschaue scheint das nicht ohne weiteres möglich zu sein?
Zwei HMWired Gateways funktionieren bei mir, ich konnte keine Probleme feststellen.
Damit es funktioniert, muß in der fhem.cfg das zweite vor dem ersten Gateway stehen:
define HM485_LAN2 HM485_LAN 192.168.0.94:1000
attr HM485_LAN2 hmwId 00000002
attr HM485_LAN2 room HM485
define HM485_LAN HM485_LAN 192.168.0.7:2000
attr HM485_LAN hmwId 00000001
attr HM485_LAN room HM485
Damit die Reihenfolge egal ist, muß eine Anpassung in "00_HM485_LAN.pm" bei der "sub HM485_LAN_Attr" vorgenommen werden.
Gruß Ralf
Danke Ralf und Thorsten,
werde es morgen ausprobieren ob es klappt. Das das zweite Gateway vor dem ersten stehen muss. Ist natürlich sehr hilfreich zu wissen. :)
Gruß
Markus
Also ganz rund läuft es bei mir noch nicht. Ich habe wie Ralf beschrieben das zweite Gateway vor dem ersten in fhem.cfg eingetragen.
define HM485_LAN_Werkstatt HM485_LAN 192.168.111.111:1000
attr HM485_LAN_Werkstatt group HM485
attr HM485_LAN_Werkstatt hmwId 00000002
Als state wird opend angezeigt.
Leider werden die Devices nicht angelegt (autocreate ist aktiv).
Im Logfile sieht das ganze dann so aus wenn ich einen Schalter am Device betätige.
2016.02.21 11:16:49 5: HM485_LAN_Werkstatt: HM485_Parse: MsgId: 57
2016.02.21 11:16:49 5: HM485_LAN_Werkstatt: HM485_Parse: ProcessEvent
2016.02.21 11:16:49 5: HM485_LAN_Werkstatt: HM485_ProcessEvent: hmwId = 00014DCB msgData = 4B0500DF
2016.02.21 11:16:49 4: HM485_LAN_Werkstatt: Device 00014DCB not defined yet. We need the type for autocreate
2016.02.21 11:16:49 5: HM485_LAN_Werkstatt: HM485_QueueCommand68
2016.02.21 11:16:49 5: HM485_LAN_Werkstatt: HM485_QueueStart: Num: 16
2016.02.21 11:16:49 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: MsgId: 58 Cmd: 101
2016.02.21 11:16:49 4: HM485_LAN_Werkstatt: Event:HASH(0x3dbbeb0)
2016.02.21 11:16:49 5: HM485_LAN_Werkstatt dispatch �:e�����M�K�
Gruß
Markus
Hi,
ich sehe im Log nicht, dass das Gateway tatsächlich was rausschickt. Könntest Du mal ein "reload 10_HM485.pm" machen und es danach nochmal probieren.
...dann bitte wieder das Level-5-Log.
Gruß,
Thorsten
Hatte vorher eine Update des HM485 gemacht und danach ein Shutdown Restart.
Hab wie du geschrieben hast den reload gemacht.
Jetzt steht etwas mehr im Log:
2016.02.21 12:11:24 1: Perfmon: possible freeze starting at 12:11:23, delay is 1.967
2016.02.21 12:11:31 5: HM485_LAN_Werkstatt: HM485_LAN_Write TX: 211
2016.02.21 12:11:31 5: SW: fd02d34b
2016.02.21 12:11:31 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: MsgId: 211 Cmd: 97
2016.02.21 12:11:31 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: Alive: (211) 00 AliveStatus: 00
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: MsgId: 63 Cmd: 101
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: Event:HASH(0x2a26de0)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt dispatch �?e�����N�K>
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: MsgId: 63
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: ProcessEvent
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_ProcessEvent: hmwId = 00014EB6 msgData = 4B00003E
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: Device 00014EB6 not defined yet. We need the type for autocreate
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueCommand68
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStart: Num: 0
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueProcessStep: HASH(0x43ff040)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_Write TX: 212
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_SendQueueNextItem: QID: 00000011
2016.02.21 12:11:33 5: SW: fd0dd453c800014eb6180000000268
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: HM485_LAN_Werkstatt: TX: (212) I[0](0,F,B)(18) 00000002 -> 00014EB6 [3] 68(h)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueSetRequestId start
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueSetRequestId: Id: 212
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: MsgId: 64 Cmd: 101
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: Event:HASH(0x47a4160)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt dispatch �@e�����N�AMEQ1769893
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: MsgId: 64
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: ProcessEvent
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_ProcessEvent: hmwId = 00014EB6 msgData = 4100120003064D455131373639383933
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: Device 00014EB6 not defined yet. We need the type for autocreate
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueCommand68
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStart: Num: 1
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: MsgId: 212 Cmd: 114
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: Response: (212) 1200
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt dispatch ��r
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: MsgId: 212
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: ProcessResponse
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_ProcessResponse: msgData = 1200
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: Device 00014EB6 not defined yet. We need the serial number for autocreate
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueCommand6E
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStart: Num: 2
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStepSuccess called
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStepSuccess: Entries: 0 Index: 0
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueProcessStep: HASH(0x4769830)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: Removing Queue 00000011
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_CheckResendQueueItems: QID: 00000011
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_Write TX: 213
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_SendQueueNextItem: QID: 00000012
2016.02.21 12:11:33 5: SW: fd0dd553c800014eb61a0000000268
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: HM485_LAN_Werkstatt: TX: (213) I[1](0,F,B)(1A) 00000002 -> 00014EB6 [3] 68(h)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueSetRequestId start
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueSetRequestId: Id: 213
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: MsgId: 213 Cmd: 114
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: Response: (213) 1200
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt dispatch ��r:
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: MsgId: 213
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: ProcessResponse
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_ProcessResponse: msgData = 1200
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: Device 00014EB6 not defined yet. We need the serial number for autocreate
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueCommand6E
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStart: Num: 2
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStepSuccess called
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStepSuccess: Entries: 0 Index: 0
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueProcessStep: HASH(0x47731e8)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: Removing Queue 00000012
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_CheckResendQueueItems: QID: 00000012
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_Write TX: 214
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_SendQueueNextItem: QID: 00000013
2016.02.21 12:11:33 5: SW: fd0dd653c800014eb61c000000026e
2016.02.21 12:11:33 4: HM485_LAN_Werkstatt: HM485_LAN_Werkstatt: TX: (214) I[2](0,F,B)(1C) 00000002 -> 00014EB6 [3] 6E(n)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueSetRequestId start
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueSetRequestId: Id: 214
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: MsgId: 214 Cmd: 114
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: Response: (214) 4D455131373639383933
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt dispatch �
�r\MEQ1769893
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: MsgId: 214
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_Parse: ProcessResponse
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_ProcessResponse: msgData = 4D455131373639383933
2016.02.21 12:11:33 2: HM485_LAN: Assigned 00014EB6 as HMW_IO_12_Sw7_DR_MEQ1769893
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStepSuccess called
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueStepSuccess: Entries: 0 Index: 0
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_QueueProcessStep: HASH(0x2a9d780)
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_parseIncommingCommand: Removing Queue 00000013
2016.02.21 12:11:33 5: HM485_LAN_Werkstatt: HM485_LAN_CheckResendQueueItems: QID: 00000013
Gruß
Markus
Hi,
etwas komisch ist, dass das Device vorher die Adresse 00014DCB hatte und das jetzt hat die Adresse 00014EB6 hast Du zwei Devices am Bus 00000002 hängen?
Du müsstest jetzt ein neues Device HMW_IO_12_Sw7_DR_MEQ1769893 haben. Funktioniert es denn? Falls nicht, ist es vorhanden? (Es kann sein, dass Du danach in "Everything" suchen musst.) Wenn es vorhanden ist, aber nicht funktioniert, dann schicke mal ein list davon.
Gruß,
Thorsten
Ja da hängen zwei am Bus 00000002 ich war mir nicht mehr sicher welchen ich vorher gedrückt habe ::)
Mittlerweile hat er das Device auch angelegt frag mich jetzt Bitte nicht was ich gemacht habe.
Es Funktioniert aber nicht.
Hier das list
Internals:
CFGFN
DEF 00014EB6
FailedConfigReads 58
IODev HM485_LAN
NAME HMW_IO_12_Sw7_DR_MEQ1769893
NR 381
STATE RESPONSE TIMEOUT
TYPE HM485
CHANGETIME:
Helper:
Dblog:
Configstatus:
Mydblog:
TIME 1456057643.62881
VALUE FAILED
State:
Mydblog:
TIME 1456057643.64272
VALUE RESPONSE TIMEOUT
Readings:
2016-02-21 13:27:23 configStatus FAILED
2016-02-21 13:27:23 state RESPONSE TIMEOUT
Cache:
Linkparams:
Actuator:
channels 00
Sensor:
channels 00
Peers:
Sensors:
0:
sensor none
Attributes:
room HM485
Was ich gleich auf den ersten Blick sehe ist das das IODev falsch ist. Wie kann ich das umstellen?
Gruß
Markus
Zitat von: mago0211 am 21 Februar 2016, 13:29:24
Was ich gleich auf den ersten Blick sehe ist das das IODev falsch ist. Wie kann ich das umstellen?
Hi,
Tja, einfach so geht das nicht. Ich glaube, dass er einfach immer den ersten nimmt, der zufällig in der Liste der möglichen IODevs ist.
Selbst wenn man das jetzt mit irgendwelchem Perl-Code im Kommandofeld umstellt, dann wird es wahrscheinlich nach dem nächsten Restart wieder falsch sein.
Aber versuch einfach mal das hier im Kommandofeld:
{ $defs{HMW_IO_12_Sw7_DR_MEQ1769893}{IODev} = "HM485_LAN_Werkstatt" }
Danach schau mal im Device, ob es sich tatsächlich geändert hat. Wenn ja, dann ein "get config all". Es könnte sein, dass es dann erstmal get.
Ansonsten muss ich mir das mal genauer anschauen, das geht aber nicht ganz so schnell.
Gruß,
Thorsten
Das Kommando führt bei mir dazu das Fhem abstürzt :o
Schaut also nicht gut aus. Schade.
Muss ich wohl leider doch einen zweiten Raspberry einsetzten und irgendwie über Fhem2Fhem wurschteln. :'(
Trotzdem Danke
Gruß
Markus
Zitat von: mago0211 am 21 Februar 2016, 14:22:35
Das Kommando führt bei mir dazu das Fhem abstürzt :o
Oh, sorry...
Zitat
Muss ich wohl leider doch einen zweiten Raspberry einsetzten und irgendwie über Fhem2Fhem wurschteln. :'(
Nein, das muss irgendwie gehen. Ich schaue mir das spätestens heute Abend mal genauer an und melde mich dann nochmal. Das Problem ist glaube ich nur, dass das Device dem falschen zugeordnet wird.
Gruß,
Thorsten
Zitat von: Thorsten Pferdekaemper am 21 Februar 2016, 14:39:46
Nein, das muss irgendwie gehen. Ich schaue mir das spätestens heute Abend mal genauer an und melde mich dann nochmal. Das Problem ist glaube ich nur, dass das Device dem falschen zugeordnet wird.
Gruß,
Thorsten
Du mach dir keinen Stress wegen mir ;)
Zitat von: mago0211 am 21 Februar 2016, 14:43:06
Du mach dir keinen Stress wegen mir ;)
Ich wollte das sowieso mal angehen, da ich wahrscheinlich auch mal mehrere Linien haben möchte.
Allerdings habe ich es jetzt anders gelöst: Ich leite einfach den Bus selbst durch ein Netzwerkkabel. Da das ganze nur mit 19200 Baud läuft ist es recht stabil.
...aber man muss halt ein Netwerkkabel übrig haben.
Gruß,
Thorsten
Zitat von: mago0211 am 21 Februar 2016, 13:29:24
Was ich gleich auf den ersten Blick sehe ist das das IODev falsch ist. Wie kann ich das umstellen?
Wenn Du in der "10_HM485.pm" bei der "sub HM485_Initialize($)" bei der AttrList das IODev ergänzt, kannst Du das IODev umstellen:
'event-min-interval event-aggregator IODev ' .
Gruß Ralf
Hallo Ralf,
ja das Funktioniert!
Jetzt wird das Gerät vollständig angelegt und Funktioniert auf den ersten Blick auch.
Danke und Gruß
Markus
ich habe es mal mit einer leeren fhem.cfg getestet.
Wenn zwei Wired Gateway definiert sind funktioniert die Zuordnung zu den IODev nicht automatisch.
Die Zuordung zum IODev ist bei mir automatisch erfolgt:
Wenn zuerst das zweite Gateway definiert oder das vorhandene umbenannt wird und dann die devices geladen werden.
Wenn dann das weitere Gateway mit der hmwid0000001 definiert wird, dann passt dort bei den per autocreate erzeugten devices die Zuordung zu dem IODev auch
So wies aussieht hat @deune damals alles richtig gemacht:
Zitat von: deune am 11 August 2015, 19:28:31
Hallo Ralf,
vielleicht ist beim das Glück mit dem Dummen, aber ich habe zwei Lan Gateways und das ohne Probleme.
Das erste Gateway eingerichtet mit hmwid0000001, danach sind alle angeschlossenen Geräte erkannt worden und im Feld IODev das Gateway auch eingetragen.
Nach Anschaffung eines weiteren, habe ich versucht den Zweiten einfach einzurichten, funktionierte erst nicht, da die hmwid0000001 schon vergeben war. Pragmatisch die erste umbenannt auf hmwid0000002, dachte erste das geht in die Hose, aber alle Funktionen blieben erhalten.
Der Weg war nun frei das Zweite einzubinden, alle Geräte wurde wie erwartet eingebunden und in den Eigenschaften ist das richtige Gateway zu finden.
Vielleicht war es Glücksache - funktioniert aber bis jetzt ( seit 3 Tagen).
Herzliche Grüße aus der Eifel
Holger
Gruß Ralf
Hi,
das ganze sollte mit der aktuellen dev-Version (0.7.41) jetzt besser funktionieren.
Im Detail:
- Wenn man einen neuen HM485_LAN anlegt, dann muss man nicht mehr vorher die hmwId des alten ändern. Beim Anlegen sucht sich das Teil automatisch eine neue hmwId. Man kann sie danach natürlich ändern, wenn man will.
- Für Verwender des HM485d: Die hmwId des HM485_LAN wird an den Daemon weitergereicht. (Man muss ihn neu starten, wenn man die hmwId ändert). Dadurch funktioniert das ganze auch mit mehreren Instanzen des HM485d.
- Man kann jetzt in HM485-Geräten das IODev ändern (so wie Ralf es vorgeschlagen hat). Danach sollte man ein "get config all" machen, damit die neue hmwId auch ins physikalische Gerät eingetragen wird.
- Das define erlaubt die Angabe eines IODev, also in etwa "define blabla HM485 0012AB44 hm485_lan".
- Autocreate benutzt das neue define. D.h. die Geräte werden in FHEM automatisch mit dem richtigen IODevice angelegt.
Die Doku und das Wiki fehlt noch, aber es ist jetzt auch so spät genug.
Gruß,
Thorsten
...so, 0.7.42 hat jetzt auch die Änderungen in der Doku (Commandref).
Gruß,
Thorsten
Hallo Thorsten,
ich habe es jetzt noch mal mit deiner neuen dev Version Probiert. Bisher konnte ich keine Probleme feststellen. Es wurde automatisch die nächste hmwId vergeben und für die neuen Geräte wurde als IODev das richtige zugewiesen.
Danke und Gruß
Markus
Zitat von: mago0211 am 25 Februar 2016, 20:27:26
ich habe es jetzt noch mal mit deiner neuen dev Version Probiert. Bisher konnte ich keine Probleme feststellen. Es wurde automatisch die nächste hmwId vergeben und für die neuen Geräte wurde als IODev das richtige zugewiesen.
Hi,
Danke für die Rückmeldung!
Gruß,
Thorsten