Hallo Gemeinde,
versuche verzweifelt das Signal eines RF Senders zu sniffen.
Verwende zum sniffen ein 868 MHz CUL mit dem ich in 100 kHz Schritten
alles zwischen 433,000 und 434,000 MHz und 867,500 und 868,500 MHz
probiert habe.
Jetzt hatte ich den Sender offen.
Verbaut ist ein RF60SC2 mit einem 10.000 Quartz.
Was ich im Netz an Manuals gefunden habe:
https://nz.apexelex.com/specs/rf_ics_ism_band/RF60.pdfhttp://www.hoperf.de/upload/rf/RFM60_en.pdf
Das einzige, was ich meine hier verstanden zu haben ist, dass bei 433,92
MHz die Abweichung max. +/- 108 kHz betragen soll.
Warum empfange ich dann nichts wenn ich mein CUL auf diese Frequenz
einstelle?
Für meine schaltbaren Steckdosen, die auch auf 433,92 MHz funken, sehe
ich den traffic.
Hat hier von euch jemand vll. eine Idee?
Grüße
Florian
Hallo,
was für ein 868 MHz CUL?
Was ich als CUL kenne, decodiert ihm bekannte Protokolle und gibt dann
die Daten per seriell/USB aus.
Was die nicht kennen, verwerfen sie.
Gruß aus Berlin
Michael
Hallo Michael,
Danke für Deine Antwort!
Das ist das Teil:
http://shop.busware.de/product_info.php/products_id/29
Beschreibung hier:
http://culfw.de/commandref.html
--- SNIP BEGIN ---
================
Debugging
================
X<RR>
Enable data reporting for SlowRF (i.e. 1kHz data rate)
<RR> is a one-byte hex value, with following bits (bit 0 is the LSB
bit):
Bit 0: Report known messages (parity & checksum ok), with type
prefix.
Bit 1: Report each of the (repeated) packets of a message
Bit 2: Report detailed data, even with wrong parity / checksum.
Bit 3: Monitor mode: output an r on a risings edge and 'f' on a
falling edge. Output a '.' at the end of the message (no signal for
4msec).
Bit 4: Timing: in monitor mode output one additional byte of the
internal microsecond timer, divided by 16. This is binary!
Bit 5: RSSI: report RSSI value as an additional HEX byte after
digested data or as a separate byte if Bit 3 is set too.
Bit 6: Report FHT protocol messages (ack, etc)
Bit 7: CUL/CUN: Report raw RSSI data (a==weak ... p==strong signal)
CUR: Grafic representation: dark==weak ... light == stong signal
================
Send RAW data
================
GssNnprHHLLhhllDDDD...
Send raw data, only if HAS_RAWSEND is enabled.
Everything after the command G is hex.
ss Number of sync bits. Sync is always 0, followed by exactly
one 1-bit.
N Number of data bytes (exclusive the last byte if it is not
complete)
n incomplete last-byte: LSB-Position (7=first bit) after which
no more bits will be transferred (7-n = number of bits in the last
Databyte)
p Number of ms pause between repeats
r Number of repeats (e.g. FS20: 3)
HH High-Time for the 0-bit, Unit is 16us (!)
LL Low- Time for the 0-bit, Unit is 16us (!)
hh High-Time for the 1-bit, Unit is 16us (!)
ll Low- Time for the 1-bit, Unit is 16us (!)
DDDDD... Databytes
Use X67 and X1E to find your rawsend-pattern.
--- SNIP END ---
So wie ich es verstanden habe, sollte ich mit X67 alles sehen, was an
dem Empfänger ankommt.
Funktioniert bisher sowohl für Komponenten deren Protokoll bekannt ist
als auch für Komponenten (Brennenstuhl Steckdosen RC 4001) deren
Protokoll unbekannt ist. Ich sehe die RAW Daten auf dem CUL eingehen.
Nur für den RF60SC2 eben nicht. Hier bleibt das Log leer...
Mir ist im Grunde der Aufbau des Protokolls, das in diesem Fall
verwendet wird egal. Ich brauche bloß die RAW Daten für
"Rauf","Runter","Stop" Befehle.
Diese würde ich dann auch 1:1 verwenden und direkt über das CUL per o.g.
Befehl versenden.
Grüße
Florian
Kann dein CUL denn überhaupt die Modulationsart die dein Sender nutzt?
Wenn nicht, kann dein CUL überhaupt nichts empfangen unabhängig davon ob
das Protokoll nun bekannt ist oder nicht ...
Hallo Rest,
soweit ich die Beschreibung richtig verstehe können beide jeweils
FSK/OOK. Also theoretisch passen sie zusammen.
https://nz.apexelex.com/specs/rf_ics_ism_band/RF60.pdf Seite 1:
----------------------------------------------------------------
FSK/OOK modulation
http://www.ti.com/lit/ds/symlink/cc1101.pdf (auf dem CUL verwendet)
Seite 2:
------------------------------------------------------------------------
----
2-FSK,4-FSK, GFSK, and MSK supported as well as OOK and flexible ASK
shaping
Laut dem cc1101.pdf steht die Modulationsart des CUL in Register 0x12.
Mit Einträgen in Register 0x0F 0x10 0x11 ändere ich derzeit die
Frequenz.
Hier entnommen http://culfw.de/commandref.html
--- SNIP ---
Change frequency
FREQ2(0D), FREQ1(0E), FREQ0(0F), Fosc = 26MHz
Fcarrier = Fosc/65536*(FREQ2.FREQ1.FREQ0)
Example: W0F21, W1065, W11E8 (868.35MHz)
W0F21, W1062, W1176 (868.00MHz)
--- SNIP ---
Das passt nicht so ganz zusammen.
Wieso schreibt das Kommando in Register 0x0F 0x10 0x11 und nicht 0x0D
0x0E 0x0F wo es laut Formel erwartet wird?
Vll. shiftet aber das screen Kommando (um 2) beim Schreiben.
Lese ich das Register 0x12 aus bekomme ich
Hex 55 = Dez 85 = Bin 01010101
Laut Tabelle auf Seite 77 des cc1101.pdf "0x12: MDMCFG2–Modem
Configuration" würde das für die verwendete Modulation 2 (010) und
damit "nichts" bedeuten.
Kann ich so kaum glauben.
Lese ich das Register 0x14 (shift 2) bekomme ich
Hex 30 = Dez 48 = Bin 00110000
Laut Tabelle auf Seite 77 cc1101.pdf "0x12: MDMCFG2–Modem Configuration"
würde das für die verwendete Modulation 0 (000) und damit den default
2-FSK bedeuten.
Wenn ich mir hier mit dem zu ändernden Register sicher wäre, könnte ich
mal mit ASK/OOK (011) probieren
Aber das könnte tatsächlcih eine Spur sein.
Danke für den Tipp!
Grüße
Florian
Hallo,
gerade erste reingeschaut. Den vermutlich entscheidenen Tip hat ja
Rest (Gast) schon gegeben.
Wenn Du einen RTL-SDR o.ä. verfügbar hast, kannst Du wenigstens
Sendefreuenz und Modulationsart halbwegs sicher rausfinden. So kann es
schnell ein Spiel mit mehreren Unbekannten geben.
Du hast ja nicht geschrieben, um was für eine Anlage es sich handelt.
Nach Deiner Anmerkung würde ich auf ein Rollo o.ä. tippen?
Gängige Sachen haben doch die Leute von FHEM oder OpenHAB meist schonmal
angefasst.
Gruß aus Berlin
Michael
Falls du selbst das Signal erforschen willst kann ich dir
universal radio hacker (https://github.com/jopohl/urh) empfelen.
Mit SDR aufnehmen, einmal moving average drauf, Modulation und Bitlänge
bestimmen und abgehts :D
LG Scyte