Hallo zusammen,
ich will mich an das Abenteuer machen und die Daten von drei Wärmezählern einer Gastherme in fhem holen. Dazu habe ich mir das entsprechende M-Bus-Modul (https://www.brummerhoop.com/de/f90-3-oms-funk-schnittstelle-868mhz?number=50041624) (868 MHz) sowie zwei Impuls-Ausgangsmodule (https://www.brummerhoop.com/de/f90-3-1-fach-impulsausgang-schnittstelle?number=50041620) besorgt. Das alles möchte ich mit dem WMBUS-Modul (https://wiki.fhem.de/wiki/WMBUS) einbinden.
Da die Heizung im Keller und ich im 4. OG bin, wird das Funksignal vermutlich nicht bis nach oben dringen. Daher der Plan, im Heizungskeller einen zweiten Raspi (Zero?) mit CUL laufen zu lassen und per fhem-fhem-Kopplung oder ser2net einzubinden (Ethernet ist im Heizungskeller vorhanden, da aber nur eine abgespeckte Fritzbox, kommt https://wiki.fhem.de/wiki/CUL_ueber_Netz wohl eher nicht in Frage?).
Nun meine Frage, denn die mittlerweile erhältliche Fülle an CULs hat mich verwirrt: Welchen sollte ich nehmen? Wiki sagt:
ZitatAktuell kann ein CUL und verwandte Geräte die die culfw verwenden sowie ein Amber Wireless AMB8465M dafür verwendet werden
Nehme ich da also einen kpl. (Nano-)Cul? Oder würde es reichen, ein CC1101 Modul mit dem Pi Zero zu verheiraten (wie? Habe keine Anleitungen dazu gefunden).
Alternativvorschläge werden natürlich auch dankend entgegen gekommen...
Danke & Grüße
Martin
Wenn Du löten kannst, dann kannst Du auch ein Maple Cul oder Maple sduino nehmen, für beide gibts auch eine LAN Variante.
Meine sduino firmware V 4.2.2 läuft auch auf dem ESP32 und kann WMBUS
Gruß Ralf
Danke Ralf,
Löten ist kein Problem, solange es keine SMDs oder Prozessoren sind (habe witzigerweise gerade ein anderes M-Bus/Esp32/Arduino-Emulator-Projekt (https://github.com/picohari/atmega128_alpine-mbus-emulator) umgesetzt, wobei es da um einen völlig anderen M-Bus geht - den, über den alte Jaguar/Alpine-Autoradios mit dem CD-Wechsler im Kofferraumkommunizieren).
Hardware (ESP32 und CC1101) müsste ich sogar noch rumliegen haben.
Was mir noch nicht klar ist: Wenn ich das Teil dann im Keller neben der Heizung empfangen lasse - wie bekomme ich die Daten ins Dachgeschoss (Netzwerk + WLAN ist im Keller vorhanden)? Muss ich dann zusätzlich noch einen Raspi mit fhem im Keller am Laufen haben oder bekomme ich die Werte übers Netzwerk (z.B. mit so etwas wie ser2net) ins "eigentliche" fhem
Grüße
Martin
Hallo Martin,
für den Maple gibts eine Platine und für den ESP32 gibts noch keine Platine.
Das 868 MHz cc1101 Modul ist so eine Art SMD die Anschlüsse haben einen Abstand von 2mm, zum Löten sind sehr gute Augen oder eine Lupenleuchte zu empfehlen.
Mit einem ESP8266 (zb. D1 mini) oder einem LAN zu seriel Umsetzer (USR-TCP232-T2) gehts auch mit einem NanoCul
https://forum.fhem.de/index.php/topic,69042.msg605241.html#msg605241
ZitatWas mir noch nicht klar ist: Wenn ich das Teil dann im Keller neben der Heizung empfangen lasse - wie bekomme ich die Daten ins Dachgeschoss (Netzwerk + WLAN ist im Keller vorhanden)? Muss ich dann zusätzlich noch einen Raspi mit fhem im Keller am Laufen haben oder bekomme ich die Werte übers Netzwerk (z.B. mit so etwas wie ser2net) ins "eigentliche" fhem
Nein, da ist kein zusätzlicher Raspi nötig, das geht übers Netzwerk. Das Fhem Modul verbindet sich über Telnet.
Gruß Ralf
Vielen Dank Ralf,
Zitat von: Ralf9 am 17 September 2022, 12:47:04
für den Maple gibts eine Platine und für den ESP32 gibts noch keine Platine.
Das 868 MHz cc1101 Modul ist so eine Art SMD die Anschlüsse haben einen Abstand von 2mm, zum Löten sind sehr gute Augen oder eine Lupenleuchte zu empfehlen.
Sollte ich hinbekommen, habe es schon bei ein paar Homebrew-Geräten geschafft (dank einer antiken Standlupe von Zeiss).
In der Bastelkiste habe ich, neben ein paar cc1101, noch folgendes:
1. DollaTek ESP32 4MB Psram 4Mb Flash WiFi Modul Bluetooth ESP32-Wrover
2. AZDelivery ESP32 NodeMCU Module WLAN WiFi Dev Kit C Development Board mit CP2102
3. MakerHawk ESP32 LoRa Modul SX1276 868 915 MHz Wifi Modul IoT Karte Dual Core 240 MHz CP2102 Geringer Stromverbrauch mit 0,96 Zoll OLED Display und Antenne für Arduino
Ist da einer besonders empfehlenswert bzw. würden die mit Deiner Firmware überhaupt laufen? Wie wäre da jeweils der cc1101 (mir würde ja erstmal einer reichen) zu verdrahten?
Viele Grüße
Martin
Getestet habe ich es mit dem DEVKIT V1, mit den DEV Kit C sollte es aber auch funktionieren, da es auch das ESP-WROOM-32 verwendet.
ZitatWie wäre da jeweils der cc1101 (mir würde ja erstmal einer reichen) zu verdrahten?
Siehe ab hier
https://forum.fhem.de/index.php/topic,83273.msg1234529.html#msg1234529
Gruß Ralf
So, jetzt wieder hier weiter, da M-BUS usw.
Ich habe jetzt mal alles zusammengelötet (ein Funkmodul) und in fhem eingebunden. Das Teil lebt auch:
Internals:
CFGFN
Clients :CUL_TCM97001:SD_WS:SD_WS07:SD_WS09:Hideki:LaCrosse:OREGON:CUL_EM:CUL_WS:CUL_TX:SD_AS:IT: :FS10:FS20:SOMFY:FLAMINGO:SD_WS_Maverick:KOPP_FC:PCA301:SD_BELL:SD_GT:SD_RSL:SD_UT:WMBUS:HMS: :IFB:CUL_FHTTK:FHT:RFXX10REC:Revolt:Dooya:Fernotron:SD_Keeloq:SD_Rojaflex:Siro:LTECH:SD_Tool:SIGNALduino_un:
ClientsKeepOrder 1
DEF 192.168.50.121:23
DMSG nothing
DevState initialized
DeviceName 192.168.50.121:23
FD 139
FUUID 632b1106-f33f-9bf2-ceb6-80502ecf21034593
IDsNoDispatch 2,43.1,72.1,82,87,88
LASTDMSG nothing
LASTDMSGID nothing
NAME mkduino
NR 6012
PARTIAL
STATE opened
TIME 1663766790.19728
TYPE SIGNALduino
b_ccconf b=0 rx=0 freq:868.350MHz bWidth:812KHz rAmpl:33dB sens:8dB (DataRate:17257.69Baud) [boffs=0000]
b_ccconfFSK N=6 ccmode=3 sync=2DD4 Modulation:2-FSK (SYNC_MODE:16/16 + carrier-sense above threshold) DEVIATN:88.867kHz
cc1101_frequency 868.350
sendworking 0
version V 4.2.2-dev220712 SIGNALduinoAdv ESP32 cc1101 (R: B-*) - compiled at Sep 18 2022 19:22:57
versionmodul v3.4.14-dev_ralf_21.07.
versionprotoL v3.4.7-ralf_24.06.
MatchList:
01:IT ^i......
02:CUL_TCM97001 ^s[A-Fa-f0-9]+
03:SD_RSL ^P1#[A-Fa-f0-9]{8}
04:OREGON ^(3[8-9A-F]|[4-6][0-9A-F]|7[0-8]).*
05:CUL_TX ^TX..........
06:SD_AS ^P2#[A-Fa-f0-9]{7,8}
07:Hideki ^P12#75[A-F0-9]+
09:CUL_FHTTK ^T[A-F0-9]{8}
10:SD_WS07 ^P7#[A-Fa-f0-9]{6}[AFaf][A-Fa-f0-9]{2,3}
11:SD_WS09 ^P9#F[A-Fa-f0-9]+
12:SD_WS ^W\d+x{0,1}#.*
13:RFXX10REC ^(20|29)[A-Fa-f0-9]+
14:Dooya ^P16#[A-Fa-f0-9]+
15:SOMFY ^Ys[0-9A-F]+
16:SD_WS_Maverick ^P47#[A-Fa-f0-9]+
17:SD_UT ^P(?:14|20|24|26|29|30|34|46|56|68|69|76|78|81|83|86|90|91|91.1|92|93|95|97|99|104|105|114|118|121|123)#.*
18:FLAMINGO ^P13\.?1?#[A-Fa-f0-9]+
19:CUL_WS ^K[A-Fa-f0-9]{5,}
20:Revolt ^r[A-Fa-f0-9]{22}
21:FS10 ^P61#[A-F0-9]+
22:Siro ^P72#[A-Fa-f0-9]+
23:FHT ^81..(04|09|0d)..(0909a001|83098301|c409c401)..
24:FS20 ^81..(04|0c)..0101a001
25:CUL_EM ^E0.................
26:Fernotron ^P82#.*
27:SD_BELL ^P(?:15|32|41|42|57|79|96|98|112)#.*
28:SD_Keeloq ^P(?:87|88)#.*
29:SD_GT ^P49#[A-Fa-f0-9]+
30:LaCrosse ^(\S+\s+9 |OK\sWS\s)
31:KOPP_FC ^kr..................
32:PCA301 ^\S+\s+24
33:SD_Rojaflex ^P109#[A-Fa-f0-9]+
34:WMBUS ^b.*
35:HMS ^810e04......a001
36:IFB ^J............
37:LTECH ^P31#[A-Fa-f0-9]{26,}
90:SD_Tool ^pt([0-9]+(\.[0-9])?)(#.*)?
X:SIGNALduino_un ^[u]\d+#.*
QUEUE:
READINGS:
2022-09-21 15:54:30 cc1101_config freq:0.000MHz bWidth:812KHz rAmpl:24dB sens:4dB (DataRate:24.80Baud)
2022-09-21 15:54:30 cc1101_config_ext Modulation:2-FSK (SYNC_MODE:No preamble/sync) DEVIATN:1.587kHz
2022-09-21 15:56:33 cmdBank
B: b=0 rx=0 freq:868.350MHz bWidth:812KHz rAmpl:33dB sens:8dB (DataRate:17257.69Baud) [boffs=0000]
N=6 ccmode=3 sync=2DD4 Mod
2022-09-21 15:30:56 config MS=1;MU=1;MC=1;Mred=0;RX=0_MScnt=4;maxMuPrint=768;maxMsgSize=1024;maxNumPat=8;Mdebug=1;MdebFifoLimit=150/200
2022-09-21 15:57:43 ping OK
2022-09-21 15:49:26 raw V 4.2.2-dev220712 SIGNALduinoAdv ESP32 cc1101 (R: B-*) - compiled at Sep 18 2022 19:22:57
2022-09-21 15:53:21 rfmode DP100_WH51_17241 => ok,N=6,ccmode=3
2022-09-21 15:26:33 state opened
getcmd:
hmccu:
keepalive:
ok 0
retry 0
mcIdList:
10
11
12
18
43
47
52
57
58
96
mnIdList:
msIdList:
0
0.1
0.2
0.3
0.4
0.5
1
3
3.1
4
6
7
13
13.2
14
15
17
20
23
25
32.1
33
33.1
33.2
35
41
49
51
53
54.1
55
65
68
74.1
90
91.1
93
100
101
102
103
106
107
108
109
112
muIdList:
8
9
13.1
16
17.1
19
21
22
24
26
27
28
29
30
31
32
34
36
37
38
39
40
42
44
44.1
45
46
48
49.1
49.2
50
54
56
59
60
61
62
64
66
67
69
70
71
72
73
74
78
79
80
81
83
84
85
86
89
91
92
94
95
97
98
99
104
105
110
111
200
201
rfmodesets:
rfmode Avantek_433_FSK,DP100_WH51_17241,HoneywActivL_SlowRf_FSK,KOPP_FC_4785,Lacrosse_mode1_17241,Lacrosse_mode2_9579,PCA301_mode3_6631,Rojaflex_433_GFSK,SlowRF_ccFactoryReset,WS1600_TX22_mode5_8842,bresser_5in1_8220,custom
rfmodesetsTesting:
rfmodeTesting
Attributes:
room Signalduino
Aber jetzt bin ich ein wenig verloren, trotz oder wegen der vorbildlich umfangreichen Dokumentation an verschiedenen Stellen.
Da das MBUS-Zubehör für die Wärmezähler noch nicht vollständig da ist: Wie kann ich denn z.B. testen, ob ich alles korrekt zusammen gelötet habe?
Müssten damit nicht auch die Daten meiner Wetterstation empfangen werden (s. https://forum.fhem.de/index.php?topic=127623.new;topicseen#new - wo Du, Ralf, mich schon unterstützt hattest). Der Jeelink empfängt die Daten mit
initCommands 868345f v
bzw.
settings
(RFM69CW f:868345 r:17241)
Habe es beim Esp32 mit
set rfmode DP100_WH51_17241
versucht, aber da scheint nichts zu kommen. Zumindest sehe ich nichts im Event Monitor, oder würde sich das an vorhandene KeyValueProtocol-Devices oder an das HP1000 dranhängen?
Sollte es, und wenn ja: Was wäre dafür zu tun?
Andererseits ergibt V ja
raw: V 4.2.2-dev220712 SIGNALduinoAdv ESP32 cc1101 (R: B-*) - compiled at Sep 18 2022 19:22:57
und in R: B-* bedeutet der Bindestrich ja wohl, dass das Modul nicht erkannt wurde.
EDIT: Bindestrich ist weg. Man muss wohl auch bei alleiniger Verwendung von B die Bank mit get sduino cmdBank 1 initialisieren. Hatte an anderer Stelle gelesen, "Es ist keine cc1101 Modul konfiguration notwendig, das Modul B wird automatisch initialisiert."
Empfangen wird aber anscheinend immer noch nichts.
/EDIT
Mache ich etwas falsch oder heißt es: Lötung erneut checken?
Danke & Grüße
Martin
ZitatR: B-* bedeutet der Bindestrich ja wohl, dass das Modul nicht erkannt wurde.
ja, der Bindestrich bedeutet, daß das Modul nicht erkannt wurde
ein i bedeutet, daß das Modul erkannt wurde, aber noch keine Bank zugeodnet wurde.
Per Default wird dem Modul B die Bank 0 zugeordnet, es kann aber jedem Modul jede beliebige Bank zugeordnet werden
Ich habe hier noch was dazu geschrieben
https://forum.fhem.de/index.php/topic,83273.0.html