Forum: Mikrocontroller und Digitale Elektronik LTE Modul Control-Pins schützen


You were forwarded to this site from EmbDev.net. Back to EmbDev.net
von midefix (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Zusammen,

ich möchte die Pins PWR_ON und N_RESET vom uBlox Sara R410M LTE Modul 
schützen. Intern hängen diese an Pullups und müssen zum schalten auf GND 
gezogen werden.

Durch falsch konfigurierte Software, ist es möglich, dass der ESP32 
diese Pins mit 3,3V versorgt. Das gilt es zu verhindern.

Meine Idee:
Wie in dem Bild gezeigt, zwei Dioden zwischen Sara und dem ESP zu 
schalten.
Der ESP kann die Pins auf Masse ziehen und eine falsche Konfiguration 
zerstört nicht das Modul, da die 3,3V nicht beim LTE Modul ankommen.

Da die Diode (im Schaltplan) eine Durchlassspannung von 0,6/0,7V hat, 
wird wohl das "Maximum Low-Level Input" vom LTE Modul überschritten.


Wie würdet ihr das realisieren?

von Frank K. (fchk)


Lesenswert?

midefix schrieb:

> Wie würdet ihr das realisieren?

NPN oder N-Kanal Transistor. Dann kann nichts mehr schiefgehen.

fchk

von midefix (Gast)


Angehängte Dateien:

Lesenswert?

Das hatte ich auch schon überlegt.
Mein Board wird aber langsam voll. Daher die Idee mit den Dioden.

von Axel S. (a-za-z0-9)


Lesenswert?

midefix schrieb:

> Mein Board wird aber langsam voll. Daher die Idee mit den Dioden.

Das mit den Dioden funktioniert nicht. Es müßten schon Schottky-Dioden 
sein und auch da wird es grenzwertig.

Deine Schaltung ist auch Unsinn. Was sollen R1 und R7? Und wenn du statt 
der hoffnungslos überdimensionierten SS8050 zwei kleine MOSFETs wie 
BSS138 nimmst, kannst du dir auch R30 und R31 sparen.

von midefix (Gast)


Lesenswert?

R1 und R7 sind in der Tat nicht sehr Sinnvoll.

Den SS8050 habe ich genommen, da ich den hier habe und nicht noch 
bestellen müsste.

Dann komme ich wohl nicht drum herum MOSFETs zu nehmen.
Für den Fall dass das Gate des MOSFETs floatet, würde ich noch einen 
großen Widerstand Richtung Masse setzen. Nicht dass es da zu 
ungewünschten Verhalten kommt.

von midefix (Gast)


Angehängte Dateien:

Lesenswert?

So habe ich es jetzt umgesetzt.

von midefix (Gast)


Lesenswert?

midefix schrieb:
> So habe ich es jetzt umgesetzt.

R7 hängt natürlich an RESET_N

von kenny (Gast)


Lesenswert?

Nach meinem Geschmack sind die Pulldown Widerstände viel zu hochohmig 
:-)
Wie kommst Du auf 1,2Mohm?

von midefix (Gast)


Lesenswert?

Arduino MKR NB1500 Schematic

Da habe ich es geklaut ;)
Gegen 10k Widerstände sollte aber nichts sprechen.

von Florian S. (vatterger)


Lesenswert?

1.2 MOhm ist doch völlig in Ordnung, solange er den MCU-Pin als 
Push-Pull konfiguriert. Hohe Ströme muss der Mosfet auch nicht nicht 
schalten, der wird also im Linearbereich auch nicht heiß werden.

: Bearbeitet durch User
von Conny (Gast)


Lesenswert?

Ich denke du solltest dir vor einem Schaltungsdesign Gedanken machen, 
wie sich die Ausgänge des ESP32 bei PowerOn bzw. bei Reset und in der 
nachfolgenden Bootphase verhalten, bis dann die SW den Status 
kontrolliert setzen kann.

Falls die Ausgänge floaten, zieht dein aktuelles Design die Eingänge 
POWER_ON und RESET_N nicht auf GND. D.h. das LTE Modul läuft schon, 
obwohl der ESP sich noch in der Reset/Bootphase befindet. Ich würde das 
Modul im Reset halten bis die ESP Software es kontrollieren kann.

Du hast doch sicher auch Datenleitungen zwischen ESP und Modul, und die 
entsprechenden Moduleingänge mögen doch auch keine 3,3V. Weshalb 
fokusierst du dich nur auf POWER_ON und RESET_N? Die internen 1,8V 
werden doch herausgeführt, deshalb solltest du Pegelwandler einsetzen.

von midefix (Gast)


Lesenswert?

Die gewählten Ausgänge floaten so lange, bis der ESP die kontrollieren 
kann.

Das Sara Modul muss aktiv eingeschaltet werden.
Beim anlegen der Versorgungsspannung macht das ding erst einmal gar 
nichts.

Erst nachdem PWR_ON für eine bestimmte Zeit auf Masse gezogen wurde, 
startet das Modul.


RX und TX habe ich über einen TXB0104QPWRQ1 Level Shifter laufen.
Ich finde leider nicht ob POWER_ON und RESET_N tolerant gegenüber den 
1,8V sind. Da die zwei Pins intern mit Pullups gegen 1,8V geschaltet 
sind, sollte es so sein. Es ist jedoch nirgendwo explizit erwähnt (oder 
ich habe es nicht gefunden).

Sonst hätte ich RESET_N und POWER_ON mit über den LevelShifter laufen 
lassen.

von midefix (Gast)


Lesenswert?

Ich habe mich grad noch einmal mit der Möglichkeit des Schalten der 
Leitungen über den LevelShifter beschäftigt.

Der LevelShifter verbietet Pull-Up/Down kleiner als 50k.
RESET_N hat 37k. Damit fällt die Möglichkeit komplett flach.

Ich nutze die MOSFETs wie oben gezeigt.

von Frank K. (fchk)


Lesenswert?

midefix schrieb:
> Ich habe mich grad noch einmal mit der Möglichkeit des Schalten der
> Leitungen über den LevelShifter beschäftigt.
>
> Der LevelShifter verbietet Pull-Up/Down kleiner als 50k.

Ja, weil Du unnötigerweise Levelshifter mit automatischer 
Richtungsumschaltung verwendest. Die nimmt man normalerweise nur, wenn 
man dieses Feature auch wirklich braucht, weil diese Automatik nämlich 
ziemlich empfindlich ist und dann und wann mal Probleme machen kann. 
Ansonsten nimmt man eben Lösungen mit manueller Richtungsumschaltung. Da 
sind dann auch Pullups und so kein Problem.

fchk

von midefix (Gast)


Lesenswert?

Werde es berücksichtigen und entsprechend abändern.

Danke für den Input

von Wendels B. (wendelsberg)


Lesenswert?

midefix schrieb:
> dass der ESP32
> diese Pins mit 3,3V versorgt. Das gilt es zu verhindern.

Warum? In den Dabla-Ausschnitten steht nichts von max. Spannung.

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.