Bringe All-In-One-Plus nicht zum Laufen

Hallo,
Ich bin Anfängerin mit Arduino und Ähnlichem.
Meine Vorkenntnisse sind Fortran auf einem Mainframe programmieren … und das ist lang her. :slight_smile:
Trotzdem möchte ich gern für meine demente Schwiegermutter einen MP3-Player mit nur zwei großen Knöpfen bauen. Sinnvollerweise habe ich mich für die All-In-One-Plus entschieden.
Zuerst hatte ich diese Webversion genommen, um die Firmware auf das Board zu spielen. Da aber keine Musik kam, habe ich es dann mit der Arduino IDE versucht. In constants.hpp habe ich die Anpassungen gemacht. Hat dann auch ganz gut geklappt.
Meine 8GB SD-Karte habe ich mit dem empfohlenen Tool formatiert, gründlich und lang. Die Ordnerstruktur sollte stimmen. Es gibt die Ordner 01, 02, advert und mp3. In den Ordnern 01 und 02 liegen je die gleichen drei Lieder 001fix.mp3, 002sleep.mp3 und 003time.mp3.

Beim Einschalten des Gerätes leuchten dauerhaft erst zwei, dann drei Leuchten grün. Eine weitere Leuchte in der Nähe der SD-Karte leuchtet kurz grün auf. Auf dem RFID-RC522 leuchtet es rot.

Weiter passiert nichts. Ich habe den Playbutton, den Vorwärtsbutton und das Auflegen einer RFID-Karte probiert. Jedesmal: nichts.

Kann ich auf der All-In-One-Plus auch den mp3-Spieler überbrücken? Wo finde ich da IO1 / IO2 und GND?

Hier die Ausgabe vom Serial Monitor:

_____         _____ _____ _____ _____
|_   _|___ ___|  |  |     |   | |     |
  | | | . |   |  |  |-   -| | | |  |  |
  |_| |___|_|_|_____|_____|_|___|_____|
TonUINO Version 3.1 - refactored by Boerge1

created by Thorsten Voß and licensed under GNU/GPL.V3.1.3 03.08.23
Information and contribution at https://tonuino.de.
Ver:2
Vol:25 5 15
EQ:1
LOC:0
ST:0
IB:1
AL:0
AP:1111
PCR:0
Volume: 15
enter Idle
Command: 6
enqueue mp3 262 0
play mp3 262

Wie kann ich weitermachen, so dass ich Ton bekomme? Versucht er Lied 262 abzuspielen?

Stimmt es, dass wenn ich die zwei Pins vom Play/Pause-Button kurz verbinde, dass das dann wie ein Drücken des Knopfes ist?
Eigentlich brauche ich die RFID-Sachen nicht. Ein Ordner mit Play und Vorwärts würde reichen. Aber ich nehme an, es ist leichter die Kartenfunktionalität drin zu lassen? So wie der Player jetzt ist, sollte er ohne je eine Karte gesehen zu haben bei „Play/Pause“ das Lied des ersten Ordners spielen?

Vielen Dank für Eure Hilfe!

Schade, dies hättest du schneller und billiger mit einem reinen DFPlayer erreichen können.

Ja

Und dies versuch mal um durch „drücken“ (und nach 1sek wieder loslassen) ins admin Menü zu kommen.
Da spricht er mit dir, dann sehen wir ob die Platte an sich funktioniert.

Nein, das macht er leider nicht.

Hier kannst du noch versuchen die Buchstaben weg zu nehmen.

Auch nicht im seriellen Monitor?

Liebe Grüße

Nein, das ist nur ein kurzer Signalton (pling), der aussagt, das der TonUINO fertig hochgefahren ist. Kommt den ein kurzes Pling aus dem Lautsprecher?
Das Log sieht erst mal gut aus.
Was passiert denn im Log, wenn du eine Karte auflegst? Wenn da nichts passiert, ist irgendwas mit dem Kartenleser. (Nicht richtig verbunden/gelötet) Aber da können dir andere sicher besser helfen.

