SD-Karten-Zugriff per USB

Johannes hatte auf der TonUINO-Website geschrieben:

Von außen zugänglich ist eine Micro-USB Buchse, deren D+ und D- Pins ich direkt an USB+/USB- des DFPlayers geführt habe. So kann ich die SD-Karte direkt bespielen, ohne sie aus dem Gehäuse entfernen zu müssen (wenn auch nur mit ein paar 100kb/s).

Das gleiche versuche ich auch gerade zu realisieren. Habe bei dem verlinkten Cube noch gesehen, dass dort jeweils ein 27 Ohm Widerstand verwendet wurde.

Außerdem habe ich in einem anderen Forum gelesen, dass man die SD-Card nicht beschreiben könne, wenn der DFPlayer mit Strom versorgt wird und der Arduino nach dem Zugriff von außen rebootet werden müsse.

Kann das jemand bestätigen bzw. hat Erfahrungen dazu gesammelt?

1 „Gefällt mir“

Ich habe das ausprobiert. Die 27Ohm Widerstände braucht man für meine Begriffe nicht zwingend (hat was mit der USB Spezifikation zu tun, aber ich habe in dem Fall drauf verzichtet).
Ja es funktioniert. Ja es ist wirklich SEHR langsam. Man sollte auch immer nur “ein paar” Dateien auf einmal kopieren. Ich hatte es sonst schon, dass sich der Player aufgehängt hat. Wichtig auch: Peinlich darauf achten vorm Kabel abziehen unmount machen (Mac/Linux - für Windows weiss ich nicht).
Und ja, die besten Ergebnisse hatte ich auch wenn der DFPlayer Mini vom PC versorgt wurde und die Spannungsverbindung zum Arduino (und dessen Spannungsversorgung) so lange getrennt ist damit dieser nicht mit angeht. Sonst hatte ich Mehrfach den Fall, dass der Player nicht vom PC erkannt wurde. In jedem Fall sollte man wissen was man tut, wenn man mit mehreren Spannungsquellen hantiert - die USB Buchsen im PC können einem das übel nehmen.

1 „Gefällt mir“

