Geeignete H/W für 433 MHz Zähler von Sontex / Radian Protkoll

Begonnen von Xcoder, 01 April 2019, 22:29:18

Vorheriges Thema - Nächstes Thema

Xcoder

Hallo,

Ich habe Wasser- und Wärmemengezähler von Sontex. Diese haben eine Bidirektionale Funkschnittstelle mit 433.82 Mhz und FSK Modulation, NRZ Kodierung. Das Protkoll wird mit "Radian 0" und MFD beschrieben.

Eine Beschreibung des Radian Protokolls habe ich gefunden (im Anhang). Da muss Zuerst ein Wecksignal 01010101... gesendet werden und danach Data Frame. Für das Data Frame habe ich noch keine gute Beschreibung gefunden. Hier wurde schon mal etwas beschrieben: http://www.lamaisonsimon.fr/wiki/doku.php?id=maison2:compteur_d_eau:compteur_d_eau. Ich denke damit werde ich Softwareseitig mit etwas Aufwand zurechtkommen.

Welche Hardware ist dafür geeignet? Am liebsten hätte ich ein kompaktes USB Teil, z.B. in dieser Art:

Beide haben offenbar den gleiche uController und Transceiver. Was ist da der Unterschied? Kann ich mit diesen Sticks was anfangen?

Gruss, Xcoder

RaspiLED

Hi,
Siehe fhem wiki selbstbau cul und github bei der a-culfw oder Signalduino firmware für die gleiche Hardware

Wenn Du Dir den Selbstbau nicht zutraust, dann sag bescheid.

Über die Signalduino Firmware solltest Du die besten Fortschritte machen können.

Gruß Arnd


Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...
Raspberry Pi mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, WifiLight2, Bravia, ...

Xcoder

Danke für die Empfehlung. Habe nun einen Signalduino von in-circuit am laufen. In FHEM ist er mit dem SIGNALduino Modul eingebunden.

Für meine Anwendung erfordert aber die Konfiguration des C1101 noch einige Eingriffe.

2-FSK Modulation in MDMCFG2.MOD_FORMAT=0
NRZ: vermutlich MDMCFG2.MANCHESTER_EN=0
Symbol Rate 2400 baud in MDMCFG3.DRATE_M=0x06 und MDMCFG4.DRATE_E=0x83
Frequenzhub 5.5 kHz in DEVIATN=0x1e

Noch nicht klar ist wie ich eine Wake-up Preamble >2 sec mit ~2400 baud 010101010... erzeuge
Danach sollte noch ein Sync bit mit 10-20 ms 0 und 10-20 ms 1 kommen, bevor dann die Daten-Oktets kommen.

Kann das der C1101 direkt?

Bin da aber noch nicht sicher ob das schon alles ist. Vorschläge sind gerne willkommen.

Wie kann ich die Konfigurationsregister des C1101 aus FHEM am einfachsten anpassen?

Gruss, Xcoder

KölnSolar

Die S'duino firmware kenne ich nicht. Aber bei 2-FSK scheint mir dann der S'duino weniger geeignet.  Die aculfw "transparenter" zumal man dort Beispiele für FSK findet(rf_native).
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Xcoder

Verstehe ich jetzt nicht. Der Signalduino hat einen CC1101 Transceiver. Da ist 2-FSK der nach einem Reset aktive Mode. Da glaube ich kaum dass ein Signalduino nicht für 2-FSK geeignet sein soll.

Aber Egal. Habe selber herausgefunden wie ich meine Settings einstelle, auch FHEM heraus. Zuerst  "get radinoCC1101 raw W1256", dann noch W1380, W1400, W1716, und dann noch WS36 und WS34.

Ich bin aber immer noch etwas am Rätseln, wie ich beliebige Signal rausschicke.

Zuerst 2 sec lang 01 mit 2380 baud
dann 15 msec 0 gefolgt von 15 msec 1
dann 13 10 00 00 00 E3 25 54 00 01 2e 67 18 CA 00 A0 40 0D F4 mit 1 start und 1 stop bit

