Stopp beim Karte entfernen

Moin,

Erstmal vielen Dank für die Aufnahme.

Ich suche ein Sketch wo die Funktion wie beim Tonie gegeben ist. Das die Wiedergabe stopp wenn man die Karte entfernt.

Ich habe mich schon durch das Forum gelesen und etwas gefunden, aber nichts konkretes.

Ist die Funktion nun über Admin-Karten realisierbar?

Vielen Dank im Voraus

Gruß jens

1 Like

Da gibt es hier auf jeden Fall eine fertige Softwareversion. Ich habe die kompiliert und kurz getestet. Es funktionierte wie gewünscht. Da musst Du noch mal kurz suchen, ich weiß grad nicht mehr wer es gemacht hatte. Eventuell auch unter der Bezeichnung „Pause“ bei Karte weg.
Ich habe vor eine zwei Button Version zu bauen (mit versteckten dritten Button). Dafür ist die Version nämlich perfekt.

Moin,

schau mal bei @mcgreg nach. Der hat sowas realisiert…

Ah ja, richtig. Ich habe es auch von @mcgreg!
Wenn ich es mir richtig gemerkt habe, ist das die aktuelle DEV-Version mit dem Feature „Pause wenn Karte weg“ ergenzt. Es gibt sogar einen Menüeintrag um dieses Feature an- und abzuschalten!

Genau, einfach meine DEV verwenden.

Ich hab letzte Woche noch ne kleine Änderung bzgl. der Modifikationskarten reingebaut (Beim aktivieren der Modifizierungskarte wird weitergespielt, obwohl die Musikkarte nicht da ist).

2 Like

Das ist eine sehr gute Idee! Dann muss ich auch nochmal die neuste Version kompilieren.

Hi, immer wenn ich deine DEV version aufspiele, fängt die rote LED des Arduino schell an zu blinken. Ist das bei die auch so?

Lass mich mit einer Gegenfrage antworten: Ist das Verhalten der LED anders als bei der Original-FW?
Im Moment ist die Box im Hoheitsgebiet meiner Kinder, da komme ich schwer ran um einen Vergleich zu machen. Außerdem: Ist im inneren der Box. Lass Sie blinken :wink:

Vermutlich. Weil die LED den Pin mit dem NFC Reader teilt und du ja kontinuierlich abfragst wegen „stop bei Karte weg“ und die DEV nicht wird das wohl normal sein.

Genau so ist es. Danke @stephan

Hat mich nur etwas nervös gemacht, da das meine erste Box wird. Also alles OK, wenn ich das richtig verstanden hab.
Mit der Original FW blinkt übrigens nichts :wink:
Grüße

Hallo,
Erstmal vielen lieben Dank @mcgreg für die Tolle Arbeit mit der Pause-Funktion wenn man die Karte entfernt!

Und zwar hab ich jetzt das Problem das ich deine Änderungen - Stand: 07.02.2019 in die aktuellste „DEV“ Firmware - Stand: 22.02.2020 von Thorsten nicht Kompiliert bekomme.
Ich bin leider kein Code Experte und bekomme es so nicht auf die Reihe.
Wäre ein Update des Codes möglich?

Danke :blush:

Musst du eventuell die Libary für dennDF Player aktualisieren?

Ist schon geschehen :slight_smile:
Ist meine Erste Box und wollte mich heute an die Software ran tasten.

Ich will den letzten Stand von Thorstens DEV Firmware haben mit dem Code von @mcgreg aber dies geht leider nicht da er mich die nicht mehr Kompilieren lässt und Fehlermeldungen ausspuckt.

Dann poste diese doch mal hier.

Und das wird auch das Problem sein. @mcgreg hat seinen Fork noch nicht angepasst. Mach ein downgrade auf DFPlayer Mini 1.0.5 und benutze die DEV von @mcgreg von GitHub, dann hast du was du willst.

Ich weiß :slight_smile:

Das Problem ist das die neusten Änderungen von Thorsten nicht mit drin sind.
Die DEV Version von @mcgreg ist über 1 Jahr alt und da hat sich ja schon einiges getan.

Das ist der Code:
https://pastebin.com/s77NaZiX

Gemeckert wird bei Zeile 962

