Hallo Gemeinde, ich habe eine Empasa Sonnenmarkise, und würde die gerne in meiner Haussteuerung einbinden, falls mal die Fernbedienung verloren geht. Die "Markise Rein" Taste habe ich per RTL/SDR Stick aufgezeichnet, und in Audacity vor mir liegen. Da es meine Erste Analyse ist, bitte ich um Hilfe, ob mir jemand die Bit Reihenfolge aus dem Screenshot erkennen kann. Bin mir nicht sicher, ob das "Manchester" like aussieht ?! Die Fernbedienung ist eine Dooya DC174A.
Gast
#6361130
Ueblicherweise arbeiten die Fernsteuerungen von sowas mit Verschluesselung. Du solltest also erst einmal herausfinden, ob mehrere Betaetigungen immer dasselbe Telegramm senden, (was ich fuer unwahrscheinlich halte). wendelsberg
Hallo Wendelsberg, 433Mhz. 5xRecorded, immer das selbe Ergebnis, und exakt die gleiche Kurven. Daher kann ich eine Verschlüsselung ausschließen. Kannst du mir weiterhelfen, bei der Decodierung aus dem Screenshot ?
Gast
#6361169
Christian U. schrieb: > Kannst du mir weiterhelfen, bei der Decodierung aus dem Screenshot ? Nein. Aber AM scheint das schonmal nicht zu sein. wendelsberg
Aufzeichnung wurde im "AM" Modus gemacht. Wie kommst du drauf, das das kein AM ist ?
Gast
#6361190
Taktrate jeder steigenden Flanke konstant ( daraus Takt rückgewinnbar). Nach jeder steigenden Flanke eindeutig ein kurzer oder langer Highstate, daraus Bit null oder eins ableitbar. Also längencodiert, nicht phasenwechselkodiert. Ein schöner, klassischer Code. Name desselben suchst Dir selber, die entscheidenden Parameter hast Du ja jetzt.
Hallo Nichtverzfeifelter, (Ich bin am Verzweifeln :) ). Ich weiß nicht, ob meine Analyse richtig ist. Kann da jemand rüber schauen ? Siehe Screenshot.
Hallo Nochmal, bin ich mit PWM auf der richtigen Spur ?
rtl_433 zeigt mir folgendes an ( pro Knopfdruck auf der Fernbedienung )
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
Niemand eine Idee ?
Gast
#6362162
Christian U. schrieb: > Niemand eine Idee ? Einfach machen! Oder meinst du du findest ein fertiges .hex File für dein µC, das aus dem Format deiner Wahl diesen Bitstrom für dein RF-IC erzeugt? Vielleicht hilft IRMP/IRSND weiter?
Gast
#6362343
Was spricht gegen die eigentlich offensichtliche Interpretation (siehe Bild)? "Rot" trennt die Bytes, "Grün" die Bits. Also insgesamt 40 Bits (5 Bytes), eventuell sind das dann 32 Bit Device-ID und 8 Bit Befehl.
Hallo Dieter, danke for Deine ausführliche Erklärung und die Zeit die Du in Anspruch genommen hast! Mir ist noch nicht ganz klar, wie ich jetzt die Bits interpretieren muss. Da muss ich wohl einfach mehrere Varianten testen, und mit dem CUL senden. 10110010 11100010 11110011 01001110 11100001 Oder 01001101 00011101 00001100 01001110 00011110 Vielen Dank nochmal...
Gast
#6362542
von Christian U. schrieb:
>Niemand eine Idee ?
Ganz einfach, du addierst einfach alle Zeiten wo
die Kurve über der Nulllinie ist und subtrahierst
davon alle Zeiten wo die Kurve unter der Nulllinie ist.
Wenn dann 0 rauskommt, ist es Manchestercode.
Das ist ja das Ziel von Manchestercode, es soll
kein Gleichspannungsanteil geben.
Gast
#6362549
Christian U. schrieb: > > Mir ist noch nicht ganz klar, wie ich jetzt die Bits interpretieren muss. Ich weiss nicht ob es bei dem System eine Device-ID gibt um verschiedene Sender zu unterscheiden. Falls ja ist diese Device-ID vielleicht irgendwo aufgedruckt. Wenn die Device-ID direkt in den Daten stehen sollte könnte man so die Bedeutung der Bits "1" und "0" herausfinden. Viele "wenn" und "vielleicht", aber das wäre ein Weg um die Bits zu interpretieren.
@Günther, Danke für den Tipp. Das sollte ich gleich rausbekommen... @Dieter, Ich 'grabbe' heute mal die Taste "Markise raus" Taste. Wenn die ersten 32-Bits gleich bleiben, wäre Deine Vermutung richtig. Bin mal gespannt...
Hallo Dieter, tatsächlich. Die Ersten 4 Bytes (32 Bits) sind IMMER gleich. Das Letzte Byte (8 Bits) beinhaltet wohl den eigentlichen Schaltvorgang. Im Neuen Screenshot habe ich die LED Beleuchtung der Markise eingeschaltet...
Gast
#6362795
Na, jetzt hast Du es ja raus. Deine ursprüngliche Unterteilung in Bits auf die eineinhalbfache Länge umgestellt, richtig. Ob "lang" logisch 1 oder 0 bedeutet ist reine Definitionssache, gibt halt invertierte Bits. Jetzt guckst Du noch, mit welcher Wiederholrate ein komplettes Telegramm wiederholt wird und ob die Fernbedienung als allererstes einen "Einpegelton" für die automatische Verstärkungsregelung (AGC) des Empfängers liefert, oder nicht.
Gast
#6362835
Christian U. schrieb: > > tatsächlich. Die Ersten 4 Bytes (32 Bits) sind IMMER gleich. > > Das Letzte Byte (8 Bits) beinhaltet wohl den eigentlichen Schaltvorgang. Wenn man nach Dooya Fernbedienungen/Sensoren sucht und deren Einbindung in SmartHome Systeme sieht man öfters einen ähnlichen Aufbau der Daten: 40 Bit, die ersten 32 Bit ändern sich nicht. Allerdings ist die Modulation unterschiedlich zu dem Signal Deiner Fernbedienung. Ein Beispiel gibt es hier für einen Sensor und rtl_433: https://github.com/merbanan/rtl_433/issues/1337 Ich würde erwarten dass es irgendeine Device-ID gibt um zu verhindern dass ein Sender bei allen anderen Markisen funktioniert. Oder kann man Sender anlernen durch irgendeine "Pairing" Prozedur?
Gast
#6362849
Christian U. schrieb: > Im Neuen Screenshot habe ich die LED Beleuchtung der Markise > eingeschaltet... Poste doch der Einfachheit halber alle Telegramme.
Hallo nochmal, vorerst möchte ich mich nochmal bei allen bedanken. Da es meine 'Erste' Analyse in dem Bereich ist, nochmal Entschuldigung für meine Fragen. Irgendwie hat ja jeder mal angefangen... @Nichtverzweifelter Beitrag "Re: Empasa Markise, Bits ermitteln. Siehe Screenshot." Ein Telegramm besteht aus 3 Gruppen a 5 Bytes (40 Bits), welches 2 x Hintereinander exakt gleich gesendet wird. Ich bereite das mal auf, und sende dies gleich im Anschluß. Diesmal auch ohne Audacity bearbeitet, also so, wie ich es aufgezeichnet habe. In meinem Screenshot habe ich nämlich die Verzerrung angepasst, um die Kurven besser dargestellt zu bekommen. Meinst du mit Einpegelton ein Präambel ? Da muss ich mich erst noch einlesen. Kann/Muss dieser nicht im 1.sten Byte stecken. Die ersten 4 Bytes sind ja immer gleich... @Dieter Beitrag "Re: Empasa Markise, Bits ermitteln. Siehe Screenshot." Danke für den Link. Da muss ich mich gleich mal einlesen... @Möbel Beitrag "Re: Empasa Markise, Bits ermitteln. Siehe Screenshot." Mache ich gleich. Bereit das noch kurz in Audacity auf...
Hallo Nochmal, Anbei das Komplette Telegramm eines Tastendruckes "Markise Raus". Puh, garnicht so einfach das alles auf einem Screenshot zu bekommen. Sorry, aber ich hab mir Mühe gegeben... Liege ich richtig ?: - Die Erste Dreiergruppe ist in sich identisch. (Alle 5 Bytes, 40 Bits sind gleich) - Die Zweite Dreiergruppe ist in sich identisch. (Alle 5 Bytes, 40 Bits sind gleich) - Die Zweite Dreiergruppe ist zu Bytes 1,2,3,4 identisch mit der Ersten Gruppe. (grün, gelb, blau, violett) - Die Zweite Gruppe unterscheidet sich mit 4 Bits im 5.ten Byte von der Ersten Gruppe (rot zu blau). Mhh, die Ersten 4 Bits von links im 5 Byte (kurz, kurz, kurz, lang). 0001 oder 1110. Kann das der Gerätecode sein ? Findet die eigentliche Schaltung in den letzten 4 Bits des 5 Bytes statt ? Man ist das alles kompliziert...
Gast
#6363116
Es gibt IR-Systeme, die fortwährend senden, solange die Taste gedrückt ist, das Loslassen der bisher gedrückt gehaltenen Taste aber extra übertragen. Mit einem anderen Code. Daher Telegramme vergleichen. Deine bisherigen zeigen, dass die Info "Welche Taste ist gedrückt?" im letzten Byte steckt. Allgemein wird die Reichweite eines IR-Fernbedienungssystems begrenzt von: Rauschen, das Signal (Leuchtdichte) ist zu schwach, zu weit weg. Anderes Extrem: Das Signal ist viel, viel, viel zu stark und übersteuert den Empfänger. Gleichzeitig kämpft das System mit dem Gleichlichtanteil, der überall vorhandenen Wärmestrahlung. Weil das Empfängersystem über eine Verstärkungsregelung verfügen muss, die diese Unterschiede ausgleicht, normiert, bevor dann die eigentliche Einteilung in "high" und "low" stattfindet, sendet man gerne einen Pegelton, eine Präambel oder wiederholt das Telegramm komplett, auch wenn Du die Taste "noch so kurz betätigst". Man gibt dem analogteil des Empfangssystems Zeit, sich "automatisch richtig auszusteuern".
Gast
#6363171
Die Auswertung der Signale wird einfacher mit rtl_433 anstelle das per Hand zu machen. Da die Modulation nun bekannt ist braucht man rtl_433 nur die entsprechenden Modulations-Parameter mitteilen. In dem Link, den ich weiter oben geschickt habe, wird das auch so gemacht (nach "m=OOK_PWM" suchen, die weiteren Parameter müssen noch angepasst werden).
Hallo Dieter, hat sauber funktioniert. Danke @Dieter.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
53 | |
54 | |
55 | |
56 | |
57 | |
58 | |
59 | |
Somit wird folgendes Ergebnis ermittelt, und deckt sich mit meinem Letzten Screenshot: 10110010 11100010 11110011 01001110 11101110 10110010 11100010 11110011 01001110 11101110 10110010 11100010 11110011 01001110 11101110 PAUSE 10110010 11100010 11110011 01001110 11100001 10110010 11100010 11110011 01001110 11100001 10110010 11100010 11110011 01001110 11100001 Nun meine abschließende Frage: Ich würde die Bits jetzt per Signalduino, oder besser einem Arduino mit Funk Sender senden wollen. Muss ich den Delay noch ermitteln, zwischen den Bytes, und der Wiederholungsgruppe ? Als Beispiel würde ich jetzt wie folgt vorgehen:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
Gast
#6364590
Wieso " einen ..mit Funk Sender"? Infrarot !!! Mit ziemlicher Sicherheit "geträgert". D.h. In Wirklichkeit ist das Wechsellicht, der IR-Empfänger ist nur so nett (ist heute Standard), Dir die Modulation des empfangenen Trägers auszugeben, nicht den Träger selbst. Oft im Bereich 38kHz. Die "PAUSE" zwischen den beiden Telegrammen, nun ja, wahrscheinlich. Das Originaltelegramm scheint keine Stopp-Bits zu enthalten. Also macht er es über den zeitlichen Abstand der Telegramme. Kannst Du ja bei Deiner Software austesten.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.
