Hallo, ich versuche derzeit die Funktsteckdosen, die es vor kurzem bei Lidl gab, anzusprechen. (Die mit der "Lern-Taste"). Die Steckdosen laufen unter der Bezeichnung "RCSAAA3680-AIP20". Obwohl ich auch schon eine Website gefunden habe die gegenteiliges behauptet sind diese nicht mit dem bekannten xx2262 Chip ausgestattet. Ich habe mich jetzt im Sender vor das RF-Modul eingeklinkt und schaue mir die Daten an, die die FB sendet. Ich habe auch schon mal mit einem µC die Daten immitiert und siehe da die Steckdose schaltet. Das eigentlich Format ist mir aber noch ein Rätsel. Ich will noch gar nicht auf einzelne Bits raus ich finde grundlegendere Sachen schon komisch. Vllt. habt ihr ja Ideen was das soll. Im Anhang seht ihr die gesendeten Daten. Der erste Teil wird 3x gesendet, der 2.Teil 5x. Es sind aber die selben Daten. Nur der Sync-Impuls (oder was ich dafür halte) und die Zeiten sind unterschiedlich. Was soll das? Zeiten 1.Teil Sync: 400µs hi, 2,2ms low. Daten: kurzer puls 380µs, langer puls 1,1ms Zeiten 2.Teil Sync: 3ms Hi, 7ms low Daten: kurzer puls 500µs , langer puls 1ms Außerdem bin ich mir nicht sicher über die Codierung. Ist einfach nur über lang/kurz codiert oder könnte das auch Manchester sein? Wie finde ich das raus? Würden solche Sync-Pulse bei Manchester überhaupt Sinn machen? Ich hoffe ihr könnt etwas helfen, Danke Dirk ps: Der erste Teil wird 3x gesendet, der zweite TEil 5x. Im Übergang wird der 2. Teil einfach direkt hinter dem ersten gesendet.
:
Bearbeitet durch User
Dirk H. schrieb: > Würden solche Sync-Pulse bei Manchester überhaupt Sinn machen? Der Empfänger muss sich, unabhängig von der Codierung und ggf. einer Synchronisierung, auf das Signal einpegeln. Ansonsten ist es schwierig, von einem einzelnen Telegramm auf die Codierung zu schließen. Da müßte man wohl mal ein paar verschiedene Telegramme angucken und auch die Basisadresse ändern.
Kannst Du mal ein Foto des Chips schicken? Vllt kann ich dann weiterhelfen. Gruß Uwe
@Dirk Wenn man da ein Raster darüber legt, kann man durchaus ein regelmaßiges Muster erkennen. Im ersten Teil ist das Pulsverhältnis 1xT ein, 3xT aus, bzw. umgekehrt 3xT ein, 1xT aus. Dann kommt der Sync mit 4xT ein und 14xT aus, anschließend die Daten mit 1xT ein, 2xT aus bzw. umgekehrt. Frank
Erstmal Danke an alle die sich schon beteiligt haben. @Uwe Ein Foto vom IC wird leider nicht weiterhelfen - höchstens wenn du auch die typischen Beschaltungen kennst. Das IC ist ein SOIC14 - leider keine Bezeichnung drauf. @Frank Danke für die Mühe. Das es im ersten Teil 1T aus 3T ein ist hatte ich irgendwie noch gar nicht so gesehen. Aber warum sollte man das ganze in zwei so unterschiedlichen Formaten senden? Darauf kann ich mir keinen REim machen..
Dirk H. schrieb: > Aber warum sollte man das ganze in zwei so unterschiedlichen Formaten > senden? > Darauf kann ich mir keinen REim machen.. Meine Idee: Der Hersteller hat vermutlich irgendwann mal das Sendeprotokoll seiner Funksteckdosen geändert, z.B. weil er einen Chiplieferanten gewechselt hat. Und damit Kunden, die sowohl alte als auch neue Funksteckdosen des Herstellers im Einsatz haben, nicht mit zwei verschiedenen Fernbedienungen hantieren müssen, senden die neuen Fernbedienungen sowohl das alte als auch das neue Protokoll aus.
Jürgen S. schrieb: > nicht mit zwei verschiedenen > Fernbedienungen hantieren müssen, senden die neuen Fernbedienungen > sowohl das alte als auch das neue Protokoll aus. Macht sich ein Hersteller wirklich so viele Gedanken? Das wäre ja toll :) Ist denn sicher, dass die gemessenen Zeiten stimmen, also war die Abtastrate des LA's hochgenug? Es ist wirklich interessant, dass die Abweichungen der beiden Signalzeiten so gering sind. Da sollte man fast noch erwarten, dass die meisten Chips beides verstehen. Eventuell wars ja wirklich sowas, dass der Empfängerchip gerwechselt werden musste. Ich würde dann allerdings eher sagen, dass der Hersteller noch alte Steckdosen loswerden musste - niemals sonst hätte man den Aufwand getrieben, die Pakete 2x zu senden, eher hätte man bei der ersten Aussendung die Pakete angepasst. Probier mal, deine Steckdose mit jeweils nur einem der Pakete zu senden. Sollte bei der Theorie dann ja funktionieren. Die Daten selbst werden sehr einfach kodiert sein. Mich irritiert ein wenig die kurze Bitfolge (24 Bit wenn ich mich nicht verzählt habe). Du könntest einfach in der Mitte jedes Slots (eine gesamte Periode) sampeln und dann direkt 1 oder 0 auslesen.
Matthias Larisch schrieb: > Macht sich ein Hersteller wirklich so viele Gedanken? Das wäre ja toll > :) Wenn es für Ihn so billiger ist... Gruss Harald
Hier mal zur Information ein paar Links zur Technik der handelsüblichen Funksteckdosen: http://avr.börke.de/Funksteckdosen.htm http://thomaskropf.at/index.php?option=com_content&task=view&id=19&Itemid=28 http://iow.wagner-ibw.de/rfctrl.html Ich selbst habe mir basierend auf dieser Technik einen Vierfach-Schaltempfänger im Hutschienengehäuse für meine Wohnzimmerbeleuchtung gebaut. Der Empfänger ist aus einer defekten Funksteckdose. Reinhard
:
Bearbeitet durch User
So ich habe mal etwas weiter probiert. Es reicht tatsächlich wenn man nur den ersten Teil sendet. Als nächsten Schritt habe ich jetzt versucht das zu rekonstruieren. Also kein "Playback" mehr abfahren sondern das Signal selbst generieren. Leider noch nicht so erfolgreich. Diese Steckdosen scheinen es mit dem Timing doch relativ genau zu nehmen - oder ich mache noch etwas falsch. Im Anhang seht ihr mein Playback (grün). Das Playback bringt die Steckdose zum schalten, mein selbst generiertes Signal (rot) nicht :( Habe ich irgendwas übersehen oder ist das jetzt gefrickel bis die Zeiten irgendwann hoffentlich passen? Das Playback wurde übrigens mit 5kSPS aufgenommen und die Abtastrate des LA ist 100kSPS Danke und Gruß Dirk H.
Hast du genug Ruhe vorm Sync? Die Zeiten können eigentlich nicht so sehr genau genommen werden, aber miss trotzdem nochmal mit etwas mehr als 5 kSps nach. Zudem wäre es schön, wenn du mal von der Originalfernbedienung 2-3 Codes aufnimmst, um zu schauen, wo der Kanal kodiert ist. Wir haben hier ja konstante Bitzeiten - deswegen wird vermutlich ähnlich dem WS2812 gesampled: Eine Low-High-Flanke startet ein Bit-Frame, nach 1/2-3/4 der Bitzeit wird gemessen und auf High/Low geprüft. Dies ist direkt der Wert des Bits. Von daher sollte dein Signal an sich passen, wobei eben die High-Pulse etwas kürzer aussehen.
@ Matthias ich glaube das hast du falsch verstanden. Die Abtastrate des obigen Bildes ist 100kSPS. (Die grüne Kurvenform wurde mal (vorher) mit 5kSPS aufgenommen und diese Samples werden vom µC einfach stumpf rausgehauen in der grünen Kurve (Die Samples in ein Array und das wird ausgegeben). Ruhe ist bei beiden Kurven gleich wenig vor dem Sync. Das kann von daher meiner Meinung nach nicht das Problem sein. Außerdem wird der Frame ja 3x wiederholt. (Ein Frame ist bei den Lücken bei 40ms und 80ms zu Ende) Trotzdem Danke.
Hello group! Sorry for not speaking German. Recently added a project in GitHub that acts as a remote control for the BAT/Lidl sockets. The URL is https://github.com/peterand/BATsender.git It was possible to successfully learn my socket to accept the code extracted from steckdose_a_ein.png contributed by Dirk H. If you want to try, use the "hidden" command N X<LF> Grüße aus dem kalten Finnland Peter
Die am 31.03.2016 bei Aldi Nord angebotenen QUIGG Funksteckdosen arbeiten mit dem gleichen Sender-Chip (14pol. IC ohne Kennzeichnung). Das Protokoll weicht von den mir bislang bekannten Protokollen ab. Die Übertragung ist aber vergleichbar. Sync 1 Takt on 13 Takte off 1 Takt on / 3 Takte off (von mir als 1 Bit mit Wert 0 interpretiert) 3 Takte on / 1 Takt off (von mir als 1 Bit mit Wert 1 interpretiert) Ein Bit besteht aus jeweils 4 Takten. Ein Sync wird von 3 Bytes gefolgt, diese Sequenz wiederholt sich 4 mal, dann erfolgt wie in diesen Thread schon beschireben 4 mal eine andere Codierung, die aber für die Funksteckdosen irrelevant ist. Ich komme auf eine vergleichbare Tabelle wie Peter Andersson und habe diese als Google Tabelle veröffentlicht (Der Sync ist nicht enthalten sondern nur die 3 Byte Nutzdaten): https://docs.google.com/spreadsheets/d/1wj45nixe7wJFUo6hKv2yjUJmjJ3gLxPeX_J6cbSyuHc/pubhtml Das erste Nibble scheint ein Art 'HausCode' zu sein. Das letzte Nibble könnte man als Kanal interpretieren. Wichtig ist noch, dass die ersten beiden Nibble die folgenden 3 Nibble vom Wert her festlegen (das ist auch bei den Codes von Peter Andersson zu beobachten). Mir erschließt nicht die Logik dieser Codes und wie man zu einen On-Code den Off-Code bestimmt. Kann mir da jemand auf die Sprünge helfen? Wichtiges zur Funktion der Steckdosen: Diese sind lernfähig und können durchaus gleichzeitig auf mehrere Kanäle angelernt werden. Um eine Programmierung zu löschen muss die Steckdose vom Netz getrennt werden und nach den Einstecken blinkt die LED langsam. Drückt man in dieser Zeit eine Aus-Taste der Fernbedienung 'vergisst' sie die Programmierung für den entsprechenden Kanal. Bei Master-Aus 'vergisst' sie alle Programmierungen und muss neu angelernt werden. Das Anlernen erfolgt indem man während der LED-Blink-Phase eine An-Taste der Fernbedienung drückt. Ob das auch mit unterschiedlichen Fernbedienungen funktioniert habe ich noch nicht ausprobiert. Die Reichweite und Schalt-Zuverlässigkeit ist besser als als bei als bei anderen Steckdosen, die ich bislang besessen habe. Sie sind laut Kennzeichnung bis 250V/16A tauglich. also durchaus ein Schnäppchen. Ich möchte damit über einen Arduino UNO meine Gartenbewässerung und Gartenbeleuchtung steuern.
:
Bearbeitet durch User
Noch ein Nachtrag (ich kann den Beitrag oben nicht mehr ändern) Der Sync ist 1 Takt on und 7 Takte off (nicht wie oben angegeben 13 Takte off) Ich habe inzwischen ein einfaches Arduino Programm geschrieben und etwas experimentiert: Ich kann auch die Codes von Peter Andersson verwenden und erstaunlicher Weise mit der Master Off Taste meiner Fernbedienung, die eine ganz andere Startsequenz hat, wieder löschen. Die Dauer eines Taktes darf bei meinen Steckdosen zwischen 308 bis 379ms liegen. Die Taktzeit selber ist also ziemlich unkritisch, nur die Tastverlältnisse 1:7 (Sync), 1:3 (0) und 3:1 (1) sollten eingehalten werden. Eine Codesequenz mit jeweils vorangehendem Sync wiederhole ich 4 mal (die weiteren 4 abgewandelten Codes meiner Fernbedienung lasse ich weg), das funktioniert allerfeinst quer durch das ganze Haus mit Wänden dazwischen. Als SendeModul verwende ich eines dieser simplen AM-Module an 5V mit 17,3mm Wendelantenne. Die Frage, wie die Codes zu deuten sind und wie man zu einen An-Code den Aus-Code berechnet bleibt aber nach wie vor.
Wolfgang K. schrieb: > Die Frage, wie die Codes zu deuten sind und wie man zu einen An-Code den > Aus-Code berechnet bleibt aber nach wie vor. Wenn du für eine Steckdose den von der FB gesendeten An- und Aus-Code zeigst, vielleicht auch die für zwei oder drei Steckdosen, fällt hier vielleicht jemand was ein. So als in den Raum gestellte Frage ist das eher schwieriger.
In meinem ersten Post war ein Link zu den Codes versteckt: https://docs.google.com/spreadsheets/d/1wj45nixe7wJFUo6hKv2yjUJmjJ3gLxPeX_J6cbSyuHc/pubhtml Die Codes von Peter Andersson sind un nachfolgendem Link zu finden: https://github.com/peterand/BATsender/blob/master/BAT_Lidl_codes.txt
Anbei noch ein Scetch für den Arduino UNO, der mit meinen Steckdosen funktioniert. Damit beim Senden des Codes keine Zeit in der Hauptschleife verbraten wird, verwendet die send_code Routine Interrupts. Die Interrupts sind nicht mit in der Arduino IDE gebräuchlichen Funktionen implementiert. Daher ist der Code nicht portabel und wird nur mit einem 16 MHz ATmega328P (z.B. UNO) funktionieren. Edit: Im oben angehängten Source hat der Fehlerteufel leider zugeschlagen. Der Code für Channel 3 off lautet: 0x88481CL
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.