Fehlerlog vom IDE:

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino: In function 'void setup()':

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino:753:27: warning: invalid conversion from 'int' to 'DfMp3_Eq' [-fpermissive]

   mp3.setEq(mySettings.eq - 1);

             ~~~~~~~~~~~~~~^~~

In file included from C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino:1:0:

C:\Users\jamal\OneDrive\Dokumente\Arduino\libraries\DFPlayer_Mini_Mp3_by_Makuna\src/DFMiniMp3.h:245:10: note:   initializing argument 1 of 'void DFMiniMp3<T_SERIAL_METHOD, T_NOTIFICATION_METHOD>::setEq(DfMp3_Eq) [with T_SERIAL_METHOD = SoftwareSerial; T_NOTIFICATION_METHOD = Mp3Notify]'

     void setEq(DfMp3_Eq eq)

          ^~~~~

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino: In function 'byte pollCard()':

Tonuino:962:77: error: 'readCard' was not declared in this scope

     if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial() && readCard(&myCard))

                                                                             ^~~~~~~~

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino:962:77: note: suggested alternative: 'hasCard'

     if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial() && readCard(&myCard))

                                                                             ^~~~~~~~

                                                                             hasCard

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino: In function 'void handleCardReader()':

Tonuino:1018:7: error: 'onNewCard' was not declared in this scope

       onNewCard();

       ^~~~~~~~~

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino:1018:7: note: suggested alternative: 'knownCard'

       onNewCard();

       ^~~~~~~~~

       knownCard

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino: In function 'void loop()':

Tonuino:1182:6: error: expected 'while' before 'onNewCard'

 void onNewCard()

      ^~~~~~~~~

Tonuino:1182:6: error: expected '(' before 'onNewCard'

Tonuino:1182:6: error: 'onNewCard' was not declared in this scope

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino:1182:6: note: suggested alternative: 'knownCard'

 void onNewCard()

      ^~~~~~~~~

      knownCard

Tonuino:1183:1: error: expected ')' before '{' token

 {

 ^

Tonuino:1183:1: error: expected ';' before '{' token

Tonuino:1192:5: error: 'setupCard' was not declared in this scope

     setupCard();

     ^~~~~~~~~

C:\Users\jamal\OneDrive\Desktop\TonUINO\Tonuino.ino:1192:5: note: suggested alternative: 'setup'

     setupCard();

     ^~~~~~~~~

     setup

Tonuino:1196:39: error: a function-definition is not allowed here before '{' token

 void adminMenu(bool fromCard = false) {

                                       ^

Tonuino:1411:29: error: a function-definition is not allowed here before '{' token

 bool askCode(uint8_t *code) {

                             ^

Tonuino:1428:122: error: a function-definition is not allowed here before '{' token

                   bool preview = false, int previewFromFolder = 0, int defaultValue = 0, bool exitWithLongPress = false) {

                                                                                                                          ^

Tonuino:1527:18: error: a function-definition is not allowed here before '{' token

 void resetCard() {

                  ^

Tonuino:1548:46: error: a function-definition is not allowed here before '{' token

 bool setupFolder(folderSettings * theFolder) {

                                              ^

Tonuino:1580:18: error: a function-definition is not allowed here before '{' token

 void setupCard() {

                  ^

Tonuino:1594:38: error: a function-definition is not allowed here before '{' token

 bool readCard(nfcTagObject * nfcTag) {

                                      ^

Tonuino:1777:37: error: a function-definition is not allowed here before '{' token

 void writeCard(nfcTagObject nfcTag) {

                                     ^

Tonuino:1870:54: error: a function-definition is not allowed here before '{' token

 void dump_byte_array(byte * buffer, byte bufferSize) {

                                                      ^

Tonuino:1878:44: error: a function-definition is not allowed here before '{' token

 bool checkTwo ( uint8_t a[], uint8_t b[] ) {

                                            ^

Tonuino:1885:1: error: expected '}' at end of input

 }

 ^

exit status 1
'readCard' was not declared in this scope

Ein Monat ist die Alt. Funktionsumfang ist der gleiche wie die originale DEV, plus seine Änderungen (stop bei Karte weg usw.).

Ist das die falsche Repo?