RFM95W und DIO-0 Signalpegel

OP #7829726
Lesenswert?

Servus allerseits

Den RFM95W setzen wir seit Jahren ein und hatten damit noch nie irgendwelche Probleme.

Bis ich vor ein paar Tagen bei einem Prototype den RFM nicht von der Produktion abzweigte, sondern eines aus meinem eigenen Lagerbestand benutzte. An die Bezugsquelle kann ich mich nicht mehr errinern; aber sie sind gegurtet und unterscheiden sich optisch nicht von den anderen.

Resultat: die Kommunikation klappte nur halbwegs: das Gerät konnte zwar seine Nachricht absetzen, war dann aber blockiert, bis der Watchdog eingriff. Ich war dermassen erstaunt, dass ich den Techniker anrief und ihn fragte, ob er schon mal einen defekten RFM95W habe auswechseln müssen. Nein, hatte er noch nie müssen.

Also das Ding ausgewechselt und die Kommunikation klappte wieder. Um dann ein paar Tage später wieder zu bocken. Beim Debuggen sah ich dann, dass der RFM zwar die internen Flags korrekt setzte, aber kein Interrupt-Signal generierte. Als ich dann mit dem Oszi den DIO-0 Pin kontrollierte, sah ich das Signal. Sehr sauber, so als ob man es mit Stift und Linear gezeichnet hätte. Aber sein Pegel war nur 1,5V (SPI-Signale hingegen 3.3V). Alle anderen Geräte, die ich von der Serien-Produktion erhalten hatte, hatten am DIO-O ein 3.3V Pegel.

Alles in allem habe ich 3 RFMs ausgewechselt, bis ich auf die glänzende Idee kam, diesbezüglich mal das Datenblatt zu konsultieren. Und dort stand zu meinem Erstaunen "Digital output level high min. 0.9V"

Um die Tests nicht zu blockieren habe ich den Code dahingehend abgeändert, dass ich nun die Flags abfrage. Und weil in LoRa die Sende- und Empfangs-Zeiten doch recht gemütlich sind und das Ganze mit RTOS läuft, habe ich auch keinerlei Performanseinbussen. Aber schön ist es nicht.

Dem DIO-Ausgang werde ich nun einen Transistor spendieren, damit ich in Zukunft Ruhe habe. Aber wohl ist mir bei der Sache nicht. Fast tendiere ich dazu, beim Polling zu bleiben. Denn im Internet konnte ich sowas ähnliches nicht finden, und selbst eine Anfrage bei der KI hat nichts gebracht.

Meine 2 Fragen:

  • Habe ich irgendwas übersehen?
  • Wie würdet Ihr jetzt weiter vorgehen?
Angehängte Dateien:
OP #7829742
Lesenswert?

Rainer, nochmals vielen Dank für Deinen Hinweis. Das hat mich dazu bewogen, DIO-0 von der Schaltung zu trennen und das Signal so zu messen: 3.3V \o/ Die Leitung selbst hat keinerlei Kurzschlüsse oder dergleichen; das hatte ich schon von Anfang an kontrolliert. Vermutlich liegt der Fehler irgendwo in der Intialisierung des STM32. Ich arbeite mit einem STM32U575, der für mich Neuland ist. In all den anderen Geräten sitzt ein STM32F407 o.ä.

Sorry dafür, dass ich Eure Zeit unnötigerweise in Anspruch genommen habe.

#7829753
Lesenswert?

Mehmet K. schrieb:

Die Leitung selbst hat keinerlei Kurzschlüsse oder dergleichen; das hatte ich schon von Anfang an kontrolliert.

Bei einem Kurzschluss hätte die Spannung stärker zusammen brechen müssen.

1/2 VDD entsteht z.B. wenn zwei push-pull Ausgangsstufen gegeneinander arbeitenden - eine zieht nach Low, die andere nach High. Der in so einem Fall fließende Querstrom sollte sich auch in der Gesamtstromaufnahme bemerkbar machen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren