ESP32 Port inkl. Webinterface


#101

Nicht mehr, da ja Weihnachten rum ist und die Boxen nun weg sind. Den letzten Stand habe ich auf github.com/ckul hochgeladen und in der Beschreibung steht was der abgesehen von der tonuino V2 alles noch kann.

Jetzt habe ich mir alles neu bestellt um mit dem Vs1053 weiter zu machen, die bastelkiste war leider leer und darum muss ich jetzt erst mal warten.

Ich werde mich wohl in der Zwischenzeit mal an eine Custom PCB speziell für unsere Ansprüche machen damit ich noch was halbwegs sinnvolles in der Zwischenzeit machen kann.

Bisher denke Ich da an folgendes:
ESP32 - Wroom
VS1053
PAM8403 oder Mono Variante oder 2.1 für richtige “Boombox”
Micro SD-Card halter
RFID-IC on Board und Folien oder PCB Antenne
Neigungssensor/Kompass on Board für Steuerung/Bedienung
Anschluss für bis zu 5 Taster und Drehencoder
Anschlussmöglichkeit für Display und LEDs (Kinderversion 3-5 Taster / Teenager Drehgeber und Display)
Li-Io Lade- und Schutzbeschaltung (variable Ladeströme über Jumper einstellbar, Temperaturüberwachung auch über jumper ein/aus)
3,5mm klinkenbuchse (geschaltet damit man den Lautsprecher stumm bekommt)
USB-B Buchse und evtl. zusätzliche Hohlsteckerbuchse für Spannungsversorgung


#102

@Christopher dann schau mal bitte, ob du das ganze komplett auf 3V3 designed bekommst und optimale weise, dass der ESP alle anderen Chips abschalten kann um im Standby Strom zu sparen.

Ach so, welches Programm nimmst du für Leiterplatten?


#103

In der Regel und auch aktuell EAGLE.
Zudem hatte ich die Idee einer Art Platte die die Platine aufnehmen kann und die Anschlüsse nach außen führt.


#104

Also im Prinzip so etwas ,was ich auch schon für meine Box (aber noch nicht mit allen Feature) gemacht habe.
Ich dachte erst du willst eine komplett eigene Platine erstellen und die Bauteile direkt auslöten.

Eagle ist ok, dass kann ich dann auch importieren (Ich nutze den Altium Designer 18 :slight_smile: )


#105

Ja das ist auch immer noch der Plan, eine Komplett eigene Platine. Die ICs bekommt man ja auch alle solo.

Bei 3,3V bekommen wir an 4Ohm etwa 1,6W Leistung aus dem Verstärker.


#106

Dann wird es nur etwas fortgeschrittener zum löten, aber so lange es keine QFP oder BGA Bauteile sind … :wink:

Da weiß ich jetzt nicht, ob das ausreicht, aber zur Not kann man den Verstärker ja mit höherer Spannung versorgen und diesen Pfad im Standby komplett abschalten.


#107

Und wenn man schon dabei ist, könnte man sehen ob man auch WS2512 Leds als Statusanzeige mit einbringt.

Da könnte man super gut Fortschritt, Ladezustand oder Lautstärke anzeigen.


#108

Meinst du nicht vielleicht WS2812

Ja ich schau mal ob ich einen LDO Boost Converter mit shutdown finde bzw. überleg mir was.


#109

@TheSealion Ich verzweifle gerade an Interrupts (für den Rotary) in der UserInterface-Klasse. Interrupts in Klassen habe ich nur mit einem static “Wrapper” hinbekommen. Allerdings soll mein ISR die CommandQueue des MP3Player füllen. Die CommandQueue ist aber nach dem Wrapper weg…
Ich habe die Interrupts nun im enrav_main.ino definiert. Das klappt sofort. Ich sende von der main.ino aus an die MP3Playr Queue. Die Verzögerung ist auch okay. Ist irgendwie nicht schön aber vielleicht für Interrupts / Hardware-Zugriffe auch okay. War von Dir vermutlich aber nicht “vorgesehen”, oder?

