Hallo.
1. Also ohne den mpu6050 geht der Controller nicht. Er gibt dann ne Fehlermeldung raus. Die sieht man aber nur über die serielle Konsole wenn man sich mit nem pc auf den Controller verbindet.
2. die internen LEDs benutze ich nicht. Die sind ja am Ende innerhalb des Gehäuses und nicht sichtbar. Vom Controller aus werden die ersten 4 LEDs von String1 und die erste led von string2 benutzt. Sobald man die rechte Taste 2 secunden gedrückt hält zeigen die 4 LEDs den Akkustand an und die 1. led auf dem zweiten String blinkt um zu zeigen das der Controller aktiv ist.
Die interne led auf dem Controller wechselt jedesmal wenn der mpu abgefragt wird den Status. Ist aber eher für Debugging gedacht.
so sollte das in der serial console ausschauen wenn alles richtig ist:
---- Closed serial port /dev/tty.usbmodem2101 due to disconnection from the machine ----
---- Reopened serial port /dev/tty.usbmodem2101 ----
10:54:06:528 -> Initializing I2C devices...
10:54:06:530 -> Testing MPU6050 connection...
10:54:06:530 -> MPU6050 connection successful
10:54:06:531 -> Accelrange:2
10:54:06:531 -> Gyrorange:2
10:54:06:531 -> Initializing DMP...
10:54:07:022 -> >**......>......These are the Active offsets:
10:54:08:702 -> -6373.00000, 939.00000, 1197.00000, 51.00000, 31.00000, -3.00000
10:54:08:704 ->
10:54:08:704 -> Enabling DMP...
10:54:08:705 -> Enabling interrupt detection (Arduino external interrupt 3)...
10:54:08:706 -> DMP ready! Waiting for first interrupt...
Alles anzeigen
die offsets ändern sich je nach position des controllers. dort rechnet er sich sozusagen auf null. er schaut wo oben,unten,links,rechts ist und rechnet die schwerkraft aus den daten raus damit die beschleunigungswerte nicht verfälscht werden.
so schaut dann die akkuanzeige aus. auf dem oberen string werden je nach akkustand 1-4 leds benutzt.
wenn der controller voll ist leuchten die 4 leds blau.
wenn er kurz vor leer ist wechselt die letzte led von gelb nach rot.
ne akkukurve ist nicht hinterlegt. also entspricht die anzeige nicht 1 zu 1 dem ladestand. da müsste sich mal jemand drann austoben der mehr von akkuanzeigen und nichtlinearer entladung bei lipos versteht. aber ist ja open source. vieliecht findet sich noch jemand. folgende spannungen sind auf die leds gemapped:
Spannung größer oder gleich 4.2 = 5 Leds Blau
Spannung zwischen 4.2 und 4.0 = 4 Leds Grün
Spannung zwischen 4.0 und 3.8 = 3 Leds Grün
Spannung zwischen 3.8 und 3.6 = 2 Leds Gelb
Spannung zwischen 3.6 und 3.4 = 1 Leds Gelb
Spannung zwischen 3.4 und 3.2 = 1 Led Rot
Spannung zwischen 3.2 und 3.0 = keine led an <— hier schaltet der akkuschutz dann ab.
Spannung zwischen 3.0 und 2.8 = keine led an
auf dem unteren string blinkt eine led rot beim laden und blau beim entladen. damit man sieht das der controller noch aktiv ist und nicht eingefroren.