Forum: Mikrocontroller und Digitale Elektronik Schaltplanentwurf Wearable auf nRF52833 Basis


von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Guten Tag zusammen,

ich versuche eine kleine Schaltung auf Basis eines nRF52833 zu 
entwickeln. Ich würde mich sehr über Rückmeldungen zur Schaltung (s. 
Anhang) freuen.

Das Board enthält im Wesentlichen:

- ein Board mit nRF52833, Antenne und Quarz 
(https://www.raytac.com/product/ins.php?index_id=95)
- Sensor MPU9250
- Ladeschaltung für einen LiPo Akku
- J Link Schnittstelle zum Übertragen der Firmware

Drei Fragen habe ich bereits:
1.: Wofür ist der Widerstand R3 (oben rechts)? Ich habe mir das von 
einem Demo Board (https://www.raytac.com/product/ins.php?index_id=97) 
abgeguckt, verstehe aber nicht wofür der da ist.
2.: Gibt es bei Mouser eine JST PH 2 Pin Buchse inkl. libary für die 
normalen, kleinen LiPo Akkus? Komischerweise finde ich da nix. Mouser, 
da ich die restlichen Artikel bereits von dort ordern kann.
3.: Wie kann mit dem MCP7381 ein UVLO realisiert werden? Im Datenblatt 
steht, dass der IC aufhört zu laden, sobald der Threshold erreicht ist 
bei ca. 3,5V.
3.1 Warum schon bei ca. 3,5V? LiPos können doch deutlich weiter 
aufgeladen werden?
3.2 Wie kann ich es erreichen, dass die Schaltung ab einem gewissen 
Threshold nicht weiter betrieben wird? So wie derzeit angeschlossen, ist 
es doch egal was der MCP macht, die Batterie versorgt die Schaltung doch 
trotzdem weiter...

Freundliche Grüße

Simon

von Simon (Gast)


Lesenswert?

Push!

von Stefan F. (Gast)


Angehängte Dateien:

Lesenswert?

R3 sorgt dafür, dass die Clock Leitung nicht durch Radiowellen 
angesteuert wird, während kein Programmieradapter angeschlossen ist.

Du kannst einen analogen Eingang des µC verwenden, um die Akkuspannung 
zu messen. Der µC soll sich schlafen legen, wenn die Batterie leer ist. 
Aber mache das so, dass der Spannungsteiler vor dem ADC die Batterie 
nicht endlos leer zieht. Hier kann ein Transistor helfen, der den 
Spannungsteiler nur kurzzeitig einschaltet.

Figure 2-2 zeigt, wie hoch die Ladespannung geht. Die 3,5 V musst du 
falsch verstanden haben. Für eine lange Lebensdauer des Akkus wäre 
deutlich weniger als 4,2 V besser.

von Thom Lab (Gast)


Angehängte Dateien:

Lesenswert?

Zu 3.2:

Du könntest die Spannung über einen Analog Pin einlesen, und wenn diese 
zu tief ist, den Microcontroller in den DeepSleep mode legen, wo er 
praktisch nichts mehr konsumiert.
Da du maximal 3.3 V messen kannst, musst du die Batterie Spannung 
teilen. Ich hab das mal für ein Arduino wie im angehängten Bild gelöst.

von Stephan (Gast)


Lesenswert?

R1/R2 wollen keine Serienterminierer sein, sondern PullUps (wenn die 
Leitung eine I2C ist), oder?
VG, Stephan

von Thom Lab (Gast)


Lesenswert?

Zur Erklärung:

Bei einem Wechsel von 0-5V oder 5-0V lässt der Kondensator die 
Transienten durch. D.h. Bei einem Wechsel von 5V zu 0V entlädt sich der 
Kondensator was die Drain-Source Strecke des Mosfet für einen kurzen 
Moment leitend macht. In diesem Moment fliesst ein Strom über die beiden 
Widerstände und bildet einen Spannungsteiler. Diese Spannung kann dann 
gemessen werden (max. VBAT / 2).

Du solltest achten, dass der Mosfet ziemlich wenig Strom durchlässt, 
wenn er im Off-State ist (low Drain-Source leakage current), da 
ansonsten ein konstanter Stromverbrauch da ist (was du ja vermeiden 
möchtest).

Möglicher Code zum auslesen (Pseudocode):

enable_adc_peripheral()
digitalWrite(digital_pin, HIGH);
delay(5); //5ms
digitalWrite(digital_pin, LOW);
int adc_value = analogRead(analog_ping);

von Thom Lab (Gast)


Lesenswert?

Stephan schrieb:
> R1/R2 wollen keine Serienterminierer sein, sondern PullUps (wenn die
> Leitung eine I2C ist), oder?
> VG, Stephan

Sehe ich auch so

von Thom Lab (Gast)


Lesenswert?

Thom Lab schrieb:
> Zu 3.2:
>
> Du könntest die Spannung über einen Analog Pin einlesen, und wenn diese
> zu tief ist, den Microcontroller in den DeepSleep mode legen, wo er
> praktisch nichts mehr konsumiert.
> Da du maximal 3.3 V messen kannst, musst du die Batterie Spannung
> teilen. Ich hab das mal für ein Arduino wie im angehängten Bild gelöst.

Zwischen digital Pin und Kondensator kannst du evtl. noch einen 
Widerstand hängen, welcher dir den Lade- / Entladestrom begrenzt.

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

danke für eure Antworten.

Zwei Rückfragen:

1.: Würde es auch so gehen(s.Anhang)? Widerstände jeweils 1m. Oder würde 
der Widerstand dann zu hoch sein im Vergleich zum Eingangswiderstand des 
Controllers und in der Folge eine Parallelverschaltung bezwecken? Den 
Nachteil "dauerhaften" Stromes finde ich in den Dimensionen 
vernachlässigbar. Vorteil wäre halt, dass ich mit deutlich weniger 
Bauteilen auskomme.

2.: Kann mir mal bitte jemand die Werte "UVLO Start Threshold" und "UVLO 
Start Threshold" erklären?

Seite 3
https://www.sparkfun.com/datasheets/Prototyping/Batteries/MCP73831T.pdf

Den Threshold an sich und die Hysterese verstehe ich. Aber warum diese 
3,5V ??

Gruß Simon

von Simon K. (simon1516)


Lesenswert?

Noch eine Frage an Tom Lab: Das, was du da aufgezeichnet hast - gibt es 
sowas nicht schon in Form irgendeiner "Fertiglösung" als IC? Sowas 
brauch doch jeder Depp :-)

von Stefan F. (Gast)


Lesenswert?

Simon K. schrieb:
> Würde es auch so gehen(s.Anhang)? Widerstände jeweils 1m.

Schau mal ins Datenblatt, welche Quell-Impedanz der ADC benötigt. Da 
gibt es meist ein Maximum im Bereich zwischen 10k und 100k Ohm.

2MΩ würde bei 3V immerhin noch 3µA sein. Ein bisschen viel als 
Dauerlast, oder?

von Stefan F. (Gast)


Lesenswert?

Simon K. schrieb:
> Würde es auch so gehen(s.Anhang)? Widerstände jeweils 1m.

Schau mal ins Datenblatt, welche Quell-Impedanz der ADC benötigt. Da 
gibt es meist ein Maximum im Bereich zwischen 10k und 100k Ohm.

2MΩ würde bei 3V immerhin noch 3µA sein. Ein bisschen viel als 
Dauerlast, oder?

Simon K. schrieb:
> Aber warum diese 3,5V ??

Das ist vermutlich die Eingangsspannung, unterhalb der dieser Chip gar 
nicht arbeitet, um Fehlfunktion zu vermeiden.

"An internal UVLO circuit monitors the input voltage andkeeps  the 
charger  in  Shutdown  mode  until  the  inputsupply  rises  above  the 
UVLO  threshold.  "

von Simon K. (simon1516)


Lesenswert?

Stefan ⛄ F. schrieb:
> Schau mal ins Datenblatt, welche Quell-Impedanz der ADC benötigt. Da
> gibt es meist ein Maximum im Bereich zwischen 10k und 100k Ohm.

https://infocenter.nordicsemi.com/pdf/nRF52833_OPS_v0.7.pdf
S. 377. Max 800kOhm, wenn ich richtig gucke.


> 2MΩ würde bei 3V immerhin noch 3µA sein. Ein bisschen viel als
> Dauerlast, oder?

Hast Recht.

Stefan ⛄ F. schrieb:
> Das ist vermutlich die Eingangsspannung, unterhalb der dieser Chip gar
> nicht arbeitet, um Fehlfunktion zu vermeiden.
>
> "An internal UVLO circuit monitors the input voltage andkeeps  the
> charger  in  Shutdown  mode  until  the  inputsupply  rises  above  the
> UVLO  threshold.  "

Danke!

-------------------------------------

Werde es dann wohl so machen, wie Thom Lab es vorschlug. Die Bauteile 
sind ja soweit klar, bis auf den Mosfet. Was haltet ihr von diesem hier?

https://www.mouser.de/datasheet/2/308/NTK3134N-D-278530.pdf

Der braucht "nur" 0,5uA dauerhaft. Entwerfe sowas allerdings zum ersten 
Mal und weiß nicht, ob´s da vielleicht Mosfets gibt die besser geeignet 
wären. Wenn ihr hier einen anderen empfehlen würdet, würde ich mich über 
ein Beispiel von Mouser.de sehr freuen.

-------------------------------------

Was haltet ihr vom Rest der Schaltung? Sieht noch jemand irgendwo große 
Schwierigkeiten?



Danke und Gruß

Simon

: Bearbeitet durch User
von Thom Lab (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Simon K. schrieb:
>> Würde es auch so gehen(s.Anhang)? Widerstände jeweils 1m.
>
> Schau mal ins Datenblatt, welche Quell-Impedanz der ADC benötigt. Da
> gibt es meist ein Maximum im Bereich zwischen 10k und 100k Ohm.
>
> 2MΩ würde bei 3V immerhin noch 3µA sein. Ein bisschen viel als
> Dauerlast, oder?

Genau. Der Strom welcher in den ADC fliesst ist plötzlich nicht mehr 
vernachlässigbar, d.h. es fliesst nicht mehr der Grossteil des Stromes 
durch deinen Spannungsteiler, sondern auch in den MCU. Das hat zur 
Folge, dass dein Spannungsteiler nicht mehr die Spannung in 1/2 - 1/2 
teilt, sondern irgendwie (d.h. für dich nicht so schnell 
nachvollziehbar).

Simon K. schrieb:
> Noch eine Frage an Tom Lab: Das, was du da aufgezeichnet hast - gibt es
> sowas nicht schon in Form irgendeiner "Fertiglösung" als IC? Sowas
> brauch doch jeder Depp :-)

Hab ich noch nie gesehen (kann aber schon sein). Das sind 5-6 Bauteile - 
mir wäre es der Aufwand nicht wert, nach einem fertigen Bauteil zu 
suchen.

von Thom Lab (Gast)


Lesenswert?

Simon K. schrieb:
> Werde es dann wohl so machen, wie Thom Lab es vorschlug. Die Bauteile
> sind ja soweit klar, bis auf den Mosfet. Was haltet ihr von diesem hier?
>
> https://www.mouser.de/datasheet/2/308/NTK3134N-D-278530.pdf

Nein, der würde nicht gehen. Du brauchst einen P-Channel Mosfet.
https://www.mouser.ch/ProductDetail/Infineon-IR/IRLML2244TRPBF?qs=%2Fha2pyFadugffug%252Bfn14nfEd6UGgSZ9E%252Bm5DXVRZmZc%3D

Den könntest du z.B. nehmen. Der Leakage Current von 1uA wird in 
Realität kleiner sein, da du nur maximal -4.2V als V_DS hast (und nicht 
wie im Datenblatt 16V)

von Thom Lab (Gast)


Lesenswert?

Gibt aber sicherlich auch noch sparsamere.. Allerdings fehlt auf mouser 
und co. die Möglichkeit nach dem Leakage current zu filtern, was die 
Suche erschwert

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Hi,

ich habe jetzt eure Vorschläge umgesetzt und den aktualisierten 
Schaltplan nochmal in den Anhang gepackt :-)