Guten Morgen raznz_snasna und Boerge1,
vielen Dank für Eure Antworten!

Nein, ich hatte auch nichts im seriellen Monitor und
Ja, das „Pling“ kommt. Ich hatte das in meiner ersten Beschreibung vergessen.

Ich bin jetzt glaube ich zumindest einem Fehler auf der Spur:
Als in der Anweisung stand, dass man den Play/Pause-Button setzen soll oder den Jumper, habe ich glaube ich etwas falsch gemacht. Ich dachte, der Jumper ist auf einer Art Parkposition, damit man ihn nicht verliert und habe ihn auf den Play/Pause-Button gesetzt, also auf die mittleren beiden von 2 mal 5 Pins. Es hat funktioniert, das Aufspielen der Firmware war erfolgreich.
Dann habe ich den Jumper zurückgesetzt auf die, wie ich glaubte, Parkposition.
Tatsächlich habe ich ihn dann heute Nacht auch einmal weggenommen, aber dann ging nur ein LED an und im seriellen Monitor kam nichts.
Heute Morgen habe ich wieder versucht, im seriellen Monitor Nachrichten zu bekommen, indem ich Pins verbinde. Nichts, bis auf einmal, als ich abgerutscht bin,

Mein Stand jetzt:
Ich lasse den Jumper ab und schalte das Board dann mit dem kleinen winzigen Knopf auf dem Board selber ein.
Wenn ich die Pins schräg verbinde, bekomme ich solche Nachrichten im Monitor:

Command: 4
Command: 11
Command: 11
Command: 11
Command: 5
Command: 5
Command: 12
Command: 12

Was genau wann kommt, kann ich noch genau mitschreiben. Jedenfalls sind es immer Paare die um sieben auseinander liegen, also ich meine die gleichen zwei Pins können 5 oder 12 erzeugen, ja nachdem, ob ich lang oder kurz verbinde.
Aber ich muss immer Pins von eigentlich zwei verschiedenen Buttons nehmen.

Ich habe mir die zwei weißen Stecker von dem Kabel angeguckt, dass das Board mit dem kleinen Button-Board verbindet. Ich glaube nicht, dass man die schief draufsetzen kann, es sieht auch nicht schief aus.

Zum RFID:
ich nehme nachher einen anderen, ich habe drei Stück. Ich habe inzwischen auch eine Karte mit meinem Handy bespielt dank der App von Marc (auch die löst nichts aus, sollte aber Ordner 01 der Reihe nach abspielen).

„Schneller und billiger“ ist so eine Sache … „billiger“ eventuell, „schneller“ leider nicht, weil ich mich komplett einarbeiten müsste. Ich habe aber tatsächlich noch eine normale Platine bei den Leiterpiraten gekauft und habe auch einzelne MP3-Player und Arduinos … das als Projekt, wenn der erste All-In-One geklappt hat, bei der Schwiegermutter ist und ich einen Lötkolben gekauft habe

Mach mal ein Foto von deinem Aufbau
„mal habe ich dort gerückt und da bin ich abgerutscht nachdem ich hier mal gedrückt habe“ wird zu keinem Ergebnis führen

Die Parkposition ist genau das gleiche wie der Steckplatz von play/Pause Button. Also die Pins sind jeweils direkt verbunden.
Hast du nachdem du den Jumper ganz entfernt hast und den seriellen Monitor gestartet hast, die Platine angeschaltet? Beim Starten des Monitors wird immer ein Reset durchgeführt, weshalb die Platine dann aus ist (außer sie wird durch den gesteckten Jumper sofort eingeschaltet).

@Boerge1 übersehe ich was oder fehlt die Info zum RFID-Modul wieder im Output?


Mit einer Seite vom gelben Kabel verbinde ich die Pins der Buttons.

Also dass ich zuerst gar keine Commands in dem Serial Monitor gesehen habe lag dann daran, dass ich den Jumper drauf hatte.

