Leider kenn ich mich wenig mit den einzelnen Mircochips aus. Welche gut und nutzbar sind.
Meine Vorgaben sind:
PSRAM (Also WSROVER oder A1S)
Möglichkeit für Stereo Sound und Kopfhörer
SD_MMC
LiPo Battery Modus (inkl. Laderegler)
Laden und Flashen über selben USB Anschluss
Ein / Aus schaltbar (ähnlich Polulu Switch)
Lange Akkulaufzeit (also wenig Verbrauch im sleepmode)
Hat jemand schon entsprechende Schaltpläne und Chip Vorschläge.
Die Chips sollten soweit möglich standards sein, damit man diese beim bestellen gleich bestücken lassen kann.
Der A1S ist aus meiner Sicht nicht so zielführend, weil man für den integrierten AC101 wieder zwei GPIOs braucht (i2c). WROVER ist aber gut und tatsächlich von @compactflash schon in der Mache. Bisschen Input dazu gibt’s hier: Fertig gelötete Platinen / Bauteil-Kits · Discussion #68 · biologist79/ESPuino · GitHub
Generell wird er schauen, dass Bauteile verwendet werden, die einerseits nicht so teuer sind und andererseits nicht brutal schwer zu löten. Also an SMD wird’s (alleine schon wegen WROVER) nicht vorbeigehen. Wobei man den, wie ich demletzt gesehen habe, auch bei JLCPCB direkt bestücken lassen kann.
Ich denke um ein Bestücken beim Hersteller kommt man nicht herum.
Die Meisten trauen sich nicht an das Löten von SMD heran. Da ist THT das Maximum der Gefühle.
SMD bekommt man auch nicht mit dem Baumarktlötkolben verlötet und in meinem Freundeskreis traue ich es gerade mal einer weiteren Person zu, eine SMD Platine zum Laufen zu bekommen. Zumal SMD löten echt kein Vergnügen ist. Ich denke viele wollen sich den Frust und die Zeit sparen.
Man hat es ja auch im Tonuinoforum gesehen wie grob zusammengekleckert manche Platinen aussahen und die Besitzer werden da nicht lange Freude dran haben.
Mit einer AIO-Platine wird man auf jeden Fall die Einstiegshürden senken.
Fraglich ist jedoch, wie man eine Gruppenbestellung oder ähnliches regeln möchte und ob man genug Besteller zusammenbekommt. Die Tonuinojungs haben sicherlich min 200 Stück bestellt (bei über 2000 Mitglieder) - hier im Forum gibt es momentan 42Mitglieder
Ich würde es sehr begrüßen, wenn es eine complete Platine geben würde. Ja @QDaniel du hast recht, dann wird die Akzeptanz des Forums enorm gestärkt.
Es gibt mittlerweile mehrere verschiedene Themen über complete-platinen. Ich würde halt versuchen diw Platine so erweiterbar/universal wie möglich zu machen (deswegen hatte ich damals compactflash auch vorgeschlagen einen Anschluss für eine Tastermatrix a la Hörbert anzubieten)
Es gab ja auch Vorschläge den Reader und den LED-Ring auf eine eigene Platine zu packen.
Aber beim Thema Antennendesign läuft es mir kalt den Rücken runter
ich bin auch schon gedanklich bei der Complete Platine. Ich bin allerdings von der A1S weg - hin zur Espressif Lyrat als „Vorlage“ geschwenkt. Die Platine ist deutlich besser beschrieben und es steht eine Schematic zur Verfügung.
Folgende Probleme beschäftigen mich zur Zeit noch:
Der verwendete Audio-Chip ES8388 benötigt - wenn ich das richtig sehe - eine eigene Library/Treiber…
Dem WROVER „fehlen“ ja die GPIOs 16 & 17, es wird also knapp. Sehr wahrscheinlich müsste ich die GPIOs für die Buttons einsparen
Die Touchpads und I2C würden der GPIO Knappheit ebenfalls zum Opfer fallen
Sofern eine einheitliche Entwicklung einer solchen Platine von der Community hier gewünscht wird, sollten wir auch überlegen die Zeichnung bei easyeda oder ähnlichen Anbieter zu realisieren. Das hätte den Vorteile, das wir die „Schwarmintelligenz“ nutzen und mit mehreren Leuten über Zeichnung und PCB schauen könnten.
Eure Einschätzung zum „Customized“ Lyrat würde mich aber durchaus interessieren…
WROVER (da gibt es inzwischen auch neuere Revisionen als B, aber weiß nicht, ob da mein Herz dran hängt)
DAC/Amp: Da habe ich keinen Überblick. Auf jeden Fall etwas, wo man mit den drei I2S-Pins hinkommt und wo man nicht noch i2c als Controller braucht. Weil das wird pintechnisch nicht gehen.
Integrierte Ladeelektronik für LiPo
Abschaltung: Grundsätzlich ist das mit den Mosfets ok. Worauf @compactflash jedoch schon eine Weile erfolgreich setzt: LTC2954. Da schaltet man den gesamten ESP32 gleich mit aus. Vorteil an dieser Sache ist: Sollte die Software mal hängen, kriegt man den ESP32 so auf jeden Fall, auch im Batteriebetrieb, neu gestartet. Bei den Mosfets braucht’s da entweder einen mehr oder weniger versteckten Reset-Button oder man muss halt das Gehäuse öffnen.
SD_MMC (Slot onboard)
PN5180 als RFID (braucht mehr GPIOs aber die Sensitivität schlägt den RC522 um Längen)
USB/UART-Converter fänd ich auch fein, weil man das Teil damit auch geflasht kriegt, wenn es eingebaut ist. Ob man das wirklich braucht, hängt ein Stück weit aber auch damit zusammen, ob man künftig OTA zum Flashen nutzt.
LDO, welcher aus 5V => 3.3V macht. Ich persönlich möchte das auch weiterhin per USB anschließen.
Breakouts als JST-Stecker (ich benutze PH, aber gibt ja auch andere)
Breakouts für Neopixel, Taster, Drehencoder, Serial, Batterie (ggf auch Reset)
Optionale Kopfhörerplatine, die extern angebunden wird. Technisch nicht notwendig, aber macht es halt einfacher, die Platine im Gehäuse zu platzieren.
Ist Kopfhörer eingesteckt, so geht der Lautsprecher aus und umgekehrt
Batteriespannungs-Messung
Insgesamt ist es auf jeden Fall wichtig, dass sich die Stromaufnahme im Batteriebetrieb und Deepsleep in Grenzen hält. Ich meine die Lolins liegen so zwischen 100 und 200 uA. Da kann ich sehr gut mit leben.
Bis auf den WROVER auf jeden Fall Dinge, die ich schon jetzt mit Carrier-PCBs + Kopfhörerplatine hinkriege.
Optional:
Analoges Auslesen der Buttons. Spart GPIOs.
Ich frage mich immer wieder, wieviel Zugewinn eine Antenne brächte. Bluetooth geht z.B. ein paar Meter, aber wennst aus dem Raum rausgehst, ist Feierabend.
Übrigens:
Wenn man nicht per PN5180 aufwecken will, kommt man mit obigen Zielen, auch ohne analoges Einlesen der GPIOs, exakt hin. Übrig ist dann halt keiner mehr.
Die einzelne Kopfhörerplatine hat auch den Vorteil, dass man diese beweglich lagern kann. Damit die Buchse beim grob Hantieren nicht aus der Platine bricht.
Wenn man den Bus nach außen legt, dann sollten zusätzliche I/Os über Expander kein Problem sein. Z.B. sind dann auch weitere Sensoren oder wie heute gewünscht ein Mikro theoretisch kein Ding (das habe ich noch nie ausprobiert)
falls man eine Ladeelektronik integeriert, dann sollte man vielleicht mal schauen ob man vom Lipo weggeht und z.B. wie die Kollegen im Nachbarforum einen LiFePo4 verwendet. In der Toniebox wird ein Ni-MH verwendet
Sehe ich auch so … bzw. reicht es ja, wenn die „Buchse“ nicht aufgelötet ist.
Aus diesem Grund habe ich auch die Ladeelektronik ausgelassen. So kann die Power-Platine irgendwo im Gehäuse platziert werden und man ist flexibel was den Akku angeht.
Hätte ich auch gerne, ist bei LiFePo4 nicht so trivial.
Mal unabhängig vom DAC, wäre i2c ja schon fein… Lasst uns doch mal GPIOs sammeln.
Was meinst du damit? Also welche einsparen kannst durch analoges Einlesen. Ansonsten werden gebraucht:
SD_MMC (1 Bit): SCK, MISO, MOSI => 3
PN5180: SCK, MISO, MOSI, CS, BUSY, RST (und bei Aufwecken auch IRQ) => 6 (7)
Drehencoder: CLK, DT, Button (3)
Tasten (3)
Neopixel (1)
I2S: BCLK, LRC, DOUT (3)
Kopfhörer-Detect (1) (Kann man auch weglassen, wenn man zwischen Lautsprecher und Kopfhörer keine getrennten Maximallautstärken braucht.)
Batteriespannung (1)
Bei einem WROVER muss man halt auf PN5180-IRQ oder z.B. Kopfhörer-Detect verzichten. Alles zusammen geht nicht. Außer man liest die Buttons halt analog ein. Oder wählt ein anderes Bedienkonzept. Oder nimmt keinen PN5180. Man muss halt die GPIOs geschickt verteilen, weil man nicht alle GPIOs uneingeschränkt für alles verwenden kann.
da bekommt man aber auch bloß 2 I/Os wenn das reicht isses okay. Nachtrag: eigentlich kommt doch noch der Button vom Drehgeber und der Kopfhörer detect dazu, oder?
Auf den Kopfhörer detect würde ich nicht (zum Schutz der Kids) verzichten.
Kleine Erfahrung von mir. Ich habe ein Sonoro AU1300 und da ist die Tastenfront auch durch Widerstände kodiert. Im Laufe der Zeit waren die Taster leicht korodiert, dadurch machte fast jeder Taster jetzt was anderes. Das analoge Einlesen kann also auch eine Fehlerquelle werden
Im Netz hab ich sowas gefunden, obwohl das nicht zur angehängten Kurve passt.
100% = 13,4
75% = 13,25
50% = 13,12 - 13,0
25% = 12,8 - 13,0
0% = 10,4 - 12,0
Da kann man sicherlich auch mit eremit telefonieren - er hat da sicherlich einen Tipp
Eigentlich es ja genau das, was man gerne hätte. Aber zur Ableitung der Restenergiemenge ist es natürlich doof, hehe. Zumal die ADCs des ESP32 jetzt auch keine Koryphäen auf ihrem Gebiet sind. Schon alleine im Spannungsbereich von >=3V. In dieses Problem bin ich schön eingelaufen, als ich einen Spannungsteiler mit 75% / 25% gemacht habe.
Bei LiPo ist es allerdings ok für mich. Oder anders gesagt: Eine Füllstandsanzeige nur auf Basis der Spannung ist für mich hinreichend genau. Das muss ja kein Präzisionsinstrument sein.