Ich bin mir ehrlich gesagt noch unsicher, ob der nRF52833 aus dem Sleep 
Modus mit einer analogen Spannung herauskommt. Selbst wenn die ADC noch 
aktiv sind - es müsste ja noch Code abgearbeitet werden. Eine Art 
Interrupt, abhängig von der Batteriespannung...geht das? Hier mal das 
Datenblatt.

https://infocenter.nordicsemi.com/pdf/nRF52833_OPS_v0.7.pdf

Wenn nicht, müsste ich wohl einen OP + Ref Spannung zusätzlich im 
Schaltplan versehen, sodass ich als Interrupt einen digitalen IO 
schalte. Das geht zumindest.

Was meint ihr?

von Thom Lab (Gast)


Lesenswert?

Über Analog kannst du so keinen Interrupt machen. Du musst für eine 
Messung den Digital Pin kurz auf high und dann wieder auf low setzen, 
das geht nur wenn der wach ist.

Ich würde einen Timer setzen und z.B. alle Stunde eine Messung machen. 
(D.h. sleep und aufwachen mit timer interrupt)

von Thom Lab (Gast)


Lesenswert?

Und die zwei Widerstände beim I2C müssen nicht in Serie, sondern als 
PullUp geschaltet werden.
https://de.i2c-bus.org/intro/das-typische-i2c-bus-setup/

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Hi ThombLab,

Thom Lab schrieb:
> Und die zwei Widerstände beim I2C müssen nicht in Serie, sondern als
> PullUp geschaltet werden.

Stimmt, das hab ich wohl übersehen - danke!

