Hallo zusammen,
meine Oma verbringt viel Zeit mit Warterei. Ob auf den Bus, auf die
Putzfrau, beim Arzt... das hat schon einer meiner Verwandten vor mir
erkannt und sie mit einem iPod nano beglückt. Katastrophe, viel zu
kompliziert. Sie ruft regelmäßig an, weil irgendwas ist und ist
unglücklich damit.
Ich möchte deshalb einen MP3-Player konstruieren, der so einfach wie
möglich sein soll.
-Richtiger ein/aus-Schalter, den man ertasten kann
-Taste für Play/Pause
-Taste für "nächstes Lied"
-Taste für "vorheriges Lied"
-6,35mm-Buchse für Betrieb mit gewohntem großen Kopfhörer ("Swag-Oma"
:D)
-Akkubetrieb (eneloop o.ä. fest eingebaut) mit passendem Ladeschaltkreis
und einfachem Stecker, vorzugsweise robustem, hochwertigem Rundstecker.
-Beim Anstecken automatisch Versorgung durch Netzteil
-SD-Kartenslot (wechselt sie nicht selbst, das mache ich, wenn ich sie
besuche)
Ein paar Stunden Akkubetrieb reichen völlig aus, Effizienz ist
unwichtig, einfach muss es sein. Womit stelle ich das am besten an? Der
VS1011 bietet einen "standalone"-Modus, ist das das richtige?
Das Gehäuse kann ruhig bisschen größer ausfallen, ich peile ungefähr ein
Brillenetui an. Alles andere wird sowieso zu fummelig, sie sieht nicht
mehr gut.
Danke für die Unterstützung.
Auf die Schnelle ?
Rasphery Pi !!! So konfigurieren, per Touch wie Du oder Sie es brauchst.
Und ... Du kannst ihn ja immer ändern, wenn Deiner Oma was einfällt.
Vieleicht wäre das die Idee.
http://elm-chan.org/works/sd20p/report.html
Simpler gehts nicht.
Das Hauptprogramm lässt sich einfach auf deine Wünsche anpassen, hab
sogar ich als vollkommener C-Laie hinbekommen.
neffe schrieb:> Der> VS1011 bietet einen "standalone"-Modus, ist das das richtige?
Der versteht sich nicht mit einer SD-Karte.
Der GPD2856A aber schon.
Auf eBay, AliExpress, etc. werden diverse MP3-Module angeboten, die
schon fast alles enthalten, was Du aufgezählt hast. Lademodule gibt es
da auch, allerdings eher für Li-ion als für NiMH.
Beides zusammen kostet nicht mehr als 5 Euro.
Frank M. schrieb:> Schau Dir das mal an: Beitrag "Projekt fertiggestellt: MP3 Player für Kinder auf ATTiny-Basis">> Ohne Lautsprecher könnte man das schon auf Brillen-Etui-Größe bringen.> Okay, ein paar Tasten müsste man weglassen.
das in dem projekt verwendete modul kann auch so beschaltet werden, dass
sowohl ein kopfhöhrer angeschlossen als auch die anforderungen
neffe schrieb:> -Richtiger ein/aus-Schalter, den man ertasten kann> -Taste für Play/Pause> -Taste für "nächstes Lied"> -Taste für "vorheriges Lied"
schon ganz gut umgesetzt werden können.
dann gehts (theoretisch) sogar ganz ohne controller. also nur powerbank
und mp3-modul.
https://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299#3.29_I.2FO_Mode
allerdings bleibt dann (erfahrung mit meiner oma) das problem kurz/lang
zu unterscheiden. also evtl. doch besser einen tiny dran basteln.
flac schrieb:> GPD2856A
Der sieht sehr gut aus, samt anständiger Beschreibung. Besonders gefällt
mir die Option mit dem eingebauten LiPo-Anschluss... Die Knopfbedienung
ist etwas kompliziert für die Oma, aber das kann man ja mit einem Tiny
davor entschärfen, der auch über den LiPo versorgt wird.
Danke für den Tipp, jetzt muss ich den nur noch irgendwo finden. Mit
45x36 auch schön kompakt, um ihn in ein elegantes Gehäuse zu packen.
Ein raspberry zero im idle benötigt um die 80mA standalone.
mit eneloop pro sollte der eine ganze weile laufen....knöpfe etc wie man
möchte über zB einen python daemon..viel einfacher geht es kaum
Wie sieht es da aus, gibt es auch eine Möglichkeit, ein anderes Album
auszuwählen, bzw. einen anderen Ordner mit MP3-Files? Weil ich kenne
keinen vernünftigen Oma-fähigen Player, wo man einen gezielten Ordner
einfach auswählen kann.
Armin K. schrieb:> ich kenne keinen vernünftigen Oma-fähigen Player, wo man einen> gezielten Ordner einfach auswählen kann
Das ist dann schon kein einfacher MP3 Player mehr.
Die meisten ermöglichen eine Auswahl über die ID3 Tags (Album, Künstler,
Genre, etc).
Auswahl über Order können die meisten Smartphones.
Hmm, traust Du Deiner Oma das wechseln von SD-Karten zu ? Also ich meine
von der Koordination mit kleinem, fummeligen Zeugs?
Wenn ja, dann spar Dir den Albumwechsel auf dem Gerät und Pack die
Einzelalben auf die Kärtchen. Das ist dann wie früher beim
Kassettenwechseln oder ne andere Platte auflegen. Kleine SDs kosten ja
fast nix mehr.
Crazy Idee dazu, falls 3D-Drucker vorhanden : Im Gerät einen größeren
Slot für die Karten einplanen und dann die SDs mit einer Art
Ergonomischem Träger-Plastik umgeben, sodass man das Zeugs besser
anpacken und beschriften kann.
z.B. Eine Trägerkarte wie einen länglichen Stick ausbilden, an dessen
Ende dann die SD sitzt. Den SD-Kartenslot dann soweit in einem Schacht
im Gehäuse versenken, dass er eien saubere Führung hat und nur noch ein
kleiner "Anfasser" rausguckt.
Von der Programmierung her, kann mans sogar so simpel machen, dass Play
und Pause auf den Einrastmechanismus der Karte reagiert. Klink-Rein :
Play, Klink- Raus : Pause. Oder den Ein/Aus-Mechanismus.
Gruß
Armin K. schrieb:> Wie sieht es da aus, gibt es auch eine Möglichkeit, ein anderes Album> auszuwählen, bzw. einen anderen Ordner mit MP3-Files? Weil ich kenne> keinen vernünftigen Oma-fähigen Player, wo man einen gezielten Ordner> einfach auswählen kann.
Zu kompliziert. Erstmal kleine Brötchen, wenn sie damit zurechtkommt und
"mehr will", kann ich ja zwei Knöpfe dazusetzen und den Tiny, der das
Modul ansteuert, umprogrammieren. Wenn das Gerät beim ersten Mal
überfrachtet ist, wird sie frustriert und es wird nix.
FBAS schrieb:> ipod shuffle.
Ist dieser Vorschlag ernst gemeint? Fummeliger geht es kaum noch. Die
Frau ist 85 und hat 30%/10% Restsehvermögen. Da ist groß mit deutlich
ertastbaren Anschlüssen und Knöpfen gefragt.
Jörch B. schrieb:> Hmm, traust Du Deiner Oma das wechseln von SD-Karten zu ? Also ich meine> von der Koordination mit kleinem, fummeligen Zeugs?
Das ja - aber wie will ich die SD-Karten beschriften, so dass die von
einer 85-jährigen gelesen werden können?
Wahrscheinlich spiele ich einfach ein paar Hörspiele auf. Da gibt es ja
recht preiswert eine große Auswahl, und mit 20 Hörspielen zu je einer
Stunde ist sie eine Weile beschäftigt. Neue Hörspiele auf SD bringe ich
dann einfach beim nächsten Besuch mit, fertig.
Schorschi schrieb:> Den USB vom Laderegler gegen einen gewünschten> Stecker/Buchse tauschen.
Hatte ich vor. LiIon-Zellen gibt es bezahlbar. Gibt es eine Art
Rundstecker in groß? Wobei ich glaube, dass sie den Anschluss auch mit
einem normalen Rundstecker trifft. Oder ich baue ihr tatsächlich eine
Dockingstation mit 3D-Druck.
Sowas ist doch eine gute Basis.
ebay 391744925030
Anderes Gehäuse und Tasten herausgeführt.
Die gibt es auch für paar Groschen mehr mit Display.
Ist aber schlecht zu bedienen.
Nur das wechseln der Micro-SD ist fummelig.
Dein Projekt ist klasse.
Du kannst statt eines RPi auch einen ESP8266 verwenden. Lässt sich per
Python programmieren (so lange du keine Netzwerkfunktionen nutzt, die
sind bei MicroPython ziemlich buggy) und lässt sich in den Standby
versetzen.
Zum Laden kannst du auch auf Qi (drahtlos) gehen. Ladematte gibt´s bei
Ikea für überschaubares Geld, und den Qi-Empfänger mindestens bei
Adafruit (vermutlich auch noch woanders). Dann lässt sich das Laden auf
"drauflegen, fertig" reduzieren.
Wenn du nur Hörspiele hast, reicht ja eigentlich eine Taste
"Play/Pause", ein Drehregler für die Auswahl des Hörspiels, und ein
weiterer für die Lautstärke.
Anstelle einer Ordnerwahl könntest du deiner Oma auch einfach mehrere
MP3 Player schenken. Einer mit Heino, einer mit Hanne Haller, einer mit
AC/DC.
Das wäre wirklich einfach. Dann genügen auch diese super-simpel Geräte
ohhne Display, wo man nur vor und zurück springen kann.
Wenn die Oma die Medien auch selber wechseln können soll, würde ich
statt auf (Micro-)SD-Karten eher auf USB-Sticks setzen. Die sind schon
von Haus aus größer als SD-Karten, wenn man nicht gerade die ganz
winzigen nimmt, die fast komplett in der USB-Buchse verschwinden. Die
meisten der Player-Module, die schon diskutiert wurden, können ja neben
SD auch USB und einige haben auch schon eine USB-A-Buchse an Bord. Auch
als Basis für ein Cardridge-System wie es Jörch angedeutet hat, halte
ich USB für geeigneter als SD.
Mit Raspi sollte ein kleiner Zero gemeint sein. Problematisch ist
vielleicht die Minute Bootzeit. In der Zeit denkt die Oma es geht nicht
und drückt noch ein paar mal auf den Powerknopf.
R. M. schrieb:> Wenn die Oma die Medien auch selber wechseln können soll, würde ich> statt auf (Micro-)SD-Karten eher auf USB-Sticks setzen.
Das ist eine gute Idee, vor allem weil es die in verschiedenen Farben
und Formen gibt. Da braucht man nichts lesen.
Allerdings sind USB-Anschlüsse recht fummelig und wenn man die versucht,
verkehrt reinzustecken, brechen die mit ein bisschen Gewalt auch schnell
ab.
Ich glaube, MicroUSB oder MicroSD und "Aktualisierung beim nächsten
Besuch" ist besser. Außerdem hat man dann einen Grund, öfter bei der Oma
vorbeizuschauen, und allein das wäre meiner Oma wichtiger als der
Player.
Ich würde das Ganze, wie du schon schreibst mit einem VS1011 oder
ähnlich aufbauen. Als Controller würde ich einen simplen AVR nehmen. Der
reicht vollkommen um z.B. von SD-Karte MP3-Dateien zu schaufeln.
Die ganze Schaltung ist nicht besonders groß. Das größte Bauteil ist die
von dir geforderte 6mm Klinke.
Wie sieht es mit deiner Mikrocontroller Programmiererfahrung aus? Wenn
du schon einige Erfahrung hast, ist FatFS (FAT Bibliothek für die SD
Karte) gut zu verwenden. Beispiele gibt es auch genug, zum Beispiel für
AVRs.
Die Stromversorgung würde ich über eine USB Buchse (für Oma eine große),
oder eventuell über eine normale Power-Jack (kein Verdrehen möglich)
machen und eine Litium Zelle + Lade-IC vorsehen.
M. H. schrieb:> Wie sieht es mit deiner Mikrocontroller Programmiererfahrung aus?
Bascom kann ich mittlerweile ganz passabel, mit Timern, Interrupts,
Displays, PWM etc. habe ich auch schon gearbeitet.
Alles, was über Bascom hinausgeht, dürfte eine sehr steile Lernkurve
haben...
Ich glaube, dass normales PowerJack besser ist - aus dem angesprochenen
Grund, dass man dabei keine Buchse verdrehen kann. Je einfacher, desto
besser ;)
> Ist dieser Vorschlag ernst gemeint? Fummeliger geht es kaum noch. Die> Frau ist 85 und hat 30%/10% Restsehvermögen. Da ist groß mit deutlich> ertastbaren Anschlüssen und Knöpfen gefragt.>> Jörch B. schrieb:>> Hmm, traust Du Deiner Oma das wechseln von SD-Karten zu ? Also ich meine>> von der Koordination mit kleinem, fummeligen Zeugs?>> Das ja - aber wie will ich die SD-Karten beschriften, so dass die von> einer 85-jährigen gelesen werden können?
Hi, daher meinete ich ja das mit dem Catridge System (wie jemand das
weiter unten beschrieb) vielleicht passt da was lesbares drauf. Aber die
Performance-Werte 85/30/10 sind natürlich dafür auch schlecht, haste
Recht.
R. M. schrieb:
...Die
> meisten der Player-Module, die schon diskutiert wurden, können ja neben> SD auch USB und einige haben auch schon eine USB-A-Buchse an Bord. Auch> als Basis für ein Cardridge-System wie es Jörch angedeutet hat, halte> ich USB für geeigneter als SD.
Ja, stimmt, ist noch einfacher und nicht so "Stöpselempfindlich"
ABER : ich kenn so viele Fälle von abbrechenden USB-Steckern, weil der
verfluchte Plastik-Body abgekantet wird ...
Irgend ein interenes, Catridge-Ding würd ich tatsächlich verbauen ...
Was z.B. ein ätzener USB-Stick-Killer ist, ein MP3-Autoradio. Im
Normalbetrieb muss ich schon immer auf rumzappelnde Beifahrer aufpassen,
jetzt im Winter, wenn während der Fahrt noch Dicke Jacke und Schal
ausgezogen werden müssen.
Nie die Kraft des Hebels unterschätzen ;-)
Ich finde das Gesamtprojekt ne gute Idee, selbst wenn das nicht zu 100%
was für deine Oma wird, man merkt wie viele Ansätze hinsichtlich
Ergonomie und Robustheit vonnöten sind, wenn man Menschen nicht von der
Digitalen Welt ausschließen möchte.
Gruß
Jörch B. schrieb:> Was z.B. ein ätzener USB-Stick-Killer ist, ein MP3-Autoradio.
Dafür gibts doch die Mini-Sticks, die schauen gerade mal 8mm raus. Ja,
die sind langsamer, aber das ist bei MP3 egal.
Aber auch nicht Oma-tauglich.
Die Betankung durch den Enkel ist doch eine prima Lösung. Nicht alles
muss man technisch lösen.
Alternativ WLAN (oder LTE) während des Ladens aktivieren (in der Zeit
ist der Stromverbrauch relativ egal). Dann kann der Enkel-Neffe (oder
Neffen-Enkel?) die nachzuladenden Daten auf einem geeigneten Server
bereitstellen, und das Gerätchen holt sich die neuen Hörspiele von dort.
Bei Laden über USB können auf diesem Weg natürlich auch die Daten
kommen.
Max G. schrieb:> Alternativ WLAN (oder LTE) während des Ladens aktivieren (in der Zeit> ist der Stromverbrauch relativ egal).
Oma stellt das Gerät in die Ladeschale, wartet, nimmt es wieder heraus
und hat plötzlich andere Inhalte.
Nee, das verwirrt mehr als es nützt. Zumal LTE ziemlich sicher
übertrieben ist, und ob WLAN immer vorhanden (und gerade funktionierend)
ist, ist auch nicht sicher.
Ein anderes denkbares Bedien-Konzept:
Ein Schiebeschalter oder rastender Taster für Play/Pause. So hat man
direktes Feedback darüber ob es jetzt an ist. Dann noch 2 Taster für
Vor/Zurück. Stop braucht man nicht. Dann noch ein rastender
Wahlschalter (wie am Herd) zur Auswahl von Alben (oder Künstlern). Als
Album kann man ja auch mehrere tatsächliche Alben zusammen packen. Auf
dem Gehäuse beschriftet man dann, welche Stellung was ist. Alles in
geeignet robuster Ausführung. Wichtig ist, dass ein Knopf immer die
gleiche Funktion hat und die nicht vom Zustand abhängt.
Ein/Ausschalter braucht man auch nicht. Im Pause Modus schaltet man
alles in Standby, sodass der Akku kaum entladen wird. Pause ist dann
quasi gleich "aus". Man muss sich nur den aktuellen Zustand merken, das
geht per EEPROM oder einem vom Akku ständig am Leben gehaltenen SRAM.
Man könnte das mit einem STM32 machen, der hat genug Leistung für einen
MP3-Decoder, kann auf SD-Karten zugreifen, und hat ein SRAM eingebaut
welches separat versorgt werden kann. So braucht man nicht 2 ICs (MP3
Chip + uC zur Steuerung).
Cyblord -. schrieb:> Man muss gar nichts kaufen wenn man etwas selbst bauen kann> und die Zeit dafür hat.
Außerdem hätte man bei einem Selbstbau den Vorteil, dass da eine
Klinkenbuchse und Kopfhörer anbaubar sind. Man muss im Wartezimmer ja
nicht die anderen Omas gleich mitbeschallen. :-)
Karl K. schrieb:> Jörch B. schrieb:>> Was z.B. ein ätzener USB-Stick-Killer ist, ein MP3-Autoradio.>> Dafür gibts doch die Mini-Sticks, die schauen gerade mal 8mm raus. Ja,> die sind langsamer, aber das ist bei MP3 egal.
Achsoja, das hatte ich vergessen zu erwähnen, dass ich nur noch diese
Mini-Dinger benutze.
und ja, leider nicht Oma-Proofed
...ich glaube, wenn man die SD Karte "anfassbar" macht, also in einen
Sockel integriert und eine geeignete "Aufnahme" an den Player dängelt
(druckt), dann kann auch die Oma die "Bausteine" wechseln.
Klaus.
Cyblord -. schrieb:> Der Hörbert:
Ahhh! Geht es nur mir so, dass ich solche Hipster-Seiten hasse? Ohne JS
bleibt erstmal der Großteil der Seite weiss. Mit JS kommen ein Haufen
bunte Bildchen und sinnloses Gelaber, wie toll das Teil ist. Und wenn
man dann am Ende angekommen ist: Null Info, welche Leistung, welcher
Akku, wie zu laden, welche Anschlüsse, wie man die Musik draufbekommt,
welche Dateiformate.
Bin anscheinend nicht die Zielgruppe.
Karl K. schrieb:> Ahhh! Geht es nur mir so, dass ich solche Hipster-Seiten hasse?
Du bist gemein. Was willst du auch Inhalte auf Webseiten finden (pfui,
welch böses Wort), die gehören da nicht hin. Nein, der wahre Verkäufer
teilt die wirklich wichtigen Informationen nur telefonisch mit. Und
natürlich nur die Informationen, die genau du auch wirklich hören
willst.
Nee, solche PR-Kacke mag ich auch nicht. Aber ein schnelles, modern
aussehendes Wordpress-Template (mit Premium SEO-Plugin!) beeindruckt die
potentiellen Investoren halt schon eher.
Im Gegensatz zu "Kunden" haben Investoren schlicht mehr Geld zur
Verfügung und sind auch mit der Idee zufrieden. Alles eine Frage der
Zielgruppe. :-)
neffe schrieb:> Ob auf den Bus, auf die> Putzfrau, beim Arzt... das hat schon einer meiner Verwandten vor mir> erkannt und sie mit einem iPod nano beglückt. Katastrophe, viel zu> kompliziert. Sie ruft regelmäßig an, weil irgendwas ist und ist> unglücklich damit.
Also, die Omas, die ich kenne, kommen mit solcher Technik zurecht, oder
lassen es ganz sein.
Jeder Bastelmist ist komplizierter als ein iPod nano.
Vielleicht ruft sie einfach an, damit sie Kontakt zu Menschen sucht?
michael_ schrieb:> Also, die Omas, die ich kenne, kommen mit solcher Technik zurecht, oder> lassen es ganz sein.> Jeder Bastelmist ist komplizierter als ein iPod nano.
Für solche Aussagen kennen und lieben wir doch µC.net. Konstruktiv,
hilfreich, ermutigend. Der TO wird dir dankbar sein, dass du ihm diesen
wertvollen Tipp gegeben hast.
[Wer Sarkasamus findet, darf ihn behalten und bei Gelegenheit verwenden]
hinz schrieb:> http://elm-chan.org/works/sd20p/report.html>> Simpler gehts nicht.>> Das Hauptprogramm lässt sich einfach auf deine Wünsche anpassen, hab> sogar ich als vollkommener C-Laie hinbekommen.
Ich hab mir das gerade noch mal genauer angesehen - eigentlich alles
dran, was ich haben will (bis auf Pause). Die Ansteuerung der 8-bit-Pins
kann ich ja mit einem Attiny machen.
Pause gibts dann halt nicht, aber bei 255 einteilbaren Kapiteln kann ich
selbst einen Brocken wie Winnetou 1-3 so aufteilen, dass man ein Kapitel
notfalls auch nochmal anhört. Wird auch einfacher in der Ansteuerung,
weil ich mir nicht merken muss, wo im Track der Player abgeschaltet
wurde, sondern beim Ausschalten einfach nur die Nummer im EEprom
hinterlegen muss.
Die Lautstärke stell ich mit einem Poti am PCB ein. Wüsste nicht, wozu
Oma die verstellen können sollte. Und wenn sie es irgendwann doch will,
dann wirds halt nachgerüstet.
Ich glaube, das wirds. :)
neffe schrieb:> das hat schon einer meiner Verwandten vor mir> erkannt und sie mit einem iPod nano beglückt. Katastrophe, viel zu> kompliziert. Sie ruft regelmäßig an, weil irgendwas ist und ist> unglücklich damit.> Ich möchte deshalb einen MP3-Player konstruieren, der so einfach wie> möglich sein soll.
Tu doch nicht so scheinheilig. Du willst doch nur den iPod abstauben.
Bei Hörbüchern ganz wichtig: Der Player sollte intelligent genug sein
sich zu merken, wo er vor dem letzten Ausschalten war und dort auch
weitermachen können. Am besten noch über mehrere Dateien.
Sonst liegt das Ding ganz schnell in der Ecke, weil Oma keine Lust hat,
im von Anfang anzufangen oder vorzuspulen.
Also ich habe damals auch für meine Omi sowas gesucht, sie hat fast nix
mehr gesehen. Es gibt wirklich nicht viel auf dem Markt, in den
Lesezeichen habe ich noch folgendes gefunden, wir konnten es aber leider
nicht mehr ausprobieren:
http://www.plextalk.eu/de/top/produkte/linio/https://www.sehhelfer.de/Fuer-Blinde/Daisy-Player/Daisy-Player-Victor-Reader-Stratus-4-M.html
Alles nicht wirklich billig, aber es ist eben kein Massenprodukt.
Was ich nicht gefunden habe ist ein Zwischending, also einen Player, der
einfach große Tasten, einfache Bedienung und großes kontrastreiches
Display hatte. Das ist schon (fast) eine Marktlücke, da es immer mehr
Senioren gibt, die so was sicher suchen. Das ganze schickobunti Zeugs
ist da voll daneben, weil durch das bunte die Leute nichts mehr sehen.
Ich habe damals Sachen für meine Omi ausprobiert, indem ich mir meine
Fahrradhandschuhe für den Winter angezogen habe, alles was ich damit
bedienen konnte, hat meine Omi auch hinbekommen und ich wusste wie sie
sich fühlt.
R. M. schrieb:> Sorrry, OT, aber es passt so gut:>> Youtube-Video "Kinder erklären Eltern Technik | extra 3 | NDR"
Herrlich, meinte ich.
Max G. schrieb:> michael_ schrieb:>> Also, die Omas, die ich kenne, kommen mit solcher Technik zurecht, oder>> lassen es ganz sein.>> Jeder Bastelmist ist komplizierter als ein iPod nano.>> Für solche Aussagen kennen und lieben wir doch µC.net. Konstruktiv,> hilfreich, ermutigend. Der TO wird dir dankbar sein, dass du ihm diesen> wertvollen Tipp gegeben hast.
Sarkasmus hin oder her.
Wo beginnt die Grenze für senile Opas und Omas, die ein iPot o.ä. nicht
bedienen können?
Macht Vorschläge!
neffe schrieb:> Unabhängig vom Gezanke: Hier mal mein Erstentwurf vom Schaltplan.
Sorry: Kannste knicken.
Ich hab genau das gemacht, für eine Tonklingel, nur Mono. Prinzipiell
würde das gehen, aber: Du kannst nur passende PCM / WAV Files abspielen
(16bit, 16kHz). Die Files musst Du in einen Puffer einlesen und aus
diesen an die PMW-Ausgänge streamen. Das ist extrem zeitkritisch, jeden
Jitter hörst Du.
Es geht nur FAT. Und hier liegt der Knackpunkt, Du bekommst die
FAT-Table nicht im Ram abgelegt. Du kannst die FAT Table nur am Anfang
durchsuchen auf den Dateianfang, dann an diesen springen und anfangen in
den Buffer zu lesen. Am Blockende müsstest Du die FAT Table erneut
einlesen und schauen, mit welchem Block es weitergeht. Dafür hast Du
aber keine Zeit, weil Du weiterstreamen musst.
Das geht also nur, wenn die Datei so auf der Karte steht, dass Du sie
durchweg über die Blöcke lesen kannst. Dazu muss die Karte formatiert
werden und dann die Dateien draufkopiert werden. Sobald eine Datei
gelöscht wird, kommt das durcheinander.
Also für die Klingel ist das machbar, aber nicht für Hörbücher. Zumal
auch nur kleine Karten gehen.
Und ich hab das in ASM programmiert, es liegt also nicht an der
Programmperformance.
Karl K. schrieb:> Am Blockende müsstest Du die FAT Table erneut> einlesen und schauen, mit welchem Block es weitergeht. Dafür hast Du> aber keine Zeit, weil Du weiterstreamen musst.
Das geht schon. Das Lesen geht ja um Größenordnungen schneller als das
Abspielen. Man braucht einen großen (Ring-)Puffer, in welchen man
kontinuierlich neue Blöcke einliest und aus welchem man gleichzeitig
abspielt. Man darf die FAT halt nicht erst lesen wenn ein Block
abgespielt wurde, sondern muss sofort damit anfangen wenn man den
letzten Block gelesen hat. Man kann sich auch einen Puffer für
Cluster-Nummern bauen: Man sucht sich aus der FAT die nächsten belegten
10 Cluster-Nummern, und fängt an die zu lesen. Wenn nur noch 3 übrig
sind, liest man wieder die FAT, usw.
Karl K. schrieb:> Das ist extrem zeitkritisch, jeden> Jitter hörst Du.
Clevererweise macht man das mit DMA, welches durch einen Timer
getriggert wird. Dann ist das taktgenau.
Das ganze geht natürlich kaum in einen ATtiny. Warum überhaupt 2 davon?
Da es kein Massenprodukt ist wird es auf ein paar Cent beim
Controller-Preis wohl kaum ankommen. Wie wäre es mit einem STM32F401RE?
Der kann:
- I²S - direkte Ansteuerung von Audio-Codecs. Viel besser als PWM.
- SDIO - schnelle (!) Ansteuerung von SD-Karten.
- 96 kB SRAM - genug Puffer für lückenloses Playback. Würde sogar zum
Schreiben reichen :)
- USB, falls man später noch Daten-aufspielen nachrüsten möchte (nur FS)
- 512 kB Flash
- LQFP64
- Cortex-M4 mit FPU und DSP, falls man mit den Daten noch was rechnen
möchte
- Es gibt ein handliches Eval-Board, das Nucleo-F104RE
Kein Grund bei Multimedia-Projekten mit einem 8-Bitter zumzukrücken...
+1 für einen vernünftigen ARM. Dsa ist die richtige Leistungsklasse.
Wenn du von den Atmels keine Ahnung hast und dich sowieso einarbeiten
musst, ist der ARM die bessere Wahl.
STM32 ist sehr gängig, auch hier im Forum.
Nett sind auch die Kinetis, vor allem mit dem "Processor Expert", der
die Konfiguration erledigt. Im Gegensatz zum CubeMX von ST funktioniert
das auch.
Nur zu Weihnachten 2018 wirst du so oder so nicht fertig werden.
Olli S. schrieb:>> Kein Grund bei Multimedia-Projekten mit einem 8-Bitter zumzukrücken...> Wer nur einen Hammer hat...
Kommst du Dir nicht blöd vor?
Das liest sich so, als ob Du den Vorschlag ablehnen würdest, für diese
Anwendung einen 32bit µC dem 8bit µC vorzuziehen. Im ernst?
Was steckt in deinem PC, ein Gameboy? Selbst der hat mehr als 8bit.
Werde mal wach!
Achja, und auf dem F4 könnte man auch einen Software-MP3-Decoder laufen
lassen. Das spart den externen Decoder, und so kann man mit 2 ICs (uC +
Codec) sowohl eine gute Tonqualität erzielen (hohe Datenrate dank SDIO,
Codec hat guten DAC), viele Daten unterbringen (MP3-Kompression) und
eigene Bedienkonzepte umsetzen mit beliebigen Knöpfen, Stand-By-Modi
(erspart An/Aus-Knopf), Speicherung des aktuellen Stands (via
Backup-Register - braucht dann typ. 1µA dauerhaft aus Vbat).
Man sollte sich noch eine Erkennung überlegen, ob ein Kopfhörer
angesteckt ist (falls der Codec-IC das nicht schon kann). So kann man
den Standby aktivieren wenn der Kopfhörer ausgesteckt wurde, falls die
Oma vergessen hat auf Pause zu drücken.
neffe schrieb:> Die Lautstärke stell ich mit einem Poti am PCB ein. Wüsste nicht, wozu> Oma die verstellen können sollte.
Wenn sich die Umgebungslautstärke ändert (zuhause, Bahn,
Arzt-Wartezimmer) will man die Lautstärke anpassen können. Außerdem sind
nicht alle Musik/Alben gleich laut...
neffe schrieb:>> http://elm-chan.org/works/sd20p/report.html> Ich hab mir das gerade noch mal genauer angesehen - eigentlich alles> dran, was ich haben will (bis auf Pause). Die Ansteuerung der 8-bit-Pins> kann ich ja mit einem Attiny machen.
Nochmal:
>> Das Hauptprogramm lässt sich einfach auf deine Wünsche anpassen, hab>> sogar ich als vollkommener C-Laie hinbekommen.
Ist wirklich kein Hexenwerk. Und ich bin mir sicher du würdest hier auch
Unterstützung für die Änderung bekommen.
Und als Verstärker ist dein einfacher Emitterfolger nicht tauglich, zu
wenig Spannung. Aus dem Controller kommt eh genug für einen Kopfhörer
raus.
Wieso braucht der SW-MP3-Decoder noch ein externes Codec-IC? Ein
I2S-Kopfhörerverstärker (z.B. MAX 9850) reicht doch. Ansonsten
Zustimmung.
Die Umgebungslautstärke lässt sich ja auch per Mikrofon erfassen und die
Kopfhörer-Lautstärke darauf anpassen.
Max G. schrieb:> Wenn du von den Atmels keine Ahnung hast und dich sowieso einarbeiten> musst
Habe ich aber ein wenig... nur eben nicht, was SD-Karten (geschweige
denn MP3) angeht.
Bei ARM muss ich von null anfangen, weil ich nicht mal C kann. Bei AVR
hat mir Bascom genügt.
Deshalb würde ich gerne mit vorhandenen Mitteln auskommen, das wäre wie
gesagt AVR + optionales IC (VS1011). Den Plan muss ich sowieso
überarbeiten, da keine Spannungsregelung verbaut ist und die SD-Karte
von 2,7-3,6V spezifiziert ist (ähnlich dem VS1011). Systemweite
Betriebsspannung würde ich mit einem ULDO auf 3V bringen, damit kann ich
auch den Akku gut ausnutzen und bin überall in den Spezifikationen.
PS: Auf ein Display würde ich ganz verzichten, oder dort nur unwichtiges
anzeigen wie den aktuellen Songtitel. Der Zustand des Geräts (Spielend
oder Pause) sollte sich nur aus dem Zustand der Knöpfe ablesen lassen,
wie eben der vorgeschlagene Drehknopf für Album-Wahl. Der mechanisch
sichtbare Zustand lässt sich viel leichter begreifen als der virtuelle
nur per Display einsichtige, selbst wenn es gut ablesbar ist (Kontrast
usw).
Einen durch die Oma wechselbaren Speicher würde ich auch weglassen. Auf
eine große SD-Karte passt im MP3-Format mehr Musik als die je bewusst
hören kann.
Denkbar wäre eine Art wechselbarer "Schlüssel", welcher dem Gerät
mitteilt, was von der "fest" eingebauten Karte abgespielt werden soll;
den kann die Oma wechseln um die Musik auszuwählen, aber die Musik ist
nicht tatsächlich darauf. Über eine einfache mechanische oder
elektrische Konstruktion (kleiner EEPROM, Barcode, optische
Encoder-Scheibe, Mikrotaster, ...) kann das Gerät die Schlüssel
unterscheiden.
Max G. schrieb:> Wieso braucht der SW-MP3-Decoder noch ein externes Codec-IC? Ein> I2S-Kopfhörerverstärker (z.B. MAX 9850) reicht doch. Ansonsten> Zustimmung.
Genau so eins meine ich doch... Sowas nennt man auch "Codec", obwohl das
nichts mit MP3 am Hut hat.
Max G. schrieb:> Die Umgebungslautstärke lässt sich ja auch per Mikrofon erfassen und die> Kopfhörer-Lautstärke darauf anpassen.
Wenn das so einfach wäre würden existierende Produkte das doch schon tun
oder?
Ich habe langsam das Gefühl, dass einige hier die Oma für geistig und
körperlich behindert halten.
Nur mal so als Bemerkung nebenbei: Die durchschnittliche Oma kann
durchaus mit Prozessorgesteuerten Bedienfeldern umgehen, da sie es von
Auto, Küche, Fernseher und Tablet/Laptop so gewohnt ist.
Ja, Omas gehen ins Internet. Willkommen im 21. Jahrhundert!
Stefanus F. schrieb:> Nur mal so als Bemerkung nebenbei: Die durchschnittliche Oma kann> durchaus mit Prozessorgesteuerten Bedienfeldern umgehen, da sie es von> Auto, Küche, Fernseher und Tablet/Laptop so gewohnt ist.
Da habe ich andere Erfahrungen gemacht... Es hängt halt hauptsächlich
davon ab wie lernwillig man ist. Wer sowieso keine moderne Technik mag,
hat keine Lust sowas noch zu lernen. Ich glaub das Komplizierteste was
meine Oma je bedient hat war ein CD-Player. Die brauchen auch kein
Display...
Stefanus F. schrieb:> Nur mal so als Bemerkung nebenbei: Die durchschnittliche Oma kann> durchaus mit Prozessorgesteuerten Bedienfeldern umgehen, da sie es von> Auto, Küche, Fernseher und Tablet/Laptop so gewohnt ist.
Das kommt stark auf die Oma an. Mein Opa war ganz wild drauf, mit einem
UMTS-Stick ins Internet zu gehen und auch wenn es bisweilen nicht
einfach war (auch aufgrund des mangelhaften Netzes), so hat er bis zu
seinem Tod sich eifrig damit beschäftigt, selbst angemeldet und online
Zeitung gelesen.
Die Oma, um die es geht, hat 10%/30% Restsehkraft (Tendenz sinkend) und
war mit einem Touch-Ceranfeld überfordert. Konnte sie nicht erkennen und
hat es teils angelassen oder zu heiß gestellt. Jetzt hat sie ein
klassisches Ceranfeld mit schönen, großen Drehknöpfen. Sie kann sich
keine Salatsoße mehr selber machen, weil sie die Mengen nicht erkennen
kann. Die wird in ihrem Leben ganz sicher kein Display mehr bedienen als
nötig. Ich bin ja froh, dass sie mit ihrem Telefon zurechtkommt. Handy
hat sie selbstredend keins.
Deshalb schrieb ich "supersimpel". Wenn das Hören durch fehlende
Funktionen mehr Zeit braucht, dann ist das egal. Zeit hat sie genug.
Aber wenn Zeit eingespart werden soll und das Gerät zu komplex wird,
dann benutzt sie es gar nicht erst, weil sie es nicht durchschaut. Wenn
es ihr zu simpel ist, kann man immer noch aufbohren. Wenn es zu komplex
ist, ist das Thema für sie erstmal durch.
Wegen der Sehbehinderung ist es sicher hilfreich, dass jede Taste nur
eine Funktion hat und Drehknöpfe nicht mehr als 3 Raststellungen.
Als meiner Oma das Augenlicht Buchstäblich ausging hatte sie furchtbar
Angst davor. Letztendlich kam sie damit aber doch einigermaßen zurecht -
man richtet sich dann halt passend ein. Ich finde schön, dass Du deiner
Oma dabei hilfst. Besprich das Design der Bedienelemente mit ihr, bevor
du viel Geld ausgibst.
Dr. Sommer schrieb:> Man braucht einen großen (Ring-)Puffer
Der 861 hat aber nur 512 Byte SRAM.
Also genaugenommen hab ich das mit 2 Buffern gemacht. Während einer
gelesen wurde, wurde der andere gefüllt, dann gewechselt.
Dr. Sommer schrieb:> Clevererweise macht man das mit DMA, welches durch einen Timer> getriggert wird.
Der 861 hat aber kein DMA.
Dr. Sommer schrieb:> Das ganze geht natürlich kaum in einen ATtiny.
Sag ich doch.
neffe schrieb:> das wäre wie> gesagt AVR + optionales IC (VS1011).
Das schon eher, da übernimmt der VS1011 die Arbeit. Ansteuern würde ich
mit einem Atmega328 / Arduino Nano. Da dürftest Du genug
Schaltungsbeispiele finden.
> überarbeiten, da keine Spannungsregelung verbaut ist und die SD-Karte> von 2,7-3,6V spezifiziert ist (ähnlich dem VS1011).
Rechne damit, dass die SD-Karte kurzzeitig hohe Ströme zieht, also Vcc
gut puffern. Das größte Problem wird sein, kleine (speichermäßig)
SD-Karten zu bekommen, mit 32GB brauchst Du da nicht ankommen.
Und Du musst die SD-Karte in einem langsamen Modus (100kHz rum)
initialisieren und dann auf 2-4MHz hochschalten.
> Betriebsspannung würde ich mit einem ULDO auf 3V bringen, damit kann ich> auch den Akku gut ausnutzen und bin überall in den Spezifikationen.MAX1811 als LiIon-Lader aus USB oder 5V-Netzteil, MAX884 als
stromsparender LDO mit Shutdown-Funktion: Über eine Taste wird der LDO
eingeschalten, der µC hält ihn dann, bis die Akkuspannung zu niedrig ist
oder der Aus-Knopf gedrückt ist oder ein Timeout erfolgt.
Karl K. schrieb:> Der 861 hat aber nur 512 Byte SRAM.
Den muss man ja auch nicht unbedingt verwenden.
Karl K. schrieb:> Der 861 hat aber kein DMA.
Den muss man ja auch nicht unbedingt verwenden.
Karl K. schrieb:> Das größte Problem wird sein, kleine (speichermäßig)> SD-Karten zu bekommen, mit 32GB brauchst Du da nicht ankommen.
Wozu? SDHC-Karten (2-32 GB) sind am Einfachsten anzusteuern.
Karl K. schrieb:> Und Du musst die SD-Karte in einem langsamen Modus (100kHz rum)> initialisieren
Es sind 400 kHz.
Mit einem schwachen 8-Bitter und einem Hardware-MP3-Decoder ist man
ziemlich festgelegt und kann kaum was ändern. Mit einem STM32 hat man
genug Reserven für alle möglichen Verbesserungen.
Dr. Sommer schrieb:> Max G. schrieb:>> Die Umgebungslautstärke lässt sich ja auch per Mikrofon erfassen und die>> Kopfhörer-Lautstärke darauf anpassen.> Wenn das so einfach wäre würden existierende Produkte das doch schon tun> oder?
Das iPhone kann so etwas (andere Handys sicher auch).
Wenn man sich nicht verrückt macht, sich auf z.B. drei, vier Stufen
beschränkt und dafür sorgt, dass a) nur mit großer Hysterese b)
frühestens nach 30s oder 60s umgeschaltet wird, ist das auch relativ
einfach umzusetzen. Muss ja nicht perfekt sein.
Ansonsten:
* entweder C lernen (haben andere auch schon geschafft)
* oder großen Akku spendieren und RPi nehmen
* oder ESP8266 o.ä. verwenden
Bald ist doch Weihnachten. Bestelle dir von ST ein Demoboard (die kosten
wirklich nicht die Welt) und fange einfach mal an. Vielleicht genügt am
Ende auch ein Demoboard mit ein paar aufgesteckten Tochterplatinen, und
du brauchst gar keine HW entwickeln.