Gute Laune: ja, ich schalte das Board jetzt zuverlässig über den kleinen Knopf auf dem Board ein. Ist an den LEDs und im Serial Monitor klar zu sehen, ob es an oder aus ist.

Ich habe jetzt relativ viel das gelbe Kabel an Pins gehalten. Es ist unbefriedigend, weil nicht wirklich reproduzierbar:
V- ground mit V- 3V3 machmal Command 12

< ground mit V- 3V3 zuverlässig reproduzierbar Command 12 und 5

< ground mit < 3V3 manchmal Command 12

pbp ground mit pbp 3V3 manchmal Command 7 und 2

größer ground mit pbp 3V3 einigermassen reproduzierbar Command 11 und 4

größer ground mit > 3V3 manchmal Command 11

Das ist im Grunde eine schlechte Idee.

Auch wenn es hier gerade etwas langsam voran geht, musst du Geduld zeigen.
Die Software hat gerade gewechselt und die Ausgabe ist noch nicht so wie es die meisten hier gewohnt sind

Also ich würde erstmal die HW in Ordnung bringen. Um den TonUINO halbwegs zu administrieren, braucht man mindestens drei Tasten. Und das würde ich nicht mit irgendwelchen Kabeln machen, die dann mit den Pins verbunden werden, sonder nimm lieber ordentliche Taster (die brauchst du ja sowieso später)

Wenn das dann ordentlich funktioniert, könnte man einen Schortcut definieren, der den einen Ordner abspielt.

Bis hier geht alles mit der originalen Software ohne Änderung.

Zum Schluss wird dann noch die Software geändert, dass der Schortcut bei kurzem Tastendruck auf die Play Taste ausgelöst wird. Da werde ich dann helfen.

Vielen Dank, dass Ihr Euch hier mit meinen Anfängerproblemen abgebt!
Ich habe den roten Knopf angeschlossen. Der hat nun leider 4 Steckmöglichkeiten. Ich habe es fotografiert. Zwei sind beschriftet, man sieht es wenn man vergrößert. Der auf den der Pluspfeil zeigt habe ich an den 3V3 vom PBP angeschlossen. Der auf den der Minuspfeil zeigt habe ich an den GND vom PBP angeschlossen. Ergebnis: das Board verhält sich wieder so, als wäre der Jumper gesteckt, obwohl ich den Knopf nicht drücke (und der Jumper nicht drauf sitzt).
Sollte ich zwei andere Stecker vom Knopf benutzen? Welche? Kann so ein Knopf defekt sein?


Bei dem RFID hatte ich einen Teilerfolg.
Ich habe:
Neues RC522 genommen.
Wenn ich eine mit dem Handy konfigurierte Karte oder auch eine neue Karte dran halte, dann kommt:

Card Inserted
CardData: 31 73 3b 74 01 01 02 00 00
bad ver 1
Card Removed

Beim blauen Ring kommt aber:

Card Inserted
CardData: 00 00 00 00 00 00 00 00 00
enqueue mp3 300 0
enter AdmNewCard
play mp3 300
Card Removed
enter ChMode
enqueue mp3 310 0
play mp3 310

und das Gerät spricht mit mir „Oh, eine neue Karte …“
Mangels Knöpfen habe ich den blauen Ring dann mit dem Handy auf Ordner 01.

Danach kommt jetzt leider wenn ich den blauen Ring dran halte:

Card Inserted
CardData: 31 73 3b 74 01 01 02 00 00
bad ver 1
Card Removed
Das „Oh, eine neue Karte …“ hat mich schon mal riesig gefreut.
Jetzt gucke ich aber dann erst mal nach den Knöpfen.

Die Taster, die du benutzt haben eine LED eingebaut, oder? + & - sind dann die Anschlüsse der LED. Probiere mal die beiden anderen.

Ja, Gute Laune, das hat funktioniert.
Ich freu mich gerade riesig :slight_smile: :slight_smile:
Ich wusste gar nicht, dass die ein LED haben.

enter Idle
Command: 6
enqueue mp3 262 0
play mp3 262
Command: 2
Command: 7

