Forum: Mikrocontroller und Digitale Elektronik nRF24L01+ Stromversorgung mit BC 327-40 ein/aus schalten


von Gordon M. (headless)


Lesenswert?

Hallo zusammen.

Ich habe an einem Raspberry Pi eine nRF24L01+ Modul. Das funktioniert 
soweit auch sehr gut. Bis zu einem (zufälligen) Zeitpunkt. Da bringt das 
(Python) Sktip dann - bei einem Sendeversuch - nur noch Timeout bzw. im 
weiteren Verlauf dann irgendwann "RF24 HARDWARE FAIL: Radio not 
responding, verify pin connections, wiring, etc.". Wenn das Problem noch 
im "Timeout Stadium" ist, dann hilft ein Neustart des Pi. Im "Hardware 
Fail Stadium" hilft dann nur noch Runterfahren und komplett vom Strom 
trennen (als den Pi komplett).
Alternativ, habe ich jetzt ausprobiert, hilft auch das Funkmodul kurz zu 
entfernen und wieder drauf zu stecken.
Niemand konnte mir bis jetzt sagen woran das liegt bzw. wie man es 
Softwareseitig löst.

Deswegen hatte ich jetzt folgende Lösung im Kopf: Wenn das Modul in 
eines der Stadien verfällt, dann einfach kurz den Strom zum Modul 
trennen. Damit müsste es ja auch zurückgesetzt werden.

Die Frage: Ich habe hier noch ein paar BC 327-40 rumliegen (Datenblatt: 
https://cdn-reichelt.de/documents/datenblatt/A100/BC327_28_BC337_38-CDIL.pdf)
Ich bin jetzt nicht so der Hardwaremensch und bevor ich ein falsches 
Bauteil auflöte, wollte ich Fragen ob dieser Transistor dafür geeignet 
ist und sich mit 3.3V sauber schalten lässt.
Ist "Emitter Base Voltage" die Angabe für den 'Schaltpin'? 5V kann ich 
mit dem Pi leider nicht schalten, oder?
Falls der nicht geht, welchen könntet ihr für das Vorhaben empfehlen?

Danke und viele Grüße
HeAdLeSs

von Bessa Wissa (Gast)


Lesenswert?

Gordon M. schrieb:
> Das funktioniert soweit auch sehr gut.

Nach dem darauffolgenden Bericht offensichtlich nicht.

Wenn du pfuschen willst dann mache das mit dem Transistor
schalten. Hinweise zum Pfuschen kriegst du von mir nicht.

Die Fehlersymptome weisen auf eine zu schwache oder sehr
schlecht abgeblockte Versorgung des NRF24 hin.

Wie man es richtig macht ist hier auf uC.net zu finden.

von Martin (Gast)


Lesenswert?

> Ist "Emitter Base Voltage" die Angabe für den 'Schaltpin'? 5V kann ich
> mit dem Pi leider nicht schalten, oder?

Das ist die maximale Spannung die die Emitter-Basis Strecke verträgt. 
Die Höhe des zu schaltenden Stroms und die Spannung, die nach dem 
Durchzuschalten über dem Transistor liegt, sind für dich wichtiger. Für 
deine Anwendung wäre ein MOSFet u. U. zielführender.

Am Rande: Es ist besser die Ursache zu finden statt an einem Symptom zu 
"basteln". D. h. du solltest den Fehler suchen.

von Toto mit harry (Gast)


Lesenswert?

die nrf24L01 brauchen mindesten einen 100uF Elko direkt mit kurzen 
Beinen an den Platinenpins wenn es so ein Billigmodul ist... das erspart 
vieles Fehler suchen.

von Gordon M. (headless)


Lesenswert?

@Bessa Wissa
Naja, es funktioniert mehrere Tage, mitunter Wochen, bevor der 'Absturz' 
beginnt.

Was genau meinst du mit "schwache oder sehr schlecht abgeblockte 
Versorgung". Meinst du schwache Stromversorgung? Das 'abgeblockt' 
verstehe ich gar nicht, sorry. Kannst du mir das etwas genauer erklären?

@Martin
Mosfets brauchen doch aber noch höhere Ströme zum schalten, oder? Dachte 
ich jedenfalls immer.

Ja, wenn ich die Ursache finden würde...

von Gordon M. (headless)


Lesenswert?

@Toto

Ich habe einen 10er dran. Könnte mal einen größeren Dranlöten. Nur ob es 
daran liegt... wie gesagt, es läuft ja Tage oder Wochen bevor der Fehler 
auftritt.


Achso, das Programm läuft dauerhaft. 24/7.

von Bessa Wissa (Gast)


Lesenswert?

Gordon M. schrieb:
> Was genau meinst du mit "schwache oder sehr schlecht abgeblockte
> Versorgung". Meinst du schwache Stromversorgung? Das 'abgeblockt'
> verstehe ich gar nicht, sorry. Kannst du mir das etwas genauer erklären?

Beitrag "Funk Modul Arduino - mit kollision Management - wenig Daten - 50m sicher?"

von Toto mit harry (Gast)


Lesenswert?

Gordon M. schrieb:

> Achso, das Programm läuft dauerhaft. 24/7.

Das der einfach abstürzt ist vielleicht einer unglücklichen Sendespitze 
zuzuschreiben.. das kann mal mehr mal weniger passieren.

wie und woraus werden die 3,3 V generiert?

von Gordon M. (headless)


Lesenswert?

@ Bessa Wissa
Danke für den Link.

@ Toto
Die 3,3V kommen direkt vom RPi. Ich benutze ein Prototyping Shield das 
die 3.3V, 5V und GND vom Pi nimmt.

Ich werde jetzt mal einen 220uf Elko an das Modul löten. Dazu würde ich 
gern noch einen 104er Keramikkondensator mit dran löten. Bei dem KerKo 
ist es ja egal wie rum, der hat ja keine Polung, richtig? Kann ich den 
KelKo zusammen mit dem Elko an + und - löten... oder gibt das Probleme?

von Lutz (Gast)


Lesenswert?

Kannste so löten.
Den Pi als Spannungsquelle .. naja. Mit den Kondensatoren sollte es 
schon gehen.

Wenn aber über die Schnittstelle plötzlich gar nichts mehr geht, hat 
sich wohl eher die verabschiedet. Ich habe letztens irgendwo gelesen, 
daß das Pollen eines Registerbits über SPI bei den clones oft zum 
Aufhängen führen soll. Nach Umstellung auf Interrupt war es dann vorbei. 
Also eher Softwareproblem bzw. softwaregetriggertes Problem. Welche Lib 
nutzt du denn?

von Gordon M. (headless)


Lesenswert?

Habe vorhin die Elkos dran gelötet. Zusätzlich noch 2 weitere direkt in 
den 3.3v und 5v Strang des Prototyping Shields (da hängen noch ein paar 
Sensoren dran). Bin gespannt ob es daran gelegen hat.

Ich nutze die RF24 Lib (https://github.com/nRF24/RF24).

Kannst du mir sagen wie ich es auf Interrupt umstelle? Bringt das 
Nachteile?

von Gordon M. (headless)


Lesenswert?

So, mal ein kurzes Update nach 2 Wochen... bis jetzt keine Ausfälle. 
Sieht erst einmal gut aus. Aber so ganz traue ich dem Braten noch nicht.

Also falls es noch mal zu einem Ausfall kommt, dann melde ich mich hier 
noch mal. Falls ich mich nicht mehr melde, dann lag es wirklich daran 
und das Problem ist gelöst.

Danke an alle die mir hier geholfen haben.

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
Noch kein Account? Hier anmelden.