Moin, es gibt doch von ThinkBee diese batterielosen Schalter. Günstig, einfach anzubringen und auch noch wetterfest. Nur die Empfänger finde ich nicht doll. Nur 230V und auch in den Schaltmöglichkeiten recht begrenzt. Da muss natürlich eine flexiblere Lösung mit MCU her! Ich habe mit dem HackRF einen Baseband-Mitschnitt (433,92 MHz und 20 MHz Bandbreite) mit einem Einschalter und einem Ausschalter angefertigt. Wer mag, der kann sich die originalen .wav-Dateien hier herunterladen: https://drive.google.com/file/d/1qdFoKUZUlZDegIM7bJkPCaEhAsy9CUfP/view?usp=sharing Die aufgezeichneten Signale sind etwas übersteuert, aber man kann schon ganz gut erkennen, dass es sich um eine ASK/OOK-Modulation handelt. Nur kann ich die nicht so sehr den üblichen Line-Codes zuordnen. Zuerst sah es mir wie eine Manchester-Codierung aus, aber das kann aufgrund der immer gleich langen "high"-Zeiten (bis auf das "Stoppbit") eigentlich nicht sein. Für mich sieht es eher so aus, also ob ein Wechsel auf "high" immer den Empfänger synchronisiert und dann die Länge der anschließenden Pause entscheidend für 0 oder 1 ist. Irgendwann kommt noch eine Art "Stopp-Bit" mit einer doppelt so langen "high"-Zeit. Die Sequenz von 3-ca. 16 ms wird dann übrigens noch drei mal wiederholt, die habe ich in den Bildern abgeschnitten. Was meint Ihr, was das für eine Kodierung sein könnte? Kann man das mit irgendeiner Packet-Engine der bekannten 433-MHz-Receiver (z.B. CC1101) auswerten? Oder nur direkt in der MCU? Gruß, Oliver
:
Bearbeitet durch User
Oliver R. schrieb: > Für mich sieht es eher so aus, also ob ein Wechsel auf "high" immer den > Empfänger synchronisiert und dann die Länge der anschließenden Pause > entscheidend für 0 oder 1 ist. Sehe ich auch so. Bekannt ist so ein Verfahren durch das 1-Wire Protokoll. > Irgendwann kommt noch eine Art "Stopp-Bit" mit einer doppelt so langen > "high"-Zeit. Oder ein Startbit. Auf jeden Fall ist das ein Synchronisierungssignal. Und schlau ist es eigentlich immmer, die Synchronisierung am Anfang eines Telegramms zu machen.
Lothar M. schrieb: > Oliver R. schrieb: >> Für mich sieht es eher so aus, also ob ein Wechsel auf "high" immer den >> Empfänger synchronisiert und dann die Länge der anschließenden Pause >> entscheidend für 0 oder 1 ist. > Sehe ich auch so. Bekannt ist so ein Verfahren durch das 1-Wire > Protokoll. Ja, daran habe ich auch schon gedacht, es hat zumindest einige Ähnlichkeiten. > >> Irgendwann kommt noch eine Art "Stopp-Bit" mit einer doppelt so langen >> "high"-Zeit. > Oder ein Startbit. Auf jeden Fall ist das ein Synchronisierungssignal. > Und schlau ist es eigentlich immmer, die Synchronisierung am Anfang > eines Telegramms zu machen. Also davor kommt definitiv nichts. Ich habe die Samples aus einer längeren Aufnahme recht genau herausgeschnitten. Bis zum ersten "Stopp-Bit" könnte es sich um ein Sync-Word mit 10 Bits handeln, die sind bei beiden Schaltern gleich. Danach kommen dann 40 Bits, die pro Schalter etwas unterschiedlich sind. Ich könnte mir eine Kennung vorstellen. So wie ich das sehe, muss ich wohl dafür einen Decoder selbst schreiben, das Protokoll ist schon etwas speziell, sieht aber auch nicht allzu kompliziert aus. Gruß, Oliver
Also nachdem das Ding keinerlei Prüfzeichen trägt, würde ich es in der EU nicht verwenden. Noch dazu, wo es nur Brandklasse V0 ist. Wenn es schmort oder brennt, wird das keine Versicherung übernehmen. Da es laut Anleitung ein Anlernprotokoll ist, gehe ich davon aus, dass es verschlüsselt ist (evtl. Rolling Code?). Da wird es mit der Decodierung schlecht aussehen.
Noch ein Grund mehr, an einem Niedervolt-Empfänger zu arbeiten. Die Empfänger habe ich auch gar nicht mitgekauft, nur die Schalter. Die sollten aufgrund der fehlenden Batterie kaum von selbst brennen können ;-) Ich habe noch mal die Bit-Zeiten vermessen: High-kurz (Bit-Start?) - 100 µs High-lang (Start-Sync?) - 200 µs Pause kurz (1?) - 100 µs Pause lang (0?) - 300 µs Pause nach Sync(?) - 600 µs Die Zeiten schwanken so +/- 10 %, ich würde da eine Toleranz von 15 % einbauen (vorausgesetzt, das HackRF sampelt halbwegs zeitstabil). Gruß, Oliver
Ach noch was: Es gibt keinen Rolling-Code oder irgend etwas in der Art. Es werden stets die gleichen Signale gesendet. Der On-Schalter unterscheidet sich vom Off-Schalter ausschließlich im zweiten Teil der im Bild gezeigten Aufnahme, nach dem ersten langen High-Impuls. Gruß, Oliver
So, es geht langsam voran: Ich habe hier https://github.com/Superberti/ThinkbeeReceiver/tree/main einen kleinen Demodecoder eingestellt, der schon recht zuverlässig funktioniert. Ich kann damit zumindest beide Schalter und deren Betätigung unterscheiden. Mangels unterschiedlicher Thinkbee-Hardware bleibt die Bedeutung der einzelnen Bits mehr Spekulation als Wissen. Wer mag, der kann mich gerne mit Mitschnitten versorgen ;-) Gruß, Oliver
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.