Ich kann nun mit dem Knopf die Platine einschalten und ich bekomme jedes Mal zuverlässig Command 2 oder Command 7, je nachdem, wie lang ich drücke.
Das, was ich vorher gemacht habe, die Pins mit diesem gelben Kabel zu verbinden war Murks.
Jetzt mache ich erst mal die anderen 4 Knöpfe fertig.
Und dann muss ich leider erst mal was anderes machen …
Komisch, auch wenn ich erst mal Murks mache und Basiswissen wie „LED in Knopf“ fehlt … dann wenn es geht und der Knopf das Board einschaltet und ich zuverlässig lang und kurz drücken kann … das ist eine Riesenfreude.

1 „Gefällt mir“

und genau deshalb helfen ich (und vermutlich auch andere) hier so gerne. Zum einen teilen wir gern unsere Freude am TonUINO und zum anderen kann man sich jedes Mal mitfreuen.

1 „Gefällt mir“

Es läuft alles. :slight_smile: :slight_smile: :slight_smile:
Zusammengefasst wo ich gehangen habe:

  • Jumper vom All-In-One Plus hatte ich nicht abgenommen, mit gesetztem Jumper funktioniert kein Knopf
  • kurzschließen der Knöpfe mit einem Metallteil funktioniert viel schlechter, als es sich anfühlt und aussieht → gleich Knöpfe dran bauen
  • meine Knöpfe hatten 4 Steckmöglichkeiten und ich hatte zuerst die beiden genommen, die für die LED waren
  • RFID-RC522 eventuell defekt, eventuell nicht gut genug drangebaut, ich muss das alte noch mal testen
  • beim Beschreiben der Karten mit dem Handy musste ich die Version von 2.0.x auf 2.1.x ändern

Jetzt brauche ich nur noch eine Batterie, einen passiven Lautsprecher und einen Lötkolben, dann kann ich alles in einen kleinen Koffer einbauen und ausliefern. Ich mache nur zwei Knöpfe nach außen.

Vielen Dank Euch allen!

Boerge, es wäre Klasse, wenn Du mir helfen könntest mit dem Abspielen eines einzigen Ordners durch kurzen Druck auf Play.

1 „Gefällt mir“

Ja, na klar. Aber als erstes könntest du den Shortcut „Vor- und Zurücktaste“ dafür definieren.
Also

  • ins Admin Menü gehen (alle drei Tasten lange drücken)
  • vor Taste so oft drücken bis Shortcut kommt
  • vor/zurück Shortcut auswählen.
  • Album Modus wählen
  • den Ordner wählen
  • durch langen Druck auf die Playtaste das Admin Menü beenden.

(ich hoffe, das war alles in der richtigen Reihenfolge)
Danach müsste durch einen langen Druck auf die Vor- und Zurücktaste (gleichzeitig) das Abspielen beginnen.
Das Ändern der Software machen wir dann später. Du hast ja sicher mit dem Gehäuse noch genug zu tun :grinning:

Klasse, vielen Dank! Ich komme morgen aus einem langen Wochenende zurück und probiere das dann gleich mit dem Shortcut. :slight_smile:

Genau so hat es geklappt :slight_smile:

play mp3 262
3 tr in folder 1
enqueue 1-1 2 3
play 1-1
enter Play

Ja, bis das Gehäuse fertig ist, wird es wohl noch dauern, zumal der Lautsprecher noch nicht gekommen ist, der rein soll.

1 „Gefällt mir“

@xophe
So, nun zu der Code Änderung, so dass der Play/Pause Button den Shortcut auslöst.
In der Datei commands.cpp muss du die Zeile 11

von
/* pause, */ ,{ command::select , command::pause , command::pause , command::pause }

nach
/* pause, */ ,{ command::select,command::shortcut1,command::pause , command::pause }

ämdern.

Das Verhalten der Play/Pause Taste ist dann folgendes. Wenn gerade nichts gespielt wird, wird der Shortcut ausgelöst. Wenn gerade was gespielt wird, wird Pause gemacht.