Moin zusammen,
ich habe mir einen Signalduino mit ESP8266 und CC1101 für 868MHz zusammengebaut.
So ist er definiert:
define Signalduino_868_ESP8266 SIGNALduino 10.20.30.50:23
attr Signalduino_868_ESP8266 cc1101_frequency 868
attr Signalduino_868_ESP8266 verbose 5
# CFGFN
# Clients :CUL_EM:CUL_FHTTK:CUL_TCM97001:CUL_TX:CUL_WS:Dooya: :FHT:FLAMINGO:FS10:FS20: :Fernotron:Hideki:IT: :KOPP_FC:LaCrosse:OREGON:PCA301:RFXX10REC:Revolt: :SD_AS:SD_Rojaflex: :SD_BELL:SD_GT:SD_Keeloq:SD_RSL: :SD_UT:SD_WS07:SD_WS09:SD_WS:SD_WS_Maverick: :SOMFY: :Siro:SIGNALduino_un
# ClientsKeepOrder 1
# DEF 10.20.30.50:23
# DMSG W89#1E158B14D2
# DevState initialized
# DeviceName 10.20.30.50:23
# FD 91
# FUUID 65b0fe62-f33f-b105-8154-a3a153eeb3d8cebe
# IDsNoDispatch 2,72.1,82
# LASTDMSG W89#1E158B14D2
# LASTDMSGID 89
# MSGCNT 40
# NAME Signalduino_868_ESP8266
# NR 664
# PARTIAL
# RAWMSG MU;P0=749;P1=-718;P2=276;P3=-480;P4=505;P5=-224;D=01232323454545452323232345234523454523232345250545232323452345232345452345232345234501010101232323454545452323232345234523454523232345234545232323452345232345452345232345232;CP=2;R=14;
# RSSI -67
# STATE opened
# TIME 1706102619.45083
# TYPE SIGNALduino
# cc1101_available 1
# eventCount 102
# sendworking 0
# unknownmessages
# version V 3.5.1-RC1 SIGNALESP cc1101 (chip CC1101) - compiled at Jun 18 2023 10:45:20
# versionProtocols 1.56
# versionmodul 3.5.6+20231214
# DoubleMsgIDs:
# MatchList:
# 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|127|128|130|132)#.*
# 18:FLAMINGO ^P13\.?1?#[A-Fa-f0-9]+
# 19:CUL_WS ^K[A-Fa-f0-9]{5,}
# 1:IT ^i......
# 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]+
# 2:CUL_TCM97001 ^s[A-Fa-f0-9]+
# 30:LaCrosse ^(\S+\s+9 |OK\sWS\s)
# 31:KOPP_FC ^kr\w{18,}
# 32:PCA301 ^\S+\s+24
# 33:SD_Rojaflex ^P109#[A-Fa-f0-9]+
# 3:SD_RSL ^P1#[A-Fa-f0-9]{8}
# 4:OREGON ^(3[8-9A-F]|[4-6][0-9A-F]|7[0-8]).*
# 5:CUL_TX ^TX..........
# 6:SD_AS ^P2#[A-Fa-f0-9]{7,8}
# 7:Hideki ^P12#75[A-F0-9]+
# 9:CUL_FHTTK ^T[A-F0-9]{8}
# X:SIGNALduino_un ^[u]\d+#.*
# QUEUE:
# READINGS:
# 2024-01-24 14:30:43 cc1101_config Freq: 868.300 MHz, Bandwidth: 325 kHz, rAmpl: 42 dB, sens: 8 dB, DataRate: 5.60 kBaud
# 2024-01-24 14:30:43 cc1101_config_ext Modulation: ASK/OOK
# 2024-01-24 14:30:44 cc1101_patable C3E = 00 84 00 00 00 00 00 00
# 2024-01-24 14:25:46 config MS=1;MU=1;MC=1;Mred=1
# 2024-01-24 14:18:06 freeram 41784
# 2024-01-24 15:20:42 ping OK
# 2024-01-24 14:30:42 state opened
# additionalSets:
# helper:
# keepalive:
# ok 0
# retry 0
# mcIdList:
# 10
# 11
# 12
# 18
# 43
# 47
# 52
# 57
# 58
# 96
# 119
# 129
# mnIdList:
# 100
# 101
# 102
# 103
# 107
# 107.1
# 108
# 109
# 112
# 115
# 116
# 116.1
# 117
# 123
# 125
# 126
# 131
# msIdList:
# 0
# 0.1
# 0.2
# 0.3
# 0.4
# 0.5
# 1
# 3
# 3.1
# 4
# 6
# 7
# 7.1
# 13
# 13.2
# 14
# 15
# 17
# 20
# 23
# 25
# 33
# 33.1
# 33.2
# 35
# 41
# 49
# 51
# 53
# 54.1
# 55
# 65
# 68
# 74.1
# 87
# 88
# 90
# 91.1
# 93
# 106
# 113
# 118.1
# 127.1
# 128.1
# 130
# muIdList:
# 8
# 9
# 13.1
# 16
# 17.1
# 19
# 20.1
# 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
# 76
# 78
# 79
# 80
# 81
# 83
# 84
# 85
# 86
# 89
# 91
# 92
# 94
# 95
# 97
# 98
# 99
# 104
# 105
# 110
# 111
# 114
# 118
# 120
# 121
# 122
# 127
# 128
# 132
#
setstate Signalduino_868_ESP8266 opened
setstate Signalduino_868_ESP8266 2024-01-24 14:30:43 cc1101_config Freq: 868.300 MHz, Bandwidth: 325 kHz, rAmpl: 42 dB, sens: 8 dB, DataRate: 5.60 kBaud
setstate Signalduino_868_ESP8266 2024-01-24 14:30:43 cc1101_config_ext Modulation: ASK/OOK
setstate Signalduino_868_ESP8266 2024-01-24 14:30:44 cc1101_patable C3E = 00 84 00 00 00 00 00 00
setstate Signalduino_868_ESP8266 2024-01-24 14:25:46 config MS=1;;MU=1;;MC=1;;Mred=1
setstate Signalduino_868_ESP8266 2024-01-24 14:18:06 freeram 41784
setstate Signalduino_868_ESP8266 2024-01-24 15:20:42 ping OK
setstate Signalduino_868_ESP8266 2024-01-24 14:30:42 state opened
Er scheint auch zu empfangen. Wenn ich bspw. den Homematic Rollladenaktor mit der Homematic-Fernbedienung ansteuere, sehe ich soetwas im Log:
2024.01.24 14:23:39 5: Signalduino_868_ESP8266: Read, RAW rmsg: Mu;���;��;��;�˂;���;��;��;���;D␁##C␁␁␁VVVV␁␁␁␁V␁V␁VV␁␁␁V␁VW␁␁␁V␁V␁␁VV␁V␁␁V␁␁####␁␁␁VVVV␁␁␁␁V␁V␁VV␁␁␁V␁VV␁␁␁V␁V␁␁VV␁V␁␁V␁␁####␁␁␁VVVV␁␁␁␁V␁V␁VV␁␁␁V␁VV␁␁␁V␁V␁␁V;C0;R10;O;␃
2024.01.24 14:23:39 4: Signalduino_868_ESP8266: Read, msg READredu: MU;P0=260;P1=-482;P2=748;P3=-715;P4=2195;P5=499;P6=-239;P7=-176;D=01232343010101565656560101010156015601565601010156015657010101560156010156560156010156010123232323010101565656560101010156015601565601010156015656010101560156010156560156010156010123232323010101565656560101010156015601565601010156015656010101560156010156;CP=0;R=16;O;
Den Rest musste ich weglassen, da der Beitrag sonst zu groß wäre.
Nun möchte ich die Fernbedienung für einen LED-Controller abfangen.
Folgender Controller: EOS 05 (https://www.synergy21.de/led/led-lichtsteuerung/eos-controller-serie/931/synergy-21-led-controller-eos-05-4-kanal-controller-ip66)
Laut Beschreibung 868,3MHz
Folgende Fernbedienung: EOS 05 Handsender (https://www.synergy21.de/led/led-lichtsteuerung/eos-controller-serie/1493/synergy-21-led-controller-eos-05-handsender-mono-2)
Laut Anleitung 868/915/434MHz (???)
Die Fernbedienung funktioniert mit dem Controller. Wenn ich nun aber eine Taste auf der Fernbedienung drücke, empfängt der Signalduino nichts.
Zu diesem Hersteller Synergy21 habe ich leider bisher auch nichts gefunden.
Wie kann ich das Problem weiter eingrenzen?
Ich habe die Fernbedienung auch mal auseinander genommen und Fotos von der Platine gemacht:
Platine Bilder (https://www.xup.in/a,28480/EOS_05_Handsender/)
Beste Grüße
ferby09
https://wiki.fhem.de/wiki/Unbekannte_Funkprotokolle#Ansatz_3_-_Messen (https://wiki.fhem.de/wiki/Unbekannte_Funkprotokolle#Ansatz_3_-_Messen)
Du beschränkst dich selbst auf wenige Funkprotokolle.Zitatdefine Signalduino_868_ESP8266 SIGNALduino 10.20.30.50:23
Lösche mal die Zahlen...
Soll das nicht die IP vom Signalduino darstellen?
Das hat doch nix mit Protokollen zu tun, oder?
Zitat von: RappaSan am 25 Januar 2024, 08:45:54Soll das nicht die IP vom Signalduino darstellen?
Das hat doch nix mit Protokollen zu tun, oder?
Mea culpa
Habe noch gepennt beim schreiben...
:)
Vor einem Kaffee geht bei mir auch nix.
Moin,
danke für eure Hinweise.
Habe einen alten DVB-T-Stick nun unter Linux erfolgreich zum Laufen gebracht, da es keine Treiber für Windows 10 gibt und kein mobiles Gerät bei mir noch Windows 7 installieren kann.
Wenn ich in URH eine Aufnahme mit 868,3MHz mache, erhalte ich beim Betätigen der Tasten der Fernbedienung vielversprechende Muster.
Im angehängten Bild ist es das An- und Ausschalten des Lichts, da die Fernbedienung hierfür unterschiedliche Signale schickt. Wenn das An-Signal kommt, leuchtet eine rote LED auf der Fernbedienung und erst dann funktionieren auch andere Tasten.
Wie kann ich dieses Signal nun demodulieren?
Screenshot_2024-01-28_16_19_15.png
Habe mich etwas weiter damit beschäftigt.
Bei meinem DVB-T-Stick kann ich bei einer Aufnahme als Gain leider nur -99, 0 sowie 72 wählen.
Bei 0 Gain ist das Rauschen aber besser und man kann etwas mehr erkennen.
Screenshot_2024-01-29_21_37_14.png
So sieht dann eine Kurve daraus aus:
Screenshot_2024-01-29_21_38_14.png
Da sieht ja nicht wie eine Sinuskurve aus bspw.
Was für ein Signal ist das?
Zum Thema DVB-T-Stick:
Ist es normal, dass das Rauschen so stark ist und dass man den Gain nicht genau einstellen kann?
In dem Link von mir ist es doch weitgehend erklärt.
Prinzipiell hast du eine Grundfrequenz und das Signal ist auf moduliert.
Laut deinem Screenshot ist die Modulation FSK.
Lt. dem Wiki musst du beim Signalduino auch noch etwas anpassen.
Bin aber auch unerfahren und habe so etwas noch nicht gemacht.
URH ermittelt glaube ich nicht automatisch, welche Modulation es ist.
FSK war voreingestellt. Bei PSK gibt er auch keine Fehlermeldung aus.
Dann stell doch mal auf OOK und teste den Empfang.
FSK würde erklären warum dein Signalduino nichts empfängt. Dafür musst du auf die Version von Ralf9 umsteigen.
Zitat von: frober am 30 Januar 2024, 21:35:27Dann stell doch mal auf OOK und teste den Empfang.
FSK würde erklären warum dein Signalduino nichts empfängt. Dafür musst du auf die Version von Ralf9 umsteigen.
Das ist nicht zwangsläufig erforderlich. Auch die Original-Firmware ist ab Version Release 3.5.0 fähig, FSK zu dekodieren.
Im Screenshot https://forum.fhem.de/index.php?action=dlattach;attach=176024 sieht das aber eher wie OOK aus.
ferby09
Lade doch bitte mal die Dateien von URH hoch. Vielleicht können wir damit mehr anfangen.
Hier die Datei aus meinen Screenshots:
868MHz (https://www.xup.in/dl,75836547/eos05_on_off_868mhz.complex16s/)
Ich habe auch noch eine Aufnahme bei 868,3MHz gemacht, aber dort sind die Ausschläge etwas geringer:
868,3MHz (https://www.xup.in/dl,16655769/eos05_on_off_868.3mhz.complex16s/)
Vielleicht muss der DVB-T-Stick noch kalibriert werden?
Ich hatte irgendwo gelesen, dass ich mit dem Signalduino ein Signal schicken soll und dann in URH die Signalabweichung entsprechend anpassen soll. Wie und welches Signal sollte ich dafür schicken?
Ich bekomme bei deinen Aufzeichnungen keinen Signalverlauf zu sehen. Im Screenshot ist oben eine Aufzeichnung von mir und unten deine:
URH.png
Die Aufzeichnung ist angeblich auch nur 528 mS lang.
Welches Signal du sendest ist eigentlich egal. Es geht ja nur darum, die Frequenzen zu ermitteln und anzugleichen.
Habe es gerade auch nochmal runtergeladen.
Der Hoster verwandelt den Namen komischerweise komplett in Großbuchstaben.
Du musst die Endung wieder klein schreiben, also ".complex16s" statt ".COMPLEX16S", dann funktioniert es.
Na, so etwas hätte ich nicht erwartet. Die Datei EOS05_ON_OFF_868MHZ.complex16s zeigt jetzt einen Signalverlauf und es wird auch etwas dekodiert, was für mich aber nicht plausibel erscheint. Erkannt wird ASK mit folgenden Zeiten:
HIGH: 34 µS
LOW: 14,81 ms
HIGH: 34 µS
LOW: 14,81 ms
HIGH: 34 µS
LOW: 14,81 ms
HIGH: 34 µS
LOW: 14,81 ms
HIGH: 200 µS
LOW: 105,04 ms
Das wird 5 mal wiederholt. Nach einer Pause von 1,42 s wird das Gleiche nochmal empfangen.
Bei der zweiten Datei sehe ich den gleichen Ablauf, nur mit anderen Puls-/Pausezeiten.
Ich wüsste jetzt nicht, wie man so etwas mit dem SIGNALduino dekodieren soll.
Die Pausen kann ich erklären. Ich habe den Knopf zweimal betätigt, weil die Fernbedienung anscheinend ein An- und Aussignal sendet. Bei der ersten Betätigung wird das Licht angeschaltet und eine rote LED auf der Fernbedienung leuchtet dauerhaft, wodurch erst die anderen Tasten auf Tastendruck reagieren. Ein erneuter Tastendruck auf die An-/Austaste schaltet das Licht aus und die LED auf der Fernbedienung erlischt.
Es sind also zwei verschiedene Signale in meinen Aufzeichnungen.
Ja, mag sein, aber der SIGNALduino reagiert auf sich wiederholende Pulse/Pausen im Abstand von einigen 100 µS, wie im Wiki beschrieben. Ein Puls alle 15 mS stellt für ihn keine dekodierbare Sequenz dar.
Ich schätze, das wird so nichts.