Wann schaltet man LiPos üblicherweise ab? Ich würde es bei ca. 3,5V 
machen, da ab diesem Zeitpunkt nur noch 20% Restkapazität vorhanden sind 
(Quelle: https://www.heli-planet.com/images/Restkapa_Lipo.gif)

Weiterhin habe ich den USB (D-, D+) angeschlossen. Hielt ich zuvor für 
nicht nötig, eröffnet mir aber zukümnftig die Möglichkeit des Flashens, 
sofern ein Bootloader eingespielt wurde.



Was hälst du von Konzept der Stromversorgung?

Im nRF Datenblatt steht 
(https://infocenter.nordicsemi.com/pdf/nRF52833_OPS_v0.7.pdf, p. 58):

------------
The system enters High Voltage mode when the supply voltage is only 
connected to the VDDH pin and theVDD pin is not connected to any voltage 
supply. For the supply voltage range to connect to the VDDH pin,see 
parameter VDDH.
------------

Der entsprechende Parameter (p. 77): 2,5V - 5,5V

Somit kann ich mit dem LiPo diesen Betrieb an VDDH sicherstellen.

VDD wiederum kann justiert werden. Da ich es vorhabe, die Lipo bei 3,5V 
an VDDH abzuschalten, sollte es möglich sein, an VDD zu jedem Zeitpunkt 
3,3V bereitzustellen (VDD = VDDH - LDO).

Das ist auch wichtig, denn mit den 3,3V versorge ich schließlich andere 
Peripherie, wie z.B. den MPU 9250 Sensor.

Danke und Gruß

Simon

von Thom Lab (Gast)


Lesenswert?

Simon K. schrieb:
> Was hälst du von Konzept der Stromversorgung?

Ich weiss nicht, welches Modul du verwenden wirst. Um möglichst 
effizient zu sein, solltest du während den Schlafphasen (wo wenig Strom 
konsumiert wird) den LDO verwenden, und sobald du Aktiv bist, d.h. 
Sensoren laufen usw. den DC/DC verwenden. Der DC/DC braucht aber meines 
Wissens eine Beschaltung (unter anderem Induktivität als 
Energiezwischenspeicher). Ich weiss nicht, ob die in deinem Modul 
vorhanden ist.
Zudem weiss ich nicht, wieviel Strom über VDD (REGOUT0) raus gehen kann, 
d.h. ob genügend Strom zur Verfügung steht, um all deine Module zu 
versorgen

Für den USB:
- Ich weiss nicht ob es evtl nötig ist, dass VBUS auch am MCU bei VBUS 
verbunden ist (musst du im Datenblatt genauer leseb, Seite 64 steht 
etwas, habs aber nicht ganz gelesen)
- Du solltest den USB Anschluss schützen, schau dir dafür den Schaltplan 
des nRF52833 DK an (findest du auf der Nordic Homepage, dort Seite 6 
"nRF USB Connector") - aber auch hier die Frage: was ist bereits auf dem 
Modul drauf?

Allgemeine Frage: Wieso verwendet ihr den nRF52833? Aus meiner Sicht ist 
der einzige Vorteil gegenüber dem nRF52832, dass er USB hat (hat aber 
der nRF52840 auch). Für den nRF52832 und 52840 gibt es dafür haufenweise 
Module (welche auch ohne Lötstellen unter dem Modul gut lötbar sind), 
z.B. 
https://www.mouser.ch/ProductDetail/Seeed-Studio/113990556?qs=sGAEpiMZZMu3sxpa5v1qrs9COzx3hFsMJD0TMklu0ls%3D 
oder diejenigen von Fanstel (gut, da hats auch Pins unter dem Modul, 
aber Fanstel behält dafür die Modul-Grösse und Pinbelegung unter 
verschiedenen Modulen gleich, d.h. man kann einfach z.B. vom nRF52840 
zum nRF5340 wechseln). Dann gäbe es da noch den neuen nRF5340, welcher 
auf der M33 Architektur basiert und mit TrustZone und erweiterten 
Security-Features kommt - falls ihr dafür eine Verwendung hättet.

von Thom Lab (Gast)


Lesenswert?

Und wenn ihr umbedingt den USB braucht, dann gäbs noch den nRF52820. Der 
wäre ohne Modul auch noch einfach von Hand zu löten da QFN Gehäuse

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Hallo Thom Lab,

zunächst danke, dass du so detailiert in die Thematik eingestiegen bist.

Thom Lab schrieb:
> Ich weiss nicht, welches Modul du verwenden wirst. Um möglichst
> effizient zu sein, solltest du während den Schlafphasen (wo wenig Strom
> konsumiert wird) den LDO verwenden, und sobald du Aktiv bist, d.h.
> Sensoren laufen usw. den DC/DC verwenden. Der DC/DC braucht aber meines
> Wissens eine Beschaltung (unter anderem Induktivität als
> Energiezwischenspeicher). Ich weiss nicht, ob die in deinem Modul
> vorhanden ist.

Dazu steht in der Beschreibung des Moduls:
--------------------
32MHz crystal and R F (VDD) DC/DC inductor (Reg1) are already inside the 
module.
--------------------
Also ja, ist vorhanden. Wie die Umschaltung geschieht, steht im 
Datenblatt des nRF beschrieben :-)

Thom Lab schrieb:
> Zudem weiss ich nicht, wieviel Strom über VDD (REGOUT0) raus gehen kann,
> d.h. ob genügend Strom zur Verfügung steht, um all deine Module zu
> versorgen

Ich hab im nRF Datenblatt irgendwie nix dazu gefunden...bekomme ich aber 
noch raus, mach mir da keine Gedanken, da lediglich der Sensor versorgt 
werden muss, I < 10mA.

Thom Lab schrieb:
> - Ich weiss nicht ob es evtl nötig ist, dass VBUS auch am MCU bei VBUS
> verbunden ist (musst du im Datenblatt genauer leseb, Seite 64 steht
> etwas, habs aber nicht ganz gelesen)

auf jedenfall, hab ich nachgezogen!

Thom Lab schrieb:
> - Du solltest den USB Anschluss schützen, schau dir dafür den Schaltplan
> des nRF52833 DK an (findest du auf der Nordic Homepage, dort Seite 6
> "nRF USB Connector") - aber auch hier die Frage: was ist bereits auf dem
> Modul drauf?

Der Hersteller stellt für das Board eine Referenzschaltung zur 
Verfügung, sodass man weiß, wie das Board anzuschließen ist:

Kap. 8.1
https://www.raytac.com/download/index.php?index_id=46

Den USB habe ich daher, wie dort aufgeführt, angeschlossen.



Zur Frage, warum gerade der nRF52833:

1.: Eingangsspannungsbereich 1,7-5,5V. Bedeutet, ich kann den Chip ohne 
zusätzliche Bauteile direkt mit einer LiPo betreiben. nRF53832 und viele 
Andere haben einen Eingangsspannungsbreich bis 3,6V, d.h. ich kann diese 
nicht direkt hinter dem MCP7381 anschließen, sondern benötige zusätzlich 
nochmal einen DC/DC o.ä. Den großen Eingangsspannungsbereich bietet 
ansonsten nur der nRF52840.

2.: Habe dir mal einen Vergleich der nRF´s im Anhang zur Verfügung 
gestellt. Der nRF52833 kann einfach am meisten. Ob ich jetzt zwingend 
alle dieser Bluetooth Features benötige sei mal dahingestellt, aber ich 
fand einfach, dass es das beste Produkt war. Auch am teuersten, aber das 
ist erstmal egal.


Du hast Recht, es gibt an nRF52833 Boards nicht gerade eine große 
Auswahl...weil Bluetooth 5.1 ja auch noch relativ neu ist.

Zu dem Board was du verlinkt hast. Das ist leider etwas größer (18 mm x 
14 mm x 1.6 mm im Gegensatz zu 15.5mm x 10.5mm x 2.0 mm) und deutlich 
teurer (13€ im Gegensatz zu 7€). Besser lötbar ist es natürlich. Ich 
muss eh mal sehen, wie ich das BGA Board gelötet bekomme...Gibts Leute 
oder Firmen, die sowas in kleiner Stückzahl für überschaubares Geld 
anbieten?

Also ich denke jedes Board hat Vor -und Nachteile. Ich finde das 
verwendete Board in Summe - außer das es schwierig zu löten sein wird - 
gut.


Im Anhang sende ich nochmal den aktualisierten Schaltplan. Ich würde 
diesen im nächsten Schritt mal versuchen zu Layouten...Kennst du dich 
damit auch aus ? :-)