Geht das nur in der Art:

set radinoCC1101 raw SR;;R=1;;P0=-420;;P1=420;;P2=-15000;;P3=15000;;D=01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101012300010011000100000000000000000000000000001110001100100101010101000000000000000001001011100110011100011000110010100000000010100000010000000000110111110100

Hat aber leider nicht funktioniert. Danach ist der SD nicht mehr mit FHEM verbunden...

KölnSolar

ZitatVerstehe ich jetzt nicht. Der Signalduino hat einen CC1101 Transceiver. Da ist 2-FSK der nach einem Reset aktive Mode.
Zitat...S'duino firmware...
Hat herzlich wenig mit der Hardware CC1101 zu tun. S'duino kennt verschiedene Hardwarevarianten.
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Xcoder

Das bringt mich jetzt irgendwie nicht weiter. OK ich war wohl etwas zu wenig präzis. Ich habe die Variante mit CC1101. C1101 war ein Typo.

Ralf9

Zitatset radinoCC1101 raw SR;;R=1;;P0=-420;;P1=420;;P2=-15000;;P3=15000;D=010101010101010101010101..

Dein Sendebefehl ist viel zu lang, er sollte nicht länger sein als ca 250 bis 350 Zeichen.

Es gibt auch einen kombinierten Sendebefehl, damit können mehrere Sendebefehle hintereinander gesendet werden:
SC;R=1;SR;R=2380;P0=-420;P1=420;D=01;SR;R=1;P0=-15000;P1=15000;D=01;SR;R=1;P0=-420;P1=420;D=...

Gruß Ralf

FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Xcoder

Aha, sehr interessant, Danke. Das macht dann schon einiges einfacher.

Die Daten kann man offenbar auch in hex liefern mit der Bit-Periode in C=xxx, oder geht das nur für SM (Manchester)?

SC;R=1;SR;R=2380;P0=-420;P1=420;D=01;SR;R=1;P0=-15000;P1=15000;D=01;SR;R=1;C=420;D=1310000000E3255400012E6718CA00A0400DF4

Oder muss ich mit SR immer alle Daten mit P[0-6]= Perioden encodieren? Gibt es da für ein Tool?

Jetzt fehlen irgendwie noch die Start- und Stop-Bits. Wie geht das?

Gruss

Ralf9

Ja, das mit hex und  C=xxx geht nur bei SM (Manchester)?
Bei SR (Sendraw)  müssen immer alle Daten mit P[0-6]= Perioden gesendet werden.
Für Deinen Fall mit der Wake-up Preamble gibt es kein Tool das dies vereinfachen könnte.

Gruss Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Xcoder

Noch mal danke.

Darf ich wenn ich wenn ich 2 oder mehr Nullen senden will auch einfach P0=-420;P1=420;P2=-420;P3=2000;D=2100000013 senden um z.B. 0x81? 2 wäre dann das start bit und 3 das stop bit?

Auch wenn das gehen sollte, wie kann man damit überhaupt mehr als nur wenige Bytes senden? Ich hätte zum Beispiel dieses Telegram mit nur gerade 15 Bytes:
13 10 00 00 00 E3 25 54 00 01 2e 67 18 ca 00 A0 40 0D F4

Das gibt dann schon 291 Zeichen. Also mehr als 250...

SC;R=1;SR;R=2380;P0=-420;P1=420;D=01;SR;R=1;P0=-15000;P1=15000;D=01;P0=-420;P1=420;P2=-420;P3=2000;D=2000100113200010000320000000032000000003200000000321110001132001001013201010100320000000032000000013200101110320110011132000110003211001010320000000032101000003201000000320000110132111101003

Gruss, Xcoder

Ralf9

Wenn Du mehr als ca 15-20 Byte senden willst wird es schwierig.

Ich sehe ein anderes Problem, in der Protokollbeschreibung steht was von bidirektionaler Komunikation mit acknowledge oder handshake, dies wird vom Signalduino nicht unterstützt.

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Xcoder

Zitat von: Ralf9 am 14 April 2019, 20:18:18
Wenn Du mehr als ca 15-20 Byte senden willst wird es schwierig.

