RFM69 automatic retransmission

OP #4702121
Hi!

Ich verwende zwei RFM69W-Module um Daten auszutauschen. Die CRC-Prüfung 
ist eingeschaltet, d.h. nicht korrekt empfangene Pakete werden 
verworfen.
Das funktioniert auch.

Schön wäre es jetzt, wenn der Sender das Paket automatisch ein weiteres 
Mal schicken würde, solange bis es geklappt hat.

Können das die RFM69-Module in Hardware, oder muss ich das in Software 
implementieren?

Im Datenblatt habe ich nichts dergleichen gefunden.
In Hardware wird sich das nicht lösen lassen, das Modul weiß ja nichts 
über den Aufbau deines Netzwerks, z.B. die Anzahl der Gegenstellen, die 
das Paket empfangen sollen, und eine Auto-Acknowledge-Funktion in 
Hardware auf der Gegenseite gibt es auch nicht.

Du wirst also wohl eine Softwarelösung entwickeln müssen, wobei sich 
hier die Timeout-Funktion anbietet, die man mit den Registern 0x2A und 
0x2B verwenden kann und welche ein Flag im Statusregister 0x27 setzt.

Ablauf im Sender: Senden --> In den Rx-Modus schalten --> Im 
Timeout-Fall erneut senden, bei ACK-Empfang nicht.

Entsprechend muss man vom Empfänger nach Datenempfang eine Bestätigung 
rausschicken lassen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.