Für mich eine steile Lernkurve mit den RTOS Tasks - aber ist spannand :wink:

Für das “Spulen” überlege ich gerade, ob es nicht gut wäre, wenn man z.B. 10 Sekunden Vorspulen könnte. Dafür müsste man die Bitrate aus dem MP3 “holen”, oder? Was denkt ihr? Oder einfach +/- Fileposition?


#110

Gute Idee mit der Playlist. Planst Du auch noch etwas für Ordner? Die müsste man ja irgendwie sortieren.


#111

Hatte ich bisher nicht vor. Aber einen kompletten Ordner müsste man relativ einfach abspielen können.
Und wenn man eine bestimmte Reihenfolge will (und so lange es kein Ordner abspielen gibt) kann man ja einfach eine Playlist erstellen und die einzelnen Files eintragen.


#112

Habe gestern angefangen die Bauteile und Bibliotheken für eagle raus zu suchen, beim kalkulieren der Kosten für die Einzelteile der MCU musste ich feststellen das es derzeit günstiger ist einfach eine fertige Node-MCU zu nehmen anstatt die Teile einzeln. Die LiPo Schaltung hingegen ist mit 1€ zu 0,15€ viel günstiger. Habe leider noch keinen Händler gefunden der alles hat was wir brauchen. Die Platine hat nach ersten Schätzungen max. 65x65mm was ganz gut wäre denn der nächst größere Standard Dosenbohrer hat glaube ich 68mm (Steckdosen). Ich zeichne da später mal was damit ihr wisst wie ich mir den Platinen Halter vorstelle.


#113

Die ESP-WROOM-32 gibt es in China für 2.66€ zzgl 0.31€ versand.
Und wenn man die Platine schon selber macht sollte das doch die günstigste Lösung sein.

Dann brauxht man zwar noch einen Serial zu USB Chip, aber der dürfte auch nicht mehr als ein paar Cent kosten.


#114

Der cp2102 macht es schon zu teuer um es einzeln zu kaufen😔


#115

Ohne genau zu wissen worüber ich spreche, aber der Adafruit feather mp3 vs1053 hat eine Entkopplung der Spannung an Bord… gegen Brummen. Ist das ein Thema für die Platine?


#116

Ja, da bin ich aber auch noch nicht ganz firm mit, ich weiss bisher das die Masse vom analog und digital Teil nur an einer Stelle verbunden werden dürfen und es keine gemeinsame Massefläche geben darf.


#117

Schematics
Vielleicht hilft das?


#118

In den Schaltplan sieht man sehr gut, dass es eine analoge und eine digitale Masse gibt, die nur über einen Ferrit verbunden sind.

Masseflächen machen sowieso nur bedingt Sinn. Bei einer zweilagigen Platine sollte man Flächen aber grundsätzlich weglasse und lieber darauf achten, dass die Vcc und GND Leiterbahnen ordentlich verlegt sind und keine schleifen bilden.

Erst wenn man eine komplette Lage als GND Plane nutzt gibt das Vorteile.


#119

Super, danke. Der Spannungsregler ist interessant da der gleich zwei Spannungen zur Verfügung stellt und auch noch recht schlank und günstig ist.

Ich habe bisher eigentlich immer eine komplette Massefläche über die Platine gezogen, hatte aber mit Audioanwendungen bis dato nichts am Hut.

Und hier mal ein Entwurf wie Ich mir die Paltinenhalterung vorstelle:

Aussendurchmesser sind 95mm damit man mit einer 83mm Lochsäge arbeiten kann.
Insgesamt sollte der Platz auch reichen um einen ordentlichen Akku zu befestigen.


#120

An die, die bisher einen ESP verbaut haben: Wie schaut es denn mit dem Verbrauch aus, habt ihr da mal gemessen? Klar, mit aktivem WLAN ist das wohl 'ne ganz andere Klasse als ein Arduino, aber sonst, ohne WLAN? Wie viel(e Größenordnungen) ist man da drüber?

Schönen Gruß & guten Rutsch!