OK, dass ist schon etwas doof... Welche Limite gibt es beim Empfang?

ZitatIch sehe ein anderes Problem, in der Protokollbeschreibung steht was von bidirektionaler Komunikation mit acknowledge oder handshake, dies wird vom Signalduino nicht unterstützt.

Wieso nicht? Ich kann doch etwas senden und danach geht er wieder auf Empfang. Mir ist schon klar das das FHEM Modul das nicht kann. Aber der Stick und die Firmware sollten doch problemlos senden und empfangen können.

Ich habe die Sache nun etwas liegen gelassen da ich vermutete dass sowieso alles mit AES verschlüsselt ist. Zumindest bei den Wasserzählern wohl nun aber doch nicht. Da wird als Protokoll EN60870-5 (M-Bus) angegeben. Hat da jemand kompakte Informationen wie solche Telegramme aufgebaut sein könnten?

Gruss, Xcoder

Xcoder

Kann ich nicht einfach den buf in send.h/send_cmd() vergrössern?

Leider kriege ich es hier weder auf OS-X noch in Linux gebacken als radino CC1101 Version gebacken...

Kannst Du auch noch mal die ander Frage oben anschauen.

Danke, Xcoder

Ralf9

Kannst Du ungefähr abschätzen wieviel Bit Du senden musst, bist Du auf Emfang gehen mußt um auf das  acknowledge oder handshake zu warten?

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Xcoder

Ich denke mit 32 Byte, also 320 bit (1 Start-, 1 Stop-Bit) sollte ich gut zurechtkommen.

Xcoder

Zitat von: Xcoder am 15 Mai 2019, 23:04:45
Leider kriege ich es hier weder auf OS-X noch in Linux gebacken als radino CC1101 Version gebacken...

Mache diesbezüglich mal da weiter:

https://forum.fhem.de/index.php/topic,100634.0.html

Ralf9

ZitatKann ich nicht einfach den buf in send.h/send_cmd() vergrössern?
Mit der firmware von Sidey kenne ich mich nicht aus.

Bei meiner alternativen firmware V 3.3.2.1
https://forum.fhem.de/index.php/topic,82379.msg744554.html#msg744554
gibt es in der RF_RECEIVER.ino ein
#define maxCmdString 350
damit kann die Größe vom CmdString bei Bedarf erhöht werden, es muss dabei darauf geachtet werden, daß das freeram nicht zu klein wird.
Ich habe keine Erfahrung wie klein das freeram werden darf.

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

noby

#18
Hallo,
auch wenn der letzte Beitrag schon etwas zurück liegt. Ich habe unter "Wireless M-bus für cul" bereits versucht, meine Sontex Wasserzähler und den Wärmemengenzähler auszulesen. Die Erkenntnis war, es handelt sich nicht um einen M-Bus sondern eben ein herstellerspezifisches Protokoll Radian mit 433Mhz, das aber dem M-Bus-Standard EN60870-5 folgt.

Da sich alle M-Bus Projekte im Forum auf 866MHz beziehen und ein "Standard-CUL" sich unter MBus nicht auf diese Frequenz einstellen lässt, habe ich auf Anraten im Forum https://forum.fhem.de/index.php/topic,24517.795.html einen SignalDuino mit NanoCUL und CC1101 mit V 3.3.1-RC10 SIGNALduino cc1101 geflasht.

Datenblatt Auszug Funkmodul 581:
Funk  Konformität nach R&TTE 1999/5/CE
Verfahren FSK, bidirektional Frequenz 433,82 MHz Protokoll Radian
EN60870-5 (M-Bus)
Baudrate 2'400 Baud Reichweite ca. 30 m
Datenspeicher EEPROM Tägliche Speicherung
Elektronische Daten Stromversorgung 3V Lithium-Langzeitbatterie Betriebsdauer 10  Jahre
Optische Schnittstelle Protokoll EN60870-5 (M-Bus) Baudrate 2'400 Baud