Danke und Gruß

Simon

von Adib (Gast)


Lesenswert?

Hallo,
1) du solltest den MPU9250 nicht mehr benutzen (NRFN)
   als Austausch wäre der ICM80948- der benötigt noch eine separate 
Spannung mehr oder
   der ICM20602 und wenn du den Magnet Sensor brauchst den AKM09970 oder 
so

2) denk mal über einen Ladecontroller nach mit Batterieabschaltung bei 
low Voltage
   "battery charger with power path"
   ähnlich wie bq2407x

3) wenn du noch die JTAG Buchse wegrationalisieren willst (Bauhöhe),
   gibt es noch fertige Nadeladapter Tag-Connect 2050 IDC
   Nordic Semi benutzen die auch auf ihren Designs.
   Da gibt es Layouts mit 10pol oder 6pol.


HTH, Adib.
--

von Thom Lab (Gast)


Angehängte Dateien:

Lesenswert?

Simon K. schrieb:
> 2.: Habe dir mal einen Vergleich der nRF´s im Anhang zur Verfügung
> gestellt.

Am meisten kann der nRF5340, aber wenn du kein TrustZone brauchst, würde 
ich auch auf einen kleineren gehen. Den nRF52820 ist der neue kleine 
Bruder vom nRF52833 - selber Spannungsbereich, etwas kleinerer Speicher 
und ohne PWM, I2S and PDM dafür gut von Hand lötbar - ohne Modul


Adib schrieb:
> 1) du solltest den MPU9250 nicht mehr benutzen (NRFN)

Stimmt, das war mir gar nicht aufgefallen. Du kannst auch den LSM9DS1 
von STM nehmen, der hat auch accel + gyro + mag.


Zum Löten sollte BGA mit einer Heizplatte und einer Heissluft-Lötstation 
machbar sein, geht aber besser wenn du einen Dampfphasen- oder 
Reflow-Ofen hast.
Es gibt Firmen welche solche Lötservices anbieten, kenn ich aber nicht 
da ich Zugang zu einer Dampfphasen-Ofen habe.

Ich empfehle dir wärmstens eine Schutzschaltung am USB hinzuzufügen, 
siehe angehängtes Bild vom nRF DK (ich denke nicht dass im Modul schon 
sowas vorhanden ist.)

Weiter sehe ich den Zweck von LED4 nicht. Ich denke die sollte nicht da 
sein (gemäss Typical Application im MCP73831 Datasheet)

Der Rest sieht für mich gut aus (JTAG habe ich nicht überprüft).
Beim Layouten denke ich dass zwei Lagen genügen sollten. Aufpassen 
solltest du vorallem bei der Keep-Out area für dein Modul (siehe 
Datenblatt)

von Simon K. (simon1516)


Lesenswert?

Hallo zusammen,

könntet ihr mir sagen, was NRFN heißt?


> 2) denk mal über einen Ladecontroller nach mit Batterieabschaltung bei
> low Voltage
>    "battery charger with power path"
>    ähnlich wie bq2407x

Ich habe mir gerade das Datenblatt zu dem "bq2407x" angesehen. Ich sehe 
ehrlich gesagt keine Vorteile gegenüber dem derzeit verbauten MCP7381. 
Ich kenne mich aber so gut auch noch nicht aus und lasse mich gerne 
belehren :-)

Adib schrieb:
> 3) wenn du noch die JTAG Buchse wegrationalisieren willst (Bauhöhe),
>    gibt es noch fertige Nadeladapter Tag-Connect 2050 IDC
>    Nordic Semi benutzen die auch auf ihren Designs.
>    Da gibt es Layouts mit 10pol oder 6pol.

Danke für den Tip, das macht auf jedenfall Sinn. Werde ich morgen 
umdesignen.

Thom Lab schrieb:
> Stimmt, das war mir gar nicht aufgefallen. Du kannst auch den LSM9DS1
> von STM nehmen, der hat auch accel + gyro + mag.

Danke für den Vorschlag, gibts sogar bei Mouser. Allerdings ganz schön 
teuer mit 5€ das Stück :-)

Thom Lab schrieb:
> Ich empfehle dir wärmstens eine Schutzschaltung am USB hinzuzufügen,
> siehe angehängtes Bild vom nRF DK (ich denke nicht dass im Modul schon
> sowas vorhanden ist.)

Ich habe nun beim Hersteller des Boards angefragt, ob da was an 
Schutzmaßnahmen für den USB vorhanden ist. Die sind bei sowas recht 
schnell, denke bekomme morgen eine Antwort. Sollte dies nicht der Fall 
sein, überlege ich den USB nicht komplett zu verschalten, lediglich VUSB 
geschützt durch eine Schottky zum laden des LiPo Akkus -fertig. Flashen 
wäre demnach nur über JLink möglich, ist aber nicht so schlimm.

Thom Lab schrieb:
> Weiter sehe ich den Zweck von LED4 nicht. Ich denke die sollte nicht da
> sein (gemäss Typical Application im MCP73831 Datasheet)

LED3 und LED4 geben den Zustand des Lipo Laders wieder:

- LED 3 leuchtet: LiPo lädt
- LED 4 leuchtet: Lipo fertig geladen
- keine LED leuchtet: Es ist keine Batterie angeschlossen bzw. Lipo 
Lader im Shutdown Modus

Hier wurde das auch so gemacht:
https://www.electroschematics.com/3-7v-li-ion-battery-charger-circuit/

Aber ich denke das ist Jacke wie Hose. Man hätte es auch einfach gemäß 
Datenblatt machen können, beides sollte funktionieren.


Ich melde mich dann morgen nochmal, sobald ich die Rückmeldung vom 
Board-Hersteller bzgl. USB safety habe.

Danke und Gruß

Simon

von theadib@gmail.com (Gast)


Lesenswert?

NRFN - not recommended for new designs

:-)


Die Geschichte mit dem Powerpath controller begründet sich in der 
sicheren Batterieabschaltung bei leerer Batterie.
Wird die Batterie unter einer bestimmten Spannung noch belastet, 
entstehen die Aufblähungen.
Du solltest also zwingend irgendeine Unterspannungs-Abschaltung 
implementieren.

Adib.

von Simon K. (simon1516)


Lesenswert?

Hallo zusammen,

theadib@gmail.com schrieb:
> NRFN - not recommended for new designs

Danke für die Info.

ich glaube fast, es macht Sinn, so einen Ladecontroller (bq2407x) zu 
versehen. Welchen würdest du empfehlen?

S. 3
http://www.ti.com/lit/ds/symlink/bq24078.pdf

ich tendiere zu dem "bq24075", da 4,2V (warum sind dort überhaupt 
Spannungen > 4,2V aufgeführt? Ich dachte immer LiPos sollte man mit max. 
4,2V laden) und 5,5V Vout (damit kann ich mein System versorgen).

Ich denke der Chip bringt Vorteile mit, ich muss mir keine Gedanken mehr 
bzgl Stromentnahme machen und weiterhin benötige ich keinen Aufwand in 
der Software, um die Abschaltung zu veranlassen. Ich denke vom 
Hardwareaufwand/Bauteilgröße werde ich mit dem Chip und der Beschaltung 
etwa ähnlich liegen wie jetzt (MCP + Hühnerfutter) auch.


