RFM70 und RSSI

Gast #3814235
Lesenswert?
• ▲
▼
Hallo zusammen,
ich hantiere momentan an zwei "RFM70/RFM73 nach RS232" Modulen und 
möchte damit RSSI-Messungen mit Carrier Detection (CD) durchführen. Dazu 
möchte ich auf einem Modul dauerhaft senden (konfiguriert als 
PTX-Device, nur Pipe 0, kein AutoACK, 1MHz, Kanal 23, +5dBm Power, 0dBm 
LNA, 32Byte Puffer) und benutze dann den TX-REUSE Befehl während ich auf 
dem 2.Modul (konfiguriert als PRX-Device und sonst gleiche 
Charakteristik wie PTX-Device) dann die RSSI Schaltschwelle solange 
verändere, bis das CD-Bit gesetzt wird.
Nun die Fragen dazu:
1) Wenn ich "normal" 1-Byte Daten durch die Gegend sende, kommen diese 
auf der Gegenseite an (ermittelt über ca. 5m Funkstrecke mit 2 Rechnern 
und HTerm). Benutze ich jedoch am PTX-Device den TX-REUSE Befehl, kommt 
nichts mehr an (vorher habe ich den TX-Payload-Buffer mit einem Byte 
belegt).
Gibt es hier eine spezielle Vorgehensweise?

2) Um den TX-REUSE Befehl zu deaktivieren muss entweder ein FLUSH-TX 
oder eine WRITE-TX-PAYLOAD gesendet werden - JEDOCH DARF DAS NICHT 
GESCHEHEN, SOLANGE EIN PAKET GESENDET WIRD. Leider steht im Datenblatt 
nicht beschrieben, wie schnell das nächste Paket gesendet wird. Ich kann 
mittels TX-Interrupt vom RFM70 Modul ja feststellen, ob das Paket 
gesendet ist. Alternativ kann ich auch den TX-FIFO Status auslesen. 
Reicht es aus, auf den TX-Int mit einem FLUSH-TX Befehl zu reagieren?

3) RSSI Messungen
Ich habe - da TX-REUSE noch nicht funktioniert - eine Sendeschleife im 
PTX-Device programmiert (immer ein Byte senden). Leider kann ich auf der 
Gegenseite KEIN CD Signal erkennen, obwohl die Daten ankommen (bei 
durchswappen aller RSSI Stufen). Jetzt habe ich im Datenblatt gelesen, 
dass für min. 128us ein RF anstehen muss, damit CD gesetzt wird. Das 
wären dann ca. 16Bytes (16Bytex8Bitx1us). Ist das tatsächlich so?

Hat das schon mal jemand gemacht und kann mir einen Tipp geben?

Grüße
TK
(Firma: www.harerod.de) Persönliche Seite #3814991
Lesenswert?
• ▲
▼
Naja, wenn man so rumgugeld findet sich allerlei Bastelkram.
Neben dem Arduino-Zeugs hat sogar CooCox eine C-Lib aufgemacht.

http://www.coocox.org/driver_comp/rfm70-c722.html?mc=8&sc=42

Allerdings wird das wahrscheinlich ein Strafarbeit, wenn man das auf 
eine andere Plattform (z.B. PIC8-Assembler) übertragen will.

Noch ein AVR Projekt: 
http://www.embeddedwirelesssolutions.com/projects/EWS_RFM70_Chat_Example.pdf

Und hier im Forum haben sich in den letzten Jahren ja auch schon ein 
paar Leutchen die Zähne an dem Teil ausgebissen.

Cheerio,
 Marcus

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.