vorhandene Geräte:
Supercom 581 - 22305872 - Bad/WC kalt
Supercom 581 - 22703799 - Bad/WC warm
Supercom 581 - 22321724 - WZ/Kü kalt
Supercom 581 - 22703800 - WZ/Kü warm
Supercal 739 - 22030551 - Heizungsverteiler


Die Ausführungen über das Versenden von Daten zum Aktivieren der Sontex finde ich spannend, bin aber nicht in der Lage, dieser mit meinem Signalduino433 durchzuführen.
Kannst Du mir helfen?
Raspi 3B, busware cul868, KS300, nanoCul433, jeelinkCul,  2 TX29DTH-IT`s, mySensors Gateway WLAN, 3 mySensors Sensoren, HM IP Wandthermostat 230V, SignalDuino433

charuga

Try to send this hex




command 1


680B0B6853FD52FFFFFFFFEE4DFF0EE616

answer E5

680A0A6873FD510CFD16341200002616

E5

107BFD7816

68F1F16808FD7210819415EE4D0F0E0000000002FD170000046D240B7F2A01FD630401FF1F0403FD6C000000446D3B177FCC41FD270041FD660084016D3B177FCC8101FD27008101FD6600C4016D3B177FCCC101FD2700C101FD660084026D3B177FCC8102FD27008102FD6600C4026D3B177FCCC102FD2700C102FD6600C40F6D3B087F2AC30FFD088B000002FD22030082B030FD22020001FD1EFF03FD1C60090001FF0F2302FF12B0048210FF1228008220FF108F028140FF1D028340FD1C00E1008140FF0F238240FF1258028250FF1250008260FF108F0201FD66A001FF04000CFD0F0005010002FD0D0E000C78108194151F0916



680B0B684BFDB08602000001066CBCAF16

6804046808FDB0500516

680B0B6853FD52FFFFFFFFEE4DFF0EE616

E5


68C0C06873FD510CFD16341200000C7910819415446D3B377FCC41FD270084016D3B377FCC8101FD2700C4016D3B377FCCC101FD270084026D3B377FCC8102FD2700C4026D232B7F2AC102FD280041FD66008101FD6600C101FD66008102FD6600C102FD660402FF12B0048210FF1228008340FD1C00E1008140FF0F238240FF1258028250FF1250008260FF108F02838040FD1C00E100818040FF0F03828040FF12B004829040FF12580282A040FF109A198D8040FF1E00819030FF130F81A030FF130FE116

E5

680B0B684BFDB08602000001066CBCAF16

6804046808FDB0500516

noby

Helo charuga,

thanks for this code. Hopefully you can explain the way to send this message. "command 1" ?

Raspi 3B, busware cul868, KS300, nanoCul433, jeelinkCul,  2 TX29DTH-IT`s, mySensors Gateway WLAN, 3 mySensors Sensoren, HM IP Wandthermostat 230V, SignalDuino433

charuga

#21
i connected to ttl of sontex repeater

I was listening to what the sontex concentrator was sending

then i sent with ttl on the repeater  that commands and got those answers in hex


now i ordered chinese heltec on 433 to try and make arduino with fsk NRZ though i think it is classic wmbus f2 but i am not sure

Xcoder

@charuga can you confirm that 680B0B6853FD52FFFFFFFFEE4DFF0EE616 is what has been sent when you issued the command on the repeater, and what you list after "answer" is the repply from a device (via the ttl as well?)?

Which Sontex repeater are you using?

Did you try to listen on 433 Hz with radio device?

Xcoder

OK. This are normal M-Bus telegrams. Would be now very interesting to see the radio communication between the repeater and the metering device...

Andy_C

Hallo Zusammen,
ist zwar ein altes Thema... aber bei mir brandaktuell ;-). Wir bekommen bei uns Heizungs- und Wasserzähler von Sontex 581. Da ich in einem Mehrfamilienkomplex wohne kann ich mir da nicht all zu viel mitreden. Funktioniert das mit dem Auslesen und einlesen in Fhem oder schaut es da schlecht aus ?

viele Grüße, Andy