-------------------------------------------------

Ich habe übrigens gerade eine Rückmeldung vom Hersteller des Boards 
erhalten. Es ist, wie Thom Lab bereits richtig vermutete, keine 
Sicherheitsfunktion mit on Board, sodass diese gemäß Nordic 
Semiconductor Empfehlung nachgezogen werden sollte. Für mich bedeutet 
dies, dass ich lediglich den VUSB mit einer Schottky absichere und die 
Verschaltung von D+, D- etc entferne und damit auf die Möglichkeit des 
Flashens über USB verzichte. Der Mehraufwand an Hardwarte auf der 
Platine zum Schutze des USB ist mir das einfach nicht wert.

--------------------------------------------------

Ebenfalls umdesignen werde ich den Sensor, der ja nicht mehr für neue 
Designs empfohlen wird - danke für den Hinweis.

--------------------------------------------------

Ich habe gerade das Gefühl, ich kann meinen ganzen Schaltplan in die 
Tonne werfen :-/


Gruß

Simon

von Thom Lab (Gast)


Lesenswert?

Simon K. schrieb:
> Ich denke vom
> Hardwareaufwand/Bauteilgröße werde ich mit dem Chip und der Beschaltung
> etwa ähnlich liegen wie jetzt (MCP + Hühnerfutter) auch.

Die Möglichkeit zur Messung der Spannung würde ich lassen, dann weisst 
du wieviel Kapazität noch vorhanden ist, d.h. wie weit dein Akku noch 
geladen ist.

Simon K. schrieb:
> Der Mehraufwand an Hardwarte auf der
> Platine zum Schutze des USB ist mir das einfach nicht wert.

Im Prinzip reicht dir der prtr5v0u2x oder ein USBLC6-4SC, das sind im 
Prinzip einige Dioden in einem Gehäuse. Gibts schon ab SOT23-6, also 
nicht wirklich grösser als eine normale Diode

Simon K. schrieb:
> Ich habe gerade das Gefühl, ich kann meinen ganzen Schaltplan in die
> Tonne werfen :-/

Das ist normal, dass einiges abgeändert wird bis der Schaltplan fertig 
ist.

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Guten Abend,

anbei die neue Version der Schaltung.


Die Änderungen:

1.:

Thom Lab schrieb:
> Im Prinzip reicht dir der prtr5v0u2x oder ein USBLC6-4SC, das sind im
> Prinzip einige Dioden in einem Gehäuse. Gibts schon ab SOT23-6, also
> nicht wirklich grösser als eine normale Diode

Erledigt. "PRTR5V0U2X" zum Schutz der USB Geräte versehen. Ich würde 
dich bitten, nochmal die "Verkabelung" zu prüfen. Habe mich an das 
Referenzschaltbild aus dem Datenblatt gehalten...so kompliziert war das 
ja nicht :-) Den gabs sogar bei Mouser.

2.:

Adib schrieb:
> du solltest den MPU9250 nicht mehr benutzen (NRFN)

Erledigt. Habe nun den ICM-20948 verbaut. Das ist der Nachfolger des 
MPU9250. Besonderheit hier ist, dass dieser normalerweise zwei 
Spannungen benötigt, da die Datenleitungen mit 1,71-1,95V nur 
eingeschränkt beschaltet werden können. Da der Sensor selbst allerdings 
auch ab 1,71V lauffähig ist, werde ich VDD des nRF einfach auf 1,8V 
konfigurieren. Somit habe ich eine Spannung, mit der ich Sensor und 
Busleitungen versorgen kann. Da ich keine Peripherie verwende, die etwas 
anderes als 1,8V benötigt, passt das auch.

3.:

BQ24075 als Ladecontroller. Angeschlossen gemäß Referenzschaltung. 
Widerstände so dimensioniert, das maximaler Ladestrom 200mA (da ich 
einen 200mAh LiPo verwenden möchte voraussichtlich). LED´s zur Status 
Indikation. Der MCP7381 ist dadurch weggefallen. Jetzt habe ich eine 
saubere Trennung zwischen Akku und nachgelagerter Schaltung. Den Teil 
zur Messung der Akkuspannung habe ich auch gelassen. Das sehe ich - wie 
du - als sinnvoll an, auch wenn ich noch nicht weiß ob ich es benötigen 
werde :-)


-------------------------

Geplant ist noch: Die JLink Buchse zu entfernen, um Platz zu sparen.

Ich würde mich sehr freuen, wenn ihr weiter dabei seit und nochmal 
drüberschauen könntet.

Also dann, gute Nacht.

Gruß

Simon

von Stephan (Gast)


Lesenswert?

R1/2 sind nur verbunden aber nicht an VDD angeschlossen. Und 4k7 finde 
ich zu hoch. Bei 1,8V bist Du eher <=1k, kommt aber auf die I2C Länge 
und Speed an.
Vg Stephan

von Stephan (Gast)


Lesenswert?

Und statt dieser seltsamen Akkumessspannung: schau Dir dich mal den 
BQ27421 an. Klein, alles drin, perfekt dokumentiert, i2c.
Vg Stephan

von Thom Lab (Gast)


Lesenswert?

Stephan schrieb:
> Und statt dieser seltsamen Akkumessspannung: schau Dir dich mal den
> BQ27421 an.

Den kannte ich noch nicht, aber sieht vernünftig aus - gibt dir auch 
direkt eine VDD von 1.8V (zwar über LDO, aber allzuviel Verlust hast du 
ja trotzdem nicht, da ich sowieso annehme dass der MCU ein Grossteil der 
Zeit schläft).

Die USB-Verschaltung sieht für mich korrekt aus (ich kenn aber deine 
USB-BUchse nicht, hoffe also dass D- und D+ am richtigen Ort sind). Den 
Rest habe ich heute keine Zeit mehr um ihn anzuschauen.

Weiter solltest du alle Pins die du nicht benutzt entweder gemäss 
Datasheet auf VCC oder GND legen - oder wenn nichts steht ein Not 
Connected (NC) Flag setzen, damit der DRC keine Fehler wirft.

von Alex J. (mjoelnir)


Lesenswert?

Ich vermute mal auch der nRF52 braucht fürs SWD-Interface eine 
Reset-Leitung. Die müsste dann auch an den 10pin connector (oder 
testpads o.ä.) ran.

von Simon K. (simon1516)


Lesenswert?

Stephan schrieb:
> Und statt dieser seltsamen Akkumessspannung: schau Dir dich mal den
> BQ27421 an. Klein, alles drin, perfekt dokumentiert, i2c.

Hi Stephan,

danke für den Vorschlag.

Ich finde den IC allerdings echt kompliziert. Der kann viel mehr als 
das, was ich brauche - noch dazu schwer bis gar nicht lötbar.

Ich bin aber grundsätzlich bei dir, dass ein fertiger IC sicherlich 
sinnvoller ist als eine "selbstgebastelte" Messschaltung.

Daher die Frage: Gibt es zu dem genannten Chip eine Alternative? I2C, 
Ladungszähler, Interrupts, Temperatursensor, … all das brauche ich 
nicht.  Die Information des Akkustandes in % würde mir völlig 
ausreichen. Sprich, ein IC mit wenigen Anschlüssen, zwei Pins für die 
Batterie und ein Pin als Information des Akkustandes in %, fertig.

Gruß

Simon

von Stephan (Gast)


Lesenswert?