Habe nach diesem Schaltplan aus den Leserkommentaren (von Johannes https://www.voss.earth/tonuino/#comment-98 ) auch ohne Wiederstand den Player mit dem USB verdrahtet.

https://www.dropbox.com/s/oqvdfkmt9vu6g0w/sound_schaltplan.png Es geht. Unter Windows musste ich die SD-Karte nicht aushängen.

2 „Gefällt mir“

Danke Euch beiden! Werde es dann auch mal so probieren.
In einem anderen Forum hat jemand eine Sperrdiode verwendet um den Arduino vom Strom abzuschneiden während dem Zugriff auf die SD-Card.
https://forum.arduino.cc/index.php?topic=529514.0

In dem Link geht es ums knacken beim einschalten!? Aber auch interessant!

Ja, stimmt. Weiter unten schreibt er aber:

Und zur weiteren Erläuterung: die Sperrdiode ist deswegen dazwischen damit der Arduino keinen Strom bekommt wenn ich den DFPlayer an den PC anschließe. Sobald der Arduino an ist und auf den DFPlayer zugreift wird die Speicherkarte nämlich gesperrt und ich kann nicht mehr auf die Daten zugreifen.

Aber das war bei Euch nicht so, richtig?

Doch. Mal so mal so. Deswegen habe ich ja geschrieben man muss darauf achten den Arduino nicht mit Strom zu versorgen (Schalter dazwischen etc) wenn der player am PC hängt. So oder so geht das aber nicht mit der Platine weil man ja weder Schalter noch Diode zwischen Arduino und player bekommt. Dazu muss man basteln. Das war halt von Anfang an so nicht vorgesehen. Das einfachste ist, das Gehäuse so auszulegen das man einfach an die Karte kommt. :wink:

Dass es nicht mit gleichzeitiger Stromversorgen mit dem Arduino nicht richtig klappt ist leider schade. Ich wollte versuchen ein Mini-USB-Hub dazuwischen zu schalten, so dass ich über diesen sowohl an den Arduino als auch an die SD-Karte von außen ran komme.
Dafür habe ich folgenden USB-Hub bestellt um ihn zu testen.
https://de.aliexpress.com/item/USB-3-1-Type-C-USB-C-to-Dual-2-Port-Hub-Adapter-For-PC-Laptop/32820114721.html?spm=a2g0s.9042311.0.0.4be34c4dilhZrP

@stephan: Kann man denn auf die Karte zugreifen wenn der Arduino UND der DFPlayer stromlos sind?

@kaflake: wie genau willst Du den Hub einsetzen?

Wenn du alle 4 Kabel (ID kann ausgelassen werden) von USB mit den entsprechenden Pins des DFPlayers verbindest, bekommt dieser ja Strom. Nur D+ und D- funktioniert natürlich nicht - irgendwo muss der Strom ha herkommen. :wink:

Ok, verstanden, dann ist es mit Thorstens Board wirklich schwierig bis unmöglich.
Dann muss ich auf die nächste Board-Generation hoffen :wink:

Die Idee kam halt erst später. Und wie gesagt meiner Meinung nach ist es nicht wirklich 100% Praxis tauglich für nicht Bastler. Klar es funktioniert irgendwie, aber eben langsam usw. Besser bastelt man sich sein Gehäuse so, dass man die Karte einfach entnehmen kann. :wink:

Das TonUINO Board soll es JEDEM ermöglichen “seinen” TonUINO zu bauen.
Aus diesem Grund sind einige Design-Entscheidungen so getroffen worden wie es nun ist. Es gäbe sicher noch jede Menge Möglichkeiten hier und da Komponenten auf die Platine zu löten aber ich hatte ehrlich gesagt Angst, dass jemand etwas falsch macht und zu schaden kommt.

Beispiel Stromversorgung: ich habe vorgesehen, dass einfach entweder ein USB-Poweradapter oder eine PowerBank verwendet werden. Vorteil: die PowerBank liefert stabile 5V und man muss nicht auf Über- oder Unterladung des Akkus achten, die Akkus sind durch ein Gehäuse geschützt usw… Wer wirklich weiß was er macht kann gerne einen LiPo direkt darein bauen usw. Aber ich selbst wäre da sehr, sehr vorsichtig.

Mit dem USB-Zugriff auf die SD-Karte sieht es da ähnlich aus. Wie Stephan sehr schön beschrieben hat kann man da recht viel falsch machen und das ist einfach gegen meine Grundidee. Ich denke die SD-Karte wird nicht täglich neu bespielt werden müssen. Besser man versucht das Gehäuse so zu gestalten, dass man leicht an das innere herankommt.

Spoiler: ich habe gerade eine neue Platinen Version bestellt - diese wird aber “nur” die freien digitalen Pins ausführen und einen 5V Pin zur direkten Stromversorgung (oder alternativ als Ausgang für z.B. LED-Strips) haben. Ausserdem ist sie blau(!!!) und wird etwas leichter zu löten sein. Daher werden auch gerade keine Bestellungen verschickt. Anfang der Woche wird sie hier sein und dann bekommen alle die gerade noch warten die neue Version geschickt.

Später kommt noch eine Add-On Platine mit einer Standby-Schaltung dazu. Diese wird mit beiden Versionen der Platine kompatibel sein und der TonUINO kann sich dann selbst nach ein paar Minuten im Leerlauf abschalten. Ich hoffe das wird auf eine 2x2cm große Platine passen und daher sicher noch in jedes Gehäuse passen.

4 „Gefällt mir“

Scheinbar habe ich Glück mit den Komponenten. SD-Karte wird immer erkannt und hat eine Schreibgeschwindigkeit von 400 kbs. Nicht schnell aber ausreichend.

Wenn der Tonuino mit dem Pc verbunden ist, zieht er von diesem Strom. Der Landet in dem 18650 Shield. Von dort wird er weitergeleitet zum Arduino. Liegt es an der Konstellation? Ich weiß es nicht.

1 „Gefällt mir“

Thorsten, das war auch keinerlei Kritik. Ich finde Deinen Ansatz super und Du hast damit bestimmt vielen “Einsteigern” solch ein Projekt erst zugänglich gemacht und vielen Kindern eine große Freude bereitet!

Ich freue mich schon auf die Add-On Platine und werde für einen zweiten TonUINO auf jeden Fall Dein neues Board verwenden.

EIn kleiner Tipp für alle die das Gehäuse nicht immer öffnen wollen um die Dateien auf der SD Card zu ändern, aber auch auch nicht langsam per USB übertragen wollen:
Nehmt ein Mini Sd zu SD Adapterkabel. Das funktioniert super und je nach Lautsprecher kann es auch gut versteckt werden.



2 „Gefällt mir“

Super Idee. Du meinst sowas hier, oder?

https://amzn.to/2DAOyHo

1 „Gefällt mir“

Genau, gibts in verschiedenen Längen. Weiterer Vorteil ist, dass man immer weiß, wo der SD Adapter für den Kartenslot im PC is :slight_smile:

1 „Gefällt mir“

Mega gut. Wusste gar nicht das es sowas gibt! Wird später direkt bestellt. Und wenn es nur zum testen ist. Danke für den Hinweis!

Wirklich eine sehr gute Idee. Vielen Dank.