Hallo zusammen,
dieses Thema war leider schon 2015 diskutiert und mit vielen Ratschlägen versehen worden. Habe einige davon nachvollzogen und alle implementiert gefunden.
Trotzdem bekomme ich den Daemon HM485d nicht zum Starten. Nach log ist der Port, egal welchen ich einstelle, bereits "in use"
Wer kann mir da helfen, oder mit welcher Hardware bekomme ich diesen Bus zum Laufen?
Wer hat von HM den 12 Input 7 Output Block denn erfolgreich am FHEM am Laufen?
Bin gerade am Verzweifeln...
Viele Grüße
Arno
post@arno-kahle.de
Hi,
könntest Du den Thread nach Homematic verschieben?
Außerdem:
- Schick mal die Ausgabe von "version".
- Welche Hardware hast Du denn?
- Auf welchem Betriebssystem soll das laufen?
- Hast Du das hier gelesen: https://wiki.fhem.de/wiki/HomeMatic_Wired ?
- Hast Du die "Device specific help" zu HM485 und HM485_LAN gelesen?
- ...und auch: https://wiki.fhem.de/wiki/Serial/Netzwerk-RS485-Adapter
- ...und noch bitte ein list Deines HM485_LAN devices
Ich habe mehrere von diesen 12/7ern und andere HMW-Sachen am Laufen.
Gruß,
Thorsten
Hallo Thorsten,
vielen Dank, bin hier offensichtlich newbee :) und gestern nach Monaten Blockade erheblich genervt gewesen...
Version:
Latest Revision: 13135
File Rev Last Change
fhem.pl 13120 2017-01-17 09:38:18Z rudolfkoenig
96_allowed.pm 13118 2017-01-17 09:28:44Z rudolfkoenig
98_autocreate.pm 11984 2016-08-19 12:47:50Z rudolfkoenig
57_Calendar.pm 12946 2017-01-03 17:22:41Z neubert
10_CUL_HM.pm 13085 2017-01-15 13:24:15Z martinp876
95_Dashboard.pm 12251 2016-10-03 09:45:43Z talkabout
98_dummy.pm 12700 2016-12-02 16:49:42Z rudolfkoenig
91_eventTypes.pm 11984 2016-08-19 12:47:50Z rudolfkoenig
01_FHEMWEB.pm 13128 2017-01-17 21:40:09Z rudolfkoenig
92_FileLog.pm 13069 2017-01-14 20:25:15Z rudolfkoenig
No Id found for 00_HM485_LAN.pm
98_HMinfo.pm 12917 2016-12-31 07:44:34Z martinp876
00_HMLAN.pm 12351 2016-10-16 18:18:00Z martinp876
No Id found for hmw_io12_sw14_dr.pm
No Id found for hmw_io12_sw7_dr.pm
No Id found for hmw_io12_sw7_dr_V3_02.pm
No Id found for hmw_io_12_fm.pm
No Id found for hmw_sen_sc_12_dr.pm
98_HTTPMOD.pm 12220 2016-09-29 18:25:09Z ststrobel
91_notify.pm 11984 2016-08-19 12:47:50Z rudolfkoenig
33_readingsGroup.pm 12774 2016-12-14 17:16:09Z justme1968
99_SUNRISE_EL.pm 12485 2016-11-01 15:18:51Z rudolfkoenig
98_SVG.pm 12482 2016-11-01 09:25:59Z rudolfkoenig
98_telnet.pm 11984 2016-08-19 12:47:50Z rudolfkoenig
00_THZ.pm 13091 2017-01-15 15:58:02Z immi
98_update.pm 12801 2016-12-17 16:52:31Z rudolfkoenig
99_Utils.pm 11984 2016-08-19 12:47:50Z rudolfkoenig
98_version.pm 11987 2016-08-19 17:13:41Z markusbloch
59_Weather.pm 12559 2016-11-13 08:54:54Z borisneubert
98_weblink.pm 11984 2016-08-19 12:47:50Z rudolfkoenig
Blocking.pm 12648 2016-11-24 12:15:25Z rudolfkoenig
Color.pm 11159 2016-03-30 16:08:06Z justme1968
No Id found for Constants.pm
No Id found for Device.pm
DevIo.pm 12716 2016-12-05 09:11:31Z rudolfkoenig
HMConfig.pm 12942 2017-01-03 07:42:02Z martinp876
No Id found for hmw_central.pm
No Id found for hmw_generic.pm
No Id found for hmw_io_4_fm.pm
No Id found for hmw_io_4_fm_V3_02.pm
No Id found for hmw_io_sr_fm.pm
No Id found for hmw_lc_bl1_dr.pm
No Id found for hmw_lc_bl1_dr_V3_02.pm
No Id found for hmw_lc_dim1l_dr.pm
No Id found for hmw_lc_sw2_dr.pm
No Id found for hmw_lc_sw2_dr_V3_02.pm
No Id found for hmw_virtual.pm
HttpUtils.pm 13084 2017-01-15 12:59:16Z rudolfkoenig
RTypes.pm 10476 2016-01-12 21:03:33Z borisneubert
SetExtensions.pm 12935 2017-01-02 19:51:46Z rudolfkoenig
TcpServerUtils.pm 11908 2016-08-06 15:09:55Z rudolfkoenig
No Id found for Util.pm
YahooWeatherAPI.pm 12465 2016-10-29 09:01:31Z borisneubert
Hardware:
Raspi2 B+
RS485 Aufsteckkarte von Linksprite (conrad)
OS:
Linux FhemServer 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l GNU/Linux
Alle Beiträge habe ich gelesen und durchgearbeitet, also gecheckt, ob es auch so eingestellt ist..
HM485_LAN:
DEF localhost:2000
DeviceName localhost:2000
FD 17
HM485d_CommandLine ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
HM485d_PID 26149
HM485d_STATE started
NAME RS485_Bus
NR 117
PARTIAL
STATE opened
TYPE HM485_LAN
hmwId 00000001
msgCounter 0
Devicestatus:
RS485_Bus disconnected
Zugriffsrechte hab ich richtig gesetzt
Leider hab ich gerade noch nicht herausgefunden, wie ich den Thread nach "Homematic" verschieben kann. Ich arbeite weiter dran.
Vielen Dank für Deinen Support :)
Gruß
Arno
Hi,
also ob das mit dieser Aufsteckkarte läuft weiß ich nicht. Das Ding habe ich noch nie gesehen. Hol Dir vielleicht mal so ein Digitus-Teil wie im Wiki beschrieben und probier's damit. Wenn es damit läuft, dann können wir es ggf. nochmal mit der Aufsteckkarte versuchen.
Ansonsten wäre es nett, wenn Du für die ganzen Ausgaben code-Tags verwenden könntest.
Dann hätte ich noch gerne den Inhalt der Datei /opt/fhem/FHEM/10_HM485.pm.
...und die Ausgabe des Befehls "list RS485_bus".
Könntest Du dann noch das Attribut HM485d_logVerbose von RS485_bus auf 5 setzen und das ganze nochmal starten. Dann hätte ich gerne, was das ins Log schreibt.
Gruß,
Thorsten
Hi,
was mir noch einfällt: Kann es sein, dass Du HM485d_bind auf 1 stehen hast und trotzdem den HM485d manuell oder so startest?
Gruß,
Thorsten
Hi Thorsten,
hab den digitus bestellt, ist gerade vergriffen.
Ich starte nichts manuell und ja den HM485d_bind hab ich auf 1 stehen.
Hier der log-Auszug nachdem ich verbose 5 gesetzt habe:
2017.01.19 20:03:17 3: RS485_Bus: Start HM485d with command line: ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
2017.01.19 20:03:17 3: RS485_Bus: HM485d was started with PID: 4543
2017.01.19 20:03:17 3: RS485_Bus: Connect to HM485d delayed for 5 seconds
2017.01.19 20:03:17 3: Opening RS485_Bus device localhost:2000
2017.01.19 20:03:17 3: RS485_Bus: connected to device localhost:2000
2017.01.19 20:03:17 3: RS485_Bus device opened
2017.01.19 20:03:17 1: localhost:2000 disconnected, waiting to reappear (RS485_Bus)
2017.01.19 20:03:18.417 0: HM485d: Cannot create socket HM485d: Can't open server port at 2000: Address already in use
Cannot create socket HM485d: Can't open server port at 2000: Address already in use
2017.01.19 20:03:21 3: RS485_Bus: Start HM485d with command line: ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
2017.01.19 20:03:21 3: RS485_Bus: HM485d was started with PID: 4561
2017.01.19 20:03:21 3: RS485_Bus: Connect to HM485d delayed for 5 seconds
2017.01.19 20:03:21 3: Opening RS485_Bus device localhost:2000
2017.01.19 20:03:21 3: RS485_Bus: connected to device localhost:2000
2017.01.19 20:03:21 3: RS485_Bus device opened
2017.01.19 20:03:21 1: localhost:2000 disconnected, waiting to reappear (RS485_Bus)
2017.01.19 20:03:22.693 0: HM485d: Cannot create socket HM485d: Can't open server port at 2000: Address already in use
Cannot create socket HM485d: Can't open server port at 2000: Address already in use
20
wollte noch mit Danke und Tschüss abschliessen :)
Gruß
Arno
Hi,
also mir ist echt unklar, was da abgeht. Ich habe so ziemlich dieselbe Konfiguration und da klappt es wunderbar.
Es sieht so aus, als ob sich das IO-Device (also RS485_Bus) erst mit dem Daemon verbindet, ihn aber dann wieder "verliert". Das ist ein wenig seltsam.
Kannst Du mal auf Betriebssystemebene ein "ps -aux | grep HM485" machen?
Gruß,
Thorsten
Hi,
etwas seltsam ist auch das hier:
2017.01.19 20:03:17 3: RS485_Bus: Connect to HM485d delayed for 5 seconds
2017.01.19 20:03:17 3: Opening RS485_Bus device localhost:2000
2017.01.19 20:03:17 3: RS485_Bus: connected to device localhost:2000
D.h. er sagt, dass der connect um 5 Sekunden delayed ist, aber dann geht es sofort weiter.
Hast Du irgendwelche Änderungen im 00_HM485_LAN.pm gemacht?
Gruß,
Thorsten
Hi,
irgendwo hatte ich gelesen, dass manchmal eine Delaytime bei Störungen hilft. Das habe ich dann auch mit einer Variable eingestellt:
attr HM485d_startTimeout 3
Die ist allerdings nur 3 sec!
ps aux zeigt den laufenden Prozess, wenn ich nicht das Device komplett gestoppt habe, da es sonst immer nur anläuft abfällt und mir die logs unnütz voll schreibt. Wenn er nicht läuft, ist auch kein Prozess zu finden. so, wie es sein soll, denk ich.
Das sieht so aus, als würde irgendwas den Port belegen, aber beim Wechsel der Nummer ist der gleiche Effekt. Also müsste, blödsinnigerweise, der Prozess sich den Port früher belegen, als er checked, ob er frei ist. Oder den Port versuchen mehrfach aufzumachen.
Wie könnte ich checken, ob der Port frei für den Prozess ist? Ich frag da mal morgen unsere Netzwerker...
Gruß und gute Nacht
Arno
Ach, 00_HM485_LAN.pm hab ich nicht verändert. Trotzdem als Anhang...
Arno
Zitat von: Arno.Kahle am 19 Januar 2017, 23:37:59
attr HM485d_startTimeout 3
Das ist jetzt sehr seltsam, da im Log 5 Sekunden steht.
Gib mir doch endlich mal ein "list RS485_Bus".
Zitatps aux zeigt den laufenden Prozess, ...
Ok, wahrscheinlich falsche Fährte.
Ich kann das ganze leider momentan gar nicht richtig ausprobieren, da ich nicht mit meiner "Produktiv"-Umgebung spielen will und ich ansonsten gerade kein Linux-System ordentlich aufgesetzt habe.
Könntest Du mal versuchen, den Daemon auf Betriebssystemebene manuell zu starten? Am besten, wenn FHEM gar nicht läuft. Die Commandline steht ja im RS485_Bus-Device. Mal sehen, ob das irgendwelche Fehler erzeugt.
Dann vielleicht auch mal HM485d_bind auf 0 setzen und ausprobieren, ob das RS485_Bus sich mit dem Daemon verbindet.
Gruß,
Thorsten
list RS485_Bus:
Internals:
DEF localhost:2000
DeviceName localhost:2000
HM485d_CommandLine ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
HM485d_PID 10122
HM485d_STATE started
NAME RS485_Bus
NR 117
PARTIAL
STATE disconnected
TYPE HM485_LAN
hmwId 00000001
msgCounter 0
Readings:
2017-01-20 08:31:28 state disconnected
Attributes:
HM485d_bind 1
HM485d_device /dev/ttyAMA0
hmwId 00000001
room HM485
Der Startversuch:
root@FhemServer:/opt/fhem# ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
2017.01.20 08:37:14.759 0: HM485d: Cannot create socket HM485d: Can't open server port at 2000: Die Adresse wird bereits verwendet
Cannot create socket HM485d: Can't open server port at 2000: Die Adresse wird bereits verwendet
root@FhemServer:/opt/fhem# ps aux | grep HM485
root 14828 0.0 0.1 3864 1692 pts/0 S+ 08:37 0:00 grep HM485
root@FhemServer:/opt/fhem# ps aux | grep fhem
root 14830 0.0 0.1 3864 1648 pts/0 S+ 08:37 0:00 grep fhem
root@FhemServer:/opt/fhem# ps aux | grep FHEM
root 14833 0.0 0.1 3864 1740 pts/0 S+ 08:38 0:00 grep FHEM
root@FhemServer:/opt/fhem#
Ich hab noch alles für einen zweiten Aufbau da, den ich zum Probieren.
Folgendes interessantes hab ich noch gefunden. Der port ist tatsächlich belegt:
root@FhemServer:/opt/fhem# netstat -tulpn
Aktive Internetverbindungen (Nur Server)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 2265/smbd
tcp 0 0 0.0.0.0:2000 0.0.0.0:* LISTEN 2027/ser2net
tcp 0 0 0.0.0.0:2001 0.0.0.0:* LISTEN 2027/ser2net
tcp 0 0 0.0.0.0:2003 0.0.0.0:* LISTEN 2027/ser2net
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2261/sshd
tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 2027/ser2net
tcp 0 0 0.0.0.0:3001 0.0.0.0:* LISTEN 2027/ser2net
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 2265/smbd
udp 0 0 0.0.0.0:68 0.0.0.0:* 2482/dhcpcd
udp 0 0 10.1.1.98:123 0.0.0.0:* 2172/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 2172/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2172/ntpd
udp 0 0 10.1.1.255:137 0.0.0.0:* 2194/nmbd
udp 0 0 10.1.1.98:137 0.0.0.0:* 2194/nmbd
udp 0 0 0.0.0.0:137 0.0.0.0:* 2194/nmbd
udp 0 0 10.1.1.255:138 0.0.0.0:* 2194/nmbd
udp 0 0 10.1.1.98:138 0.0.0.0:* 2194/nmbd
udp 0 0 0.0.0.0:138 0.0.0.0:* 2194/nmbd
root@FhemServer:/opt/fhem#
Der Prozess dazu:
ps aux | grep ser2net
root 2027 0.0 0.1 1764 1032 ? S Jan18 1:22 /usr/sbin/ser2net -c /etc/ser2net.conf -P /var/run/ser2net.pid
root 14842 0.0 0.1 3868 1744 pts/0 S+ 08:44 0:00 grep ser2net
root@FhemServer:/opt/fhem#
Ich bin dann mal weiter gegangen. Achtung erstmal noch alles unter root.
root@FhemServer:/opt/fhem# kill 2027
root@FhemServer:/opt/fhem# ps aux | grep ser2net
root 14846 0.0 0.1 3864 1692 pts/0 S+ 08:45 0:00 grep ser2net
root@FhemServer:/opt/fhem# ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
^Z
[1]+ Angehalten ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
root@FhemServer:/opt/fhem# bg
[1]+ ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000 &
root@FhemServer:/opt/fhem# ps aux | grep ser2net
root 14849 0.0 0.1 3864 1668 pts/0 S+ 08:46 0:00 grep ser2net
root@FhemServer:/opt/fhem# netstat -tulpn
Aktive Internetverbindungen (Nur Server)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 2265/smbd
tcp 0 0 0.0.0.0:2000 0.0.0.0:* LISTEN 14847/perl
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2261/sshd
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 2265/smbd
udp 0 0 0.0.0.0:68 0.0.0.0:* 2482/dhcpcd
udp 0 0 10.1.1.98:123 0.0.0.0:* 2172/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 2172/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2172/ntpd
udp 0 0 10.1.1.255:137 0.0.0.0:* 2194/nmbd
udp 0 0 10.1.1.98:137 0.0.0.0:* 2194/nmbd
udp 0 0 0.0.0.0:137 0.0.0.0:* 2194/nmbd
udp 0 0 10.1.1.255:138 0.0.0.0:* 2194/nmbd
udp 0 0 10.1.1.98:138 0.0.0.0:* 2194/nmbd
udp 0 0 0.0.0.0:138 0.0.0.0:* 2194/nmbd
root@FhemServer:/opt/fhem#
Also der Daemon läuft jetzt offensichtlich...
Ich werde jetzt mal die Kiste wieder durchbooten und sehen, ob und wann, wo der Prozess automatisch gestartet wird.
Ich meld mich wieder.
Arno
Hallo Thorsten,
der Daemon läuft jetzt nach meinem manuellen Eingriff mit:
kill PID(ser2net)
Internals:
DEF localhost:2000
DeviceName localhost:2000
FD 16
HM485d_CommandLine ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
HM485d_PID 3993
HM485d_STATE started
InterfaceType HMW-SOFT-GW
NAME RS485_Bus
NR 117
PARTIAL
ProtokolVersion 01
STATE opened
SerialNumber SGW0123456
TYPE HM485_LAN
Version 0.2.2
hmwId 00000001
msgCounter 19
Readings:
2017-01-20 08:55:27 state opened
Keepalive:
ok 1
retry 0
Attributes:
HM485d_bind 1
HM485d_device /dev/ttyAMA0
hmwId 00000001
room HM485
Weißt Du, wo der Prozess gestartet wird...? Damit ich ihn dauerhaft abstellen kann.
Der HMW-IO-12-Sw7-DR hat jetzt schon mal anders geblinkt, ist noch nicht zu sehen. Aber dazu muss ich nochmal in Eure Hilfe reinschauen.
Gruß
Arno
Hi Thorsten,
nachdem ich in den Init-Scripten im rc2.d das Startscript für ser2net deaktiviert habe, started fhem jetzt mit dem RS485 Bus durch.
2017.01.20 13:18:24 3: RS485_Bus: Start HM485d with command line: ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2000
2017.01.20 13:18:25 3: RS485_Bus: HM485d was started with PID: 6334
2017.01.20 13:18:25 3: RS485_Bus: Connect to HM485d delayed for 5 seconds
2017.01.20 13:18:26 3: RS485_Bus: connected to device localhost:2000
2017.01.20 13:18:26 1: localhost:2000 reappeared (RS485_Bus)
2017.01.20 13:18:26 3: RS485_Bus: Lan Device Information
2017.01.20 13:18:26 3: RS485_Bus: Protocol-Version: 01
2017.01.20 13:18:26 3: RS485_Bus: Interface-Type: HMW-SOFT-GW
2017.01.20 13:18:26 3: RS485_Bus: Firmware-Version: 0.2.2
2017.01.20 13:18:26 3: RS485_Bus: Serial-Number: SGW0123456
2017.01.20 13:18:26 3: RS485_Bus: Initialize the interface
2017.01.20 13:18:51 1: PERL WARNING: Use of uninitialized value in string eq at FHEM/lib/HM485/FhemWebHelper.pm line 17.
2017.01.20 13:19:21 3: IO12_7MEQ1769873: Initialisierungsfehler 0000BA81 ModelName noch nicht vorhanden
2017.01.20 13:19:36 1: PERL WARNING: Use of uninitialized value in sprintf at fhem.pl line 2166.
Eine Kommunikation zu dem HMW-IO-12-Sw7-DR scheint aber trotzdem noch nicht zu funktionieren. Ein autocreate liefert mir auch keinen Eintrag, wie im Wiki beschrieben, dass man wenigstens erstmal mit Betätigung eines Eingangsschalters einen Eintrag generiert. Die Lampe am Device blinkt nur beim Einschalten.
Daraufhin habe ich das Device einmal gemäß dem Eintrag im Wiki von Hand eingetragen, aber es funktioniert nicht, wie man oben im log sieht.
Internals:
DEF 0000BA81
FailedConfigReads 0
IODev
NAME IO12_7MEQ1769873
NR 35
STATE ???
TYPE HM485
Readings:
2017-01-20 13:45:34 configStatus 0
Attributes:
room RS485_Bus
verbose 5
Und der log des Devices ist leer.
Hast Du da noch weitere Hilfe...
Ich denke, vielleicht ist das jetzt dann auch besser als neues Thema geeignet?
Gruß
Arno
Zitat von: Arno.Kahle am 20 Januar 2017, 14:05:09
nachdem ich in den Init-Scripten im rc2.d das Startscript für ser2net deaktiviert habe, started fhem jetzt mit dem RS485 Bus durch.
Ok, Du hättest auch einfach einen wirklich freien Port nehmen können.
ZitatEine Kommunikation zu dem HMW-IO-12-Sw7-DR scheint aber trotzdem noch nicht zu funktionieren. Ein autocreate liefert mir auch keinen Eintrag, wie im Wiki beschrieben, dass man wenigstens erstmal mit Betätigung eines Eingangsschalters einen Eintrag generiert.
Wie hast Du das ganze genau angeschlossen?
ZitatDie Lampe am Device blinkt nur beim Einschalten.
Daraufhin habe ich das Device einmal gemäß dem Eintrag im Wiki von Hand eingetragen,
Dass das funktioniert ist sehr unwahrscheinlich. Wo steht denn das im Wiki?
Lösche das Device mal wieder. Setze dann im RS485_Bus sowohl verbose als auch HM485d_verbose auf 5 und starte den Daemon neu. (Oder gleich FHEM.) Dann drücke mal auf eine Taste am 12/7 (also eine Taste, die an einem der Eingänge angeschlossen ist). Ich hätte dann gerne das Log.
Zitat
Ich denke, vielleicht ist das jetzt dann auch besser als neues Thema geeignet?
Nee, lass mal "mein 12/7 redet nicht mit mir" gibt es schon ein paar Mal. Es kam auch schon vor, dass die Dinger einfach kaputt sind.
Gruß,
Thorsten
Noch was: Woher weißt Du, dass die Adresse des Geräts 0000BA81 ist?
Gruß,
Thorsten
Hi Thorsten,
ok, ok ... natürlich
McMurphy hatte vorher schon auf Port 3000 probiert, der prompt auch von ser2net belegt war....
Hab beides jetzt laufen mit HM485d auf 2020.
Der Anschluss ist provisorisch mit 40 cm paarweise verdrilltem und geschirmten Kommunikationskabel. Der Schirm liegt am 12/7 auf Masse. Abschluss direkt an den Klemmen jeweils mit 150 Ohm.
list RS485_Bus:
[codeInternals:
DEF localhost:2020
DeviceName localhost:2020
FD 17
HM485d_CommandLine ./FHEM/lib/HM485/HM485d/HM485d.pl --hmwId 00000001 --serialNumber SGW0123456 --device /dev/ttyAMA0 --localPort 2020 --verbose 5
HM485d_PID 2677
HM485d_STATE started
InterfaceType HMW-SOFT-GW
NAME RS485_Bus
NR 117
PARTIAL
ProtokolVersion 01
STATE opened
SerialNumber SGW0123456
TYPE HM485_LAN
Version 0.2.2
hmwId 00000001
msgCounter 65
Readings:
2017-01-20 22:06:35 state opened
Keepalive:
ok 1
retry 0
Attributes:
HM485d_bind 1
HM485d_device /dev/ttyAMA0
HM485d_logVerbose 5
hmwId 00000001
room HM485 ]
Logfile fhem.log und mit grep 485 gefiltert rs485.log im Anhang.
Ich hatte dazu den HM485d erstmal restarted und dann musste ich erst durchs Haus laufen, habe mit der Drahtbrücke an Masse mehrere Kontakte kurz geerdet...
und zurück bis ich stoppen konnte..
Nach dem kurzen Überfliegen, glaub ich, kann man was raus lesen..
Bin auf Deine Antwort gespannt.
Hey, herzlichen Dank und viele Grüße
Arno
Hab noch weiter gemacht und da der autocreate nicht lief doch die Eintragungen von Hand aufgesetzt und angepasst:
list:
Internals:
DEF 00014EA9
FailedConfigReads 0
IODev RS485_Bus
NAME IO12_7MEQ1769873
NR 120
STATE ACK
TYPE HM485
Readings:
2017-01-21 00:06:27 configStatus READING
2017-01-21 00:05:34 state ACK
Attributes:
IODev RS485_Bus
room HM485
verbose 5
In der Anlage ist dann noch einmal der "485" gefilterte Log.
Was fehlt FHEM noch?
Gruß
Arno
Zitat von: Arno.Kahle am 20 Januar 2017, 23:05:04
Abschluss direkt an den Klemmen jeweils mit 150 Ohm.
Kann sein, dass Du damit Deinen 12/7 gekillt hast. Mach den Widerstand raus. Bei HMW darfst Du keinen solchen Busabschluss einbauen. Der so genannte HMW-Busabschluss ist ein Pullup-Pulldown-Widerstandsnetzwerk. Das braucht man aber auch erstmal nicht.
Hi,
der Tastendruck wird definitiv von FHEM empfangen. Die logs sehen so aus, als ob das Device zwar sendet, und FHEM was empfängt, aber das Device nichts empfängt, wenn FHEM sendet. Außerdem geht da irgendwas schief mit Deinen eigenen define-Versuchen und dem autocreate.
Braucht Deine RS485-Schnittstelle irgendwas spezielles um in den Sendemodus zu gehen? Ich gehe fast davon aus, da das wohl meistens der Fall ist, wenn man was direkt an den RasPi ansteckt. Der Digitus-Stick macht das von selbst.
Ansonsten: Mach mal die Verkabelung wie "vorgeschrieben" und nicht mehr. Also +24V an +24V, GND an GND, die beiden Busleitungen und den Taster nach GND. Ansonsten nichts mit Widerständen, Schirmungen oder sonstigem Kram.
Dann am Besten FHEM mal komplett durchstarten (shutdown restart). Wenn alles wieder da ist und der RS485_Bus alles ok zeigt, die Taste drücken.
Gruß,
Thorsten
Moin Thorsten,
ich werd nicht müde Dir zu danken ..... Du liegst verdammt gut in Deinen Ratschlägen. 8)
Hab umgebaut, nach Deinen Angaben..
fhem.cfg befreit von alten Angaben/Definitionen zum 12/7
Raspi aus- und eingeschaltet
Bus RS485 stop
12/7 eingeschaltet
Bus gestartet und nach einer Weile Taste gedrückt
Das Device HMW_IO ... wurde mit autocreate angelegt.
Die Kommunikation zeigt zwar timeouts, aber wenige im Verhältnis zum gesamten Datenaustausch.. Ist das ein Problem, unschön, bzw. irritierend ist es schon ein wenig.
Der Digitus ist für nachher per DHL angekündigt.
Die Verdrahtung von mir war nach einer allgemeinen Beschreibung (der Norm) für den RS485 Bus.... Bis auf die Schirmung, die bei diesem Kabel halt vorhanden ist.
Macht HM da was abweichendes?
Wie bekomme ich jetzt die einzelnen IO-Kanäle, damit ich schalten und auswerten kann?
Gruß
Arno
Hi Thorsten,
digitus ist da und machts möglich :)
Internals:
CFGFN
DEF 00014EA9
FW_VERSION 3.06
FailedConfigReads 0
IODev RS485_Bus
MODEL HMW_IO_12_Sw7_DR
NAME HMW_IO_12_Sw7_DR_MEQ1769873
NR 117
STATE ACK
TYPE HM485
channel_01 HMW_IO_12_Sw7_DR_MEQ1769873_01
channel_02 HMW_IO_12_Sw7_DR_MEQ1769873_02
channel_03 HMW_IO_12_Sw7_DR_MEQ1769873_03
channel_04 HMW_IO_12_Sw7_DR_MEQ1769873_04
channel_05 HMW_IO_12_Sw7_DR_MEQ1769873_05
channel_06 HMW_IO_12_Sw7_DR_MEQ1769873_06
channel_07 HMW_IO_12_Sw7_DR_MEQ1769873_07
channel_08 HMW_IO_12_Sw7_DR_MEQ1769873_08
channel_09 HMW_IO_12_Sw7_DR_MEQ1769873_09
channel_10 HMW_IO_12_Sw7_DR_MEQ1769873_10
channel_11 HMW_IO_12_Sw7_DR_MEQ1769873_11
channel_12 HMW_IO_12_Sw7_DR_MEQ1769873_12
channel_13 HMW_IO_12_Sw7_DR_MEQ1769873_13
channel_14 HMW_IO_12_Sw7_DR_MEQ1769873_14
channel_15 HMW_IO_12_Sw7_DR_MEQ1769873_15
channel_16 HMW_IO_12_Sw7_DR_MEQ1769873_16
channel_17 HMW_IO_12_Sw7_DR_MEQ1769873_17
channel_18 HMW_IO_12_Sw7_DR_MEQ1769873_18
channel_19 HMW_IO_12_Sw7_DR_MEQ1769873_19
Readings:
2017-01-21 15:19:50 R-central_address 00000001
2017-01-21 15:19:50 R-logging_time 2.00
2017-01-21 15:19:49 configStatus OK
2017-01-21 15:19:46 press_long 43
2017-01-21 15:28:53 state ACK
Cache:
Linkparams:
Actuator:
address_start 857
address_step 6
channel_param channel
channels 01 02 03 04 05 06 07 08 09 10 11 12
count 27
peer_param actuator
type link
Parameter:
Actuator:
hidden 1
operations none
Logical:
type address
physical:
HASH(0x32a34c0)
HASH(0x32a3598)
Channel:
hidden 1
operations none
Logical:
default 255
max 255
min 0
type integer
Physical:
interface eeprom
size 1
type integer
Address:
index 0
Sensor:
address_start 45
address_step 28
channel_param channel
channels 13 14 15 16 17 18 19
count 29
peer_param sensor
type link
Parameter:
Channel:
hidden 1
operations none
Logical:
default 255
max 255
min 0
type integer
Physical:
interface eeprom
size 1
type integer
Address:
index 5
Long_action_type:
Logical:
type option
option:
HASH(0x32c9b58)
HASH(0x32c9ba0)
Physical:
interface eeprom
size 0.1
type integer
Address:
index 17
Long_jt_off:
Logical:
type option
option:
HASH(0x32c9df8)
HASH(0x32c9e58)
HASH(0x32c9ea0)
HASH(0x32c9ee8)
HASH(0x32c9f30)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 26.9
Long_jt_offdelay:
Logical:
type option
option:
HASH(0x32cba80)
HASH(0x32cbac8)
HASH(0x32cbb10)
HASH(0x32cbb58)
HASH(0x32cbbb8)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 26.6
Long_jt_on:
Logical:
type option
option:
HASH(0x32cbe70)
HASH(0x32cbeb8)
HASH(0x32cbf00)
HASH(0x32cbf60)
HASH(0x32cbfa8)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 26.3
Long_jt_ondelay:
Logical:
type option
option:
HASH(0x32cc260)
HASH(0x32cc2a8)
HASH(0x32cc308)
HASH(0x32cc350)
HASH(0x32cc398)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 26
Long_multiexecute:
Logical:
default 1
type boolean
Physical:
interface eeprom
size 0.1
type integer
Address:
index 17.2
Long_off_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 16383000
max 982980
min 0
type float
unit s
Special_value:
id not_used
value 16383000
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 24
Long_off_time_mode:
Logical:
type option
option:
HASH(0x32cd870)
HASH(0x32cd8b8)
Physical:
interface eeprom
size 0.1
type integer
Address:
index 17.6
Long_offdelay_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 0
max 982980
min 0
type float
unit s
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 22
Long_on_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 16383000
max 982980
min 0
type float
unit s
Special_value:
id not_used
value 16383000
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 20
Long_on_time_mode:
Logical:
type option
option:
HASH(0x32cfb88)
HASH(0x32cfbd0)
Physical:
interface eeprom
size 0.1
type integer
Address:
index 17.7
Long_ondelay_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 0
max 982980
min 0
type float
unit s
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 18
Long_toggle_use:
Conversion:
type option_integer
Value_map:
1:
device_value 3
from_device 1
parameter_value 0
to_device 1
2:
device_value 2
from_device 1
parameter_value 1
to_device 1
3:
device_value 0
from_device 1
parameter_value 2
to_device 1
Logical:
type option
option:
HASH(0x32d00b0)
HASH(0x32d0110)
HASH(0x32d0158)
Physical:
interface eeprom
size 0.2
type integer
Address:
index 17.4
Sensor:
hidden 1
operations none
Logical:
type address
physical:
HASH(0x32d0458)
HASH(0x32d0530)
Short_action_type:
Logical:
type option
option:
HASH(0x32d06b0)
HASH(0x32d06f8)
Physical:
interface eeprom
size 0.1
type integer
Address:
index 6
Short_jt_off:
Logical:
type option
option:
HASH(0x32d0950)
HASH(0x32d09b0)
HASH(0x32d09f8)
HASH(0x32d0a40)
HASH(0x32d1278)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 15.9
Short_jt_offdelay:
Logical:
type option
option:
HASH(0x32d1530)
HASH(0x32d1578)
HASH(0x32d15c0)
HASH(0x32d1608)
HASH(0x32d1668)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 15.6
Short_jt_on:
Logical:
type option
option:
HASH(0x32d1920)
HASH(0x32d1968)
HASH(0x32d19b0)
HASH(0x32d1a10)
HASH(0x32d1a58)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 15.3
Short_jt_ondelay:
Logical:
type option
option:
HASH(0x32d1d10)
HASH(0x32d1d58)
HASH(0x32d1db8)
HASH(0x32d1e00)
HASH(0x32d1e48)
Physical:
endian little
interface eeprom
read_size 2
size 0.3
type integer
Address:
index 15
Short_off_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 16383000
max 982980
min 0
type float
unit s
Special_value:
id not_used
value 16383000
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 13
Short_off_time_mode:
Logical:
type option
option:
HASH(0x32d4170)
HASH(0x32d41b8)
Physical:
interface eeprom
size 0.1
type integer
Address:
index 6.6
Short_offdelay_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 0
max 982980
min 0
type float
unit s
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 11
Short_on_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 16383000
max 982980
min 0
type float
unit s
Special_value:
id not_used
value 16383000
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 9
Short_on_time_mode:
Logical:
type option
option:
HASH(0x32d5460)
HASH(0x32d54a8)
Physical:
interface eeprom
size 0.1
type integer
Address:
index 6.7
Short_ondelay_time:
Conversion:
1:
factors 0.1,1,60,1000
type float_configtime
value_size 1.6
2:
type integer_integer_map
Value_map:
device_value 49152
mask 49152
parameter_value 65535
Logical:
default 0
max 982980
min 0
type float
unit s
Physical:
endian little
interface eeprom
size 2
type integer
Address:
index 7
Short_toggle_use:
Conversion:
type option_integer
Value_map:
1:
device_value 3
from_device 1
parameter_value 0
to_device 1
2:
device_value 2
from_device 1
parameter_value 1
to_device 1
3:
device_value 0
from_device 1
parameter_value 2
to_device 1
Logical:
type option
option:
HASH(0x32d5988)
HASH(0x32d59e8)
HASH(0x32d5a30)
Physical:
interface eeprom
size 0.2
type integer
Address:
index 6.4
Ui_hint:
Logical:
default
type string
use_default_on_failure 1
Physical:
id ui_hint
interface store
save_on_change 1
type string
Peers:
Sensors:
0:
Sensor:
channel 255
Attributes:
IODev RS485_Bus
firmwareVersion 3.06
model HMW_IO_12_Sw7_DR
room HM485
serialNr MEQ1769873
Zunächst hab ich crc Fehler gehabt. Nachdem ich meine 150 Ohm als Abschlusswiderstand auf die Klemmen von 12/7 geklemmt hab, war alles gut und alles quasi sofort da. Ein Eingang reagiert leider nicht, vielleicht hat der was abbekommen. Ich resette mal, sonst komme ich auch ohne aus.
Also Zusammenfassung:
Leute, keine conrad Aufsteckkarter für RS485 verwenden, sondern wirklich nur die Empfehlung aus den Wiki Digitus.
Vielen Dank noch einmal und Grüße aus Hannover
Das Problem ist gelöst 8) :D
Zitat von: Arno.Kahle am 21 Januar 2017, 15:40:00Nachdem ich meine 150 Ohm als Abschlusswiderstand auf die Klemmen von 12/7 geklemmt hab, war alles gut
Hi,
auch wenn das geklappt hat rate ich davon dringend ab! Vielleicht eher den so genannten Abschlusswiderstand von eq3 einbauen. Siehe auch meine kleine Abhandlung hier:
https://forum.fhem.de/index.php/topic,65493.0.html
Gruß,
Thorsten