Hi Simon,
Naja, die Funktionen brauchst DU ggf nicht, aber alle ‚Battery Gauges‘ 
benötigen diese Werte intern, um eben gaaanz am Ende eine halbwegs 
genaue Angabe zum StateOfCharge ‚SOC‘ zu berechnen. Auch eine minimale 
Programmierung ist nötig, denn woher soll so ein Baustein wissen, was 
für ein Akku verbaut ist...(Chemistry)
Ok, du hattest keine Angaben zur Bestückungs- und Löttechnik gemacht;) - 
BGA9 mag sicherlich im Hobbybereich etwas kompliziert sein.
Diesen Baustein hatte ich vorgeschlagen, weil wir ihn in unseren 
Produkten ebenfalls verbauen und Du ja schon einen BQ* hast;).
BatteryGauges gibts aber von vielen Herstellern in allen möglichen 
Gehäusen.
Vg Stephan

von Simon K. (simon1516)


Lesenswert?

Stephan schrieb:
> Hi Simon,
> Naja, die Funktionen brauchst DU ggf nicht, aber alle ‚Battery Gauges‘
> benötigen diese Werte intern, um eben gaaanz am Ende eine halbwegs
> genaue Angabe zum StateOfCharge ‚SOC‘ zu berechnen. Auch eine minimale
> Programmierung ist nötig, denn woher soll so ein Baustein wissen, was
> für ein Akku verbaut ist...(Chemistry)
> Ok, du hattest keine Angaben zur Bestückungs- und Löttechnik gemacht;) -
> BGA9 mag sicherlich im Hobbybereich etwas kompliziert sein.
> Diesen Baustein hatte ich vorgeschlagen, weil wir ihn in unseren
> Produkten ebenfalls verbauen und Du ja schon einen BQ* hast;).
> BatteryGauges gibts aber von vielen Herstellern in allen möglichen
> Gehäusen.
> Vg Stephan

Was hälst du hiervon?

S. 16
https://www.mouser.de/datasheet/2/609/29411f-1270273.pdf

Ist in Prinzip eine Kombi aus Battery Gauge und Lade-IC. Meiner Meinung 
nach sehr einfach aufgebaut, sehr übersichtlich. Auch der Lade-IC ist 
deutlich abgespeckter als der, den ich jetzt verwende. Lötbar ist das 
ganze auch.

Gruß Simon

von Stephan (Gast)


Lesenswert?

Hi Simon,
Kenne die beiden IC nicht persönlich, ist aber ja ein renommierter 
Hersteller :)
Denke nicht, dass Du damit etwas grundsätzlich falsch machst.
Viel Erfolg, Stephan

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe den Schaltplan nochmal überarbeitet (s. Anhang):

1.: Lade-IC und Battery Gauge ersetzt. Ich verwende nun folgende 
Kombination:

S. 16
https://www.mouser.de/datasheet/2/609/29411f-1270273.pdf

Der dort beschriebene Aufbau ist recht übersichtlich und für mich völlig 
ausreichend. Die Beschreibungen der IC´s sind für mich auch gut zu 
lesen. Und das beste, beide gibts bei Mouser und sind einigermaßen 
lötbar.

Eine Verständnisfrage: Der IC für den Akkustand würde ja die ganze Zeit 
im Shutdown sein. Liege ich richtig in der Annahme, das der nRF trotzdem 
die ganze Zeit weiter VDDH erhält? Es ist ja sozusagen nicht die 
Spannung weggeschaltet, sondern lediglich der ganze "Zählmechanismus". 
nRF wacht also auf und schaltet den IC, sodass dieser anfängt 
mitzuzählen, was an Strom verbraucht wird. Bitte um Info, wenn ich 
falsch liege.

2.:

Stephan schrieb:
> R1/2 sind nur verbunden aber nicht an VDD angeschlossen. Und 4k7 finde
> ich zu hoch. Bei 1,8V bist Du eher <=1k, kommt aber auf die I2C Länge
> und Speed an.

erledigt. PullUps für den I2C nun 1kOhm.

3.:

Stephan schrieb:
> Und statt dieser seltsamen Akkumessspannung: schau Dir dich mal den
> BQ27421 an. Klein, alles drin, perfekt dokumentiert, i2c.

ich habe mich aus den oben genannten Gründen für den "LTC2941-1" 
entschieden.


Was noch aussteht:

Thom Lab schrieb:
> Weiter solltest du alle Pins die du nicht benutzt entweder gemäss
> Datasheet auf VCC oder GND legen - oder wenn nichts steht ein Not
> Connected (NC) Flag setzen, damit der DRC keine Fehler wirft.

Mache ich, wenn ich keine großen Änderungen mehr vornehmen muss. Im 
Moment kommen noch zu viele Verbesserungsvorschläge :-)

Alex J. schrieb:
> Ich vermute mal auch der nRF52 braucht fürs SWD-Interface eine
> Reset-Leitung. Die müsste dann auch an den 10pin connector (oder
> testpads o.ä.) ran.

Kannst du mir genauer sagen, was noch fehlt? Ich habe die JLink Buchse 
so verschaltet, wie der Hersteller des Boards das auch auf seinem 
Entwicklerboard gemacht hat (s. Anhang, rot umkreist)





Danke und Gruß an alle

Simon

: Bearbeitet durch User
von Stephan (Gast)


Lesenswert?

Simon K. schrieb:
> Eine Verständnisfrage: Der IC für den Akkustand würde ja die ganze Zeit
> im Shutdown sein.

Warum genau? Würdest Du dann CC/!AL im Gauge so programmieren wollen? 
(R6 kann auch 10k -wie alle Pullups (ausser I2C), wenn der PORTPIN keine 
internen Pullups kann.)

Ansonsten ist eigentlich der ‚übliche‘ Weg, das die Gauge IMMER im 
Akkuzweig hängen und (so macht es z.B. der o.g. BQ27421) selbstständig 
seine Schlafmodi verwaltet. Der Sinn dahinter ist, dass der Gauge auch 
die Selbstentladung des Akku und einen Ladevorgang (auch unvollständige) 
vermisst.
Sei trotzdem nicht enttäuscht, wenn SoC nicht genau passt;)
VG Stephan

von Thom Lab (Gast)


Lesenswert?

Sieht gut aus, einige Kleinigkeiten die ich ändern würde:

-2k2 Pull-Ups am LTC2941-1 anstatt 2k da besser erhältlich (oder 1k). 
Auf folgendem Link findest du eine "Anleitung" wie du den Wert 
berechnest https://www.ti.com/lit/an/slva689/slva689.pdf. Ich würde bei 
beiden IC 2k2 nehmen (dann hast du zusammen, da parallel schaltung, 
1k1).
https://www.ti.com/lit/an/slva689/slva689.pdf

-Weiter würde ich C10 durch einen 0.1uF ersetzen (wie auch im 
Datasheet).

-Allgemein bin ich der Meinung, dass du als Abblock-Kondensatoren für 
Vdd, Vddh, .... je 2 Kondensatoren a 0.1uF und 1uF nehmen solltest (oder 
0.1uF und 10uF).
https://learn.sparkfun.com/tutorials/capacitors/all#application-examples 
, Kapitel "decoupling capacitors". Der 0.1uF ist da, um Hochfrequente 
Transienten zu filtern, der 1uF für die Niederfrequenten (siehe 
Tiefpassfilter). Im angefügten Referenz-Schaltkreis vom nRF52833 siehst 
du, dass sogar 3 verschiedene Werte (an verschiedenn Vdd Pins) genutzt 
werden (halte ich aber für übertrieben)

