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.
Markus R. schrieb: > Im Datenblatt habe ich nichts dergleichen gefunden. Daraus könnte man ja schliessen, das sie so etwas nicht haben.
RFM22B scheint sowas zu haben, siehe https://www.sparkfun.com/datasheets/Wireless/General/RFM22B.pdf Kapitel 6.11 Hier https://cdn-learn.adafruit.com/downloads/pdf/adafruit-rfm69hcw-and-rfm96-rfm95-rfm98-lora-packet-padio-breakouts.pdf heißt es, dass RFM69 das auch kann (Seite 4 letzte Zeile)
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.
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.