-Braucht dein Gerät einen Überspannungsschutz, respektive einen Reversed 
Polarity Schutz (einmal am Input, wo später der USB sitzt, einmal am 
Output wo der Akku ist, falls einer den Akku falsch anklemmt)?

von Simon K. (simon1516)


Lesenswert?

Stephan schrieb:
> Warum genau? Würdest Du dann CC/!AL im Gauge so programmieren wollen?
> (R6 kann auch 10k -wie alle Pullups (ausser I2C), wenn der PORTPIN keine
> internen Pullups kann.)

S. 9
https://www.mouser.de/datasheet/2/609/29411f-1270273.pdf

Ich würde den "CC/!AL" so konfigurieren, dass ein digitaler I/O vom uC 
die Information "Charging Complete" mitteilen kann.

Aber was hat das mit dem "Shutdown" Mode zutun? Mir geht es nur darum, 
dass ich nicht dauerhaft die 70uA im normal supply Mode verbrauche 
sondern nach Möglichkeit (immer wenn der uC schläft) lediglich 1uA im 
Shutdown Mode.


> Ansonsten ist eigentlich der ‚übliche‘ Weg, das die Gauge IMMER im
> Akkuzweig hängen und (so macht es z.B. der o.g. BQ27421) selbstständig
> seine Schlafmodi verwaltet.

Okay, das ist eine hilfreiche Information. Dann muss ich mich ja um gar 
nichts mehr kümmern. Wo steht denn, wann ich im normal Mode und wann im 
Shutdown Mode operiere?

Gruß

Simon

von Stephan (Gast)


Lesenswert?

Simon K. schrieb:
> Wo steht denn, wann ich im normal Mode und wann im Shutdown Mode
> operiere?

Hi Simon,
Du bist der neue Experte für die Linear Gauge;) ich kenne die leider 
nicht.

> Mir geht es nur darum, dass ich nicht dauerhaft die 70uA

Verstehe ich. Aber welche Selbstentladungsrate hat ein LiPoly? 
1-2%/Monat? Rechne das doch mal spassenshalber für Deinen 300mAh LiPo 
aus...
Das ganze Stromsparpaket ist Feintuning in Deiner FW...

Vg Stephan

von Simon K. (simon1516)


Lesenswert?

Stephan schrieb:
> Verstehe ich. Aber welche Selbstentladungsrate hat ein LiPoly?
> 1-2%/Monat? Rechne das doch mal spassenshalber für Deinen 300mAh LiPo
> aus...
> Das ganze Stromsparpaket ist Feintuning in Deiner FW...

OK, macht Sinn.

Thom Lab schrieb:
> -Allgemein bin ich der Meinung, dass du als Abblock-Kondensatoren für
> Vdd, Vddh, .... je 2 Kondensatoren a 0.1uF und 1uF nehmen solltest (oder
> 0.1uF und 10uF).

Redest du hier von jedem einzelnen IC, der mit VDDH und VDD versorgt 
wird? Oder lediglich den Anschluss am nRF Board?

Bei dem nRF Board habe ich mich (Kap 8.1 
https://www.raytac.com/download/index.php?index_id=46) wie auch bei 
sämtlichen anderen IC´s an die Referenzschalterbilder der Datenblätter 
gehalten.

Was ist nun richtig? Was macht man in der Praxis?

Viele Grüße

Simon

von Simon K. (simon1516)


Lesenswert?

Noch eine Rückfrage: In meinem letzten Schaltplan sieht man die JLink 
Buchse, die u.A. einen 3V3 Pin hat. Diese Spannung wird vom Programmer 
(nRF52833 DK Board) zur Verfügung gestellt. Diese 3V3 sind aber nirgends 
angeschlossen. Bekomme ich so das Board überhaupt von extern gepowert?

Auf dem demo Board von Raytac ist das aber auch so gemacht. Hier mal 
deren Schematic:

https://www.raytac.com/product/ins.php?index_id=97

von Stephan (Gast)


Lesenswert?

Simon K. schrieb:
> Diese 3V3 sind aber nirgends angeschlossen.

Auf dem Raytac Board ist aber doch VCC und 3V3 verbunden, WENN J6 
gesteckt ODER R30 bestückt....

von Simon K. (simon1516)


Lesenswert?

Stephan schrieb:
> Simon K. schrieb:
>> Diese 3V3 sind aber nirgends angeschlossen.
>
> Auf dem Raytac Board ist aber doch VCC und 3V3 verbunden, WENN J6
> gesteckt ODER R30 bestückt....

Stimmt, hab ich übersehen. Die Spannungsversorgung über JLink kann ich 
aber optional auch weglassen oder? Kann ich das Board beim Flashen 
einfach über den Akku versorgen? Könnte ich ein Problem mit zu hohen 
Pegeln vom JLink bekommen?

3V3 kann ich nicht verbinden, da der Plan war, VDDH < 4,2V (Batterie) 
und VDD = 1,8V (Sensor + I2C) einzustellen.

von Stephan (Gast)


Lesenswert?

Inzwischen sollte Dein google dich wieder gehen... ist gleich der erste 
Treffer: 
https://forum.segger.com/index.php/Thread/5247-SOLVED-Debugging-custom-board-at-1-8V/

von Thom Lab (Gast)


Lesenswert?

Simon K. schrieb:
> Kann ich das Board beim Flashen
> einfach über den Akku versorgen?

Ja, 3.3V nicht verbinden sondern nur VTref/VTG welches für ein "Sensing" 
der Spannung da ist.
https://www.segger.com/products/debug-probes/j-link/technology/interface-description/

Meiner Ansicht nach ist gängige Praxis 2 Kondensatoren zu verwenden (für 
jeden IC/Modul!). Du musst an jedem einzelnen Chip die Transienten 
abfangen können, deshalb sollen sie ja auch möglichst nahe an den Chip.

von Simon K. (simon1516)


Lesenswert?

Thom Lab schrieb:
> Simon K. schrieb:
>> Kann ich das Board beim Flashen
>> einfach über den Akku versorgen?
>
> Ja, 3.3V nicht verbinden sondern nur VTref/VTG welches für ein "Sensing"
> der Spannung da ist.
> 
https://www.segger.com/products/debug-probes/j-link/technology/interface-description/


Das geht allerdings nur, wenn man einen Programmer hat, der Level 
Shifting unterstützt. Verwendet man einen Edu Mini oder wie ich das 
nRF52833 DK muss VDD vom DK auf die gewünschte Spannung, in meinem Fall 
1,8V, angepasst werden.

Quelle:
https://infocenter.nordicsemi.com/index.jsp?topic=%2Fug_nrf52833_dk%2FUG%2Fnrf52833_DK%2Fhw_debug_out.html

Dieses "automatische Anpassen" der Pegel geht auch automatisch, 
allerdings nur bei den teureren Programmern.

Macht aber nix, dann werde ich halt VDD des DK umstellen, sodass es 
passt.


Gruß

Simon

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

anbei eine neue Version der Schaltung. Folgende Dinge habe ich 
verbessert:

1.:

Thom Lab schrieb:
> 2k2 Pull-Ups am LTC2941-1 anstatt 2k da besser erhältlich (oder 1k).

Es hört sich so an, als wolltest du zwei zusätzliche PullUps (neben 
denen, die schon vorhanden sind) versehen. Mein Verständnis ist, dass 
der Bus lediglich zwei PullUps benötigt. SDA und SCL ist komplett 
verbunden. Ich habe mich nun aufgrund der Versorgungsspannung von 1,8V 
für 1,2k PullUps entschieden.

2.:

Thom Lab schrieb:
> Weiter würde ich C10 durch einen 0.1uF ersetzen (wie auch im
> Datasheet).

korrekt, erledigt.

3.:

Thom Lab schrieb:
> Allgemein bin ich der Meinung, dass du als Abblock-Kondensatoren für
> Vdd, Vddh, .... je 2 Kondensatoren a 0.1uF und 1uF nehmen solltest (oder
> 0.1uF und 10uF).

Nehms mir nicht übel, aber ich werde die Auswahl an Kondensatoren so 
belassen, wie es derzeit ist, gemäß Vorgabe aus den unterschiedlichen 
Datenblättern. Wahrscheinlich führen hier aber viele Wege nach Rom.

4.:

Thom Lab schrieb:
> Braucht dein Gerät einen Überspannungsschutz, respektive einen Reversed
> Polarity Schutz (einmal am Input, wo später der USB sitzt, einmal am
> Output wo der Akku ist, falls einer den Akku falsch anklemmt)?

Nein. Der Akku ist fest verbaut. Der Micro USB kann lediglich in einer 
Richtung eingesteckt werden. Es muss auch nicht berücksichtigt werden, 
dass ein USB Ladegerät auf einmal mehr als 5V bereitstellt.

5.:

Thom Lab schrieb:
> Ja, 3.3V nicht verbinden sondern nur VTref/VTG welches für ein "Sensing"
> der Spannung da ist.

Habe den Pin nun mit VDD des uC beschaltet. Ich muss jetzt lediglich 
darauf achten, dass der Programmer (nRF52833 DK Board) mit dem gleichen 
Wert für VDD belegt ist. Das DK Board macht das leider nicht 
automatisch, aber das ist halb so wild.

------------------------------

Ich hoffe, dass nun keine größeren Dinge mehr auffallen. Ich würde 
nämlich dann mit dem PCB Layout beginnen und hoffe hierbei weiter auf 
eure Unterstützung.

Viele Grüße

Simon

von Thom Lab (Gast)


Lesenswert?

Simon K. schrieb:
> oder wie ich das
> nRF52833 DK muss VDD vom DK auf die gewünschte Spannung, in meinem Fall
> 1,8V, angepasst werden.

Nein, auch auf dem nRF52833 DK gibt es den "VTG" Pin (Stiftleiste oben 
rechts neben Power-Schalter, 3 Pin von oben).

Simon K. schrieb:
> Es hört sich so an, als wolltest du zwei zusätzliche PullUps (neben
> denen, die schon vorhanden sind) versehen. Mein Verständnis ist, dass
> der Bus lediglich zwei PullUps benötigt. SDA und SCL ist komplett
> verbunden. Ich habe mich nun aufgrund der Versorgungsspannung von 1,8V
> für 1,2k PullUps entschieden.

Da hast du recht, sorry mein Fehler

Simon K. schrieb:
> Ich würde
> nämlich dann mit dem PCB Layout beginnen und hoffe hierbei weiter auf
> eure Unterstützung.

Die hast du.
Achte beim Layout darauf, dass die Masse-Flächen möglichst gross und 
durchgehend verbunden sind (viele Vias). Du hast dann sozusagen einen 
zusätzlichen Kondensator.

von Simon K. (simon1516)


Lesenswert?

Thom Lab schrieb:
> Simon K. schrieb:
>> oder wie ich das
>> nRF52833 DK muss VDD vom DK auf die gewünschte Spannung, in meinem Fall
>> 1,8V, angepasst werden.
>
> Nein, auch auf dem nRF52833 DK gibt es den "VTG" Pin (Stiftleiste oben
> rechts neben Power-Schalter, 3 Pin von oben).

Ja, die gibt's, sorgt aber nicht für automatisches Anpassen der 
Programmierspannung (wie gesagt, teurere Programmer können das).

https://devzone.nordicsemi.com/f/nordic-q-a/59654/trying-to-flash-custom-board-with-nordic-nrf52833-dk

Dort beantwortet der Nordic Support die Frage eindeutig:
------------------
If not, you need to power the custom board externally. As long as the DK 
detects an external board on the VTG pin, it will program the external 
board. Note that the debug chip on the DK does not support level 
shifting, which means that the external board needs to be powered at the 
same voltage level as VDD on the DK (normally 3 V).
------------------

Heißt für mich, das ich darauf achten muss, dass "VDD custom board" = 
"VDD nRF52833 DK".

Oder ich verstehe hier was komplett falsch :-)

: Bearbeitet durch User
von Thom Lab (Gast)


Lesenswert?

Simon K. schrieb:
> If not, you need to power the custom board externally. As long as the DK
> detects an external board on the VTG pin, it will program the external
> board. Note that the debug chip on the DK does not support level
> shifting, which means that the external board needs to be powered at the
> same voltage level as VDD on the DK (normally 3 V).

Danke, da habe ich wieder einmal etwas gelernt :)

von runout (Gast)


Lesenswert?

Ohne jetzt alles gelesen zu haben: Resettaster fehlt, Reset vom Jtag 
fehlt

Runout

von Simon K. (simon1516)


Lesenswert?

runout schrieb:
> Ohne jetzt alles gelesen zu haben: Resettaster fehlt, Reset vom Jtag
> fehlt
>
> Runout

Hi Runout,

der Reset ist auf deren Demo Board auch nicht verschaltet:
https://www.raytac.com/product/ins.php?index_id=97
Etwas runterscrollen, dort sieht man ein Bild der Schematic.

Trotzdem bekomme ich das Board geflasht. Ich bin ehrlich gesagt nicht 
sicher, ob ich den unbedingt verkabeln muss.

----------------------------------


Noch eine andere Frage:

Derzeit verbinde ich den Programmer (nrf52833 DK Board) mit dem Modul 
über eine 10 Pin IDC Wire:
https://odseven.com/products/10-pin-2x5-socket-1-27mm-idc-swd-cable-150mm-long

Nun gibt es ja diese tollen Nadeladapter:
https://www.segger.com/products/debug-probes/j-link/accessories/adapters/6-pin-needle-adapter/

6 Pin würde für mich ja schon reichen. Allerdings kann ich die derzeit 
verwendete 10 Pin IDC Wire ja nicht mit dem verlinkten Produkt zum 
flashen verbinden.

Gibt's da ne Möglichkeit? :-)

von Simon K. (simon1516)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich bin nun mit dem ersten Platinenlayout fertig:

-lediglich einseitig bestückt auf dem Top Layer. Ground unverbunden 
gelassen und am Ende ein Polygon GND verwendet.

- Kondensatoren so nah wie möglich an die jeweiligen IC´s

- Versorgungsleitungen breiter als Signalleitungen


Was sagt ihr vom Prinzip her? Würdet ihr es komplett anders angehen oder 
kann man es so machen? Ich weiß, dass vieles beim Platinenlayout auch 
Geschmackssache ist :-)

Anbei sende ich euch zur besseren Nachvollziehbarkeit neben den Bildern 
auch die .sch und .pcb Dateien für Eagle.

Freundliche Grüße

Simon

: Bearbeitet durch User
von Simon K. (simon1516)


Lesenswert?

Noch jemand da? :-)

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.