Meine Lösung (Adminmenükarte) beinhaltet mehrere Änderungen am Quelltext. Die genauen Zeilennummern weiß ich gerade nicht, weil ich noch weitere Änderungen am Quelltext habe und daher die Nummerierung bei mir verschoben ist. Der Quelltext bezieht sich auf die aktuelle DEV-Version vom 13.03.2019.
Ganz oben in void loop()
den Part hinter // admin menu
durch //
zu Beginn der Zeilen auskommentieren:
// EDIT nanos: disable admin menu on button-press
// // admin menu
// if ((pauseButton.pressedFor(LONG_PRESS) || upButton.pressedFor(LONG_PRESS) || downButton.pressedFor(LONG_PRESS)) && pauseButton.isPressed() && upButton.isPressed() && downButton.isPressed()) {
// mp3.pause();
// do {
// readButtons();
// } while (pauseButton.isPressed() || upButton.isPressed() || downButton.isPressed());
// readButtons();
// adminMenu();
// break;
// }
Weiter unten in der loop hinter // RFID Karte wurde aufgelegt
habe ich folgende Änderungen: Wenn eine Karte aufgelegt wurde und “special” auf “255” steht, dann soll das Adminmenü aufgerufen werden, ansonsten findet die normale Kartenbehandlung statt.
if (readCard(&myCard) == true) {
// make random a little bit more "random"
randomSeed(millis() + random(1000));
// EDIT nanos: Admin-Menü öffnen, wenn eine Karte Special FF hat.
if (myCard.cookie == cardCookie && myFolder->special == 255) {
adminMenu();
} else if (myCard.cookie == cardCookie && myFolder->folder != 0 && myFolder->mode != 0) {
playFolder();
}
// Neue Karte konfigurieren
Viel weiter unten in der Methode setupFolder( ... )
habe ich die Admin-Funktion (vorerst) mit Leben gefüllt:
// Admin Funktionen
if (theFolder->mode == 6)
// EDIT nanos: Adminmenükarte erstellen
theFolder->special = 255;
//theFolder->special = voiceMenu(3, 320, 320);
// Spezialmodus Von-Bis
Ich hoffe du findest dich durch die Angaben im Quelltext zurecht, sonst frag noch mal nach. Bitte beachte, dass diese Änderungen bei einem Update wieder neu hinzugefügt werden müssen, bzw. nicht mehr kompatibel sein könnten, wenn Thorsten und Stephan die eigentlichen Adminfunktionen implementieren.
Beim Anlernen der Karte muss man zunächst einen beliebigen Ordner auswählen (hat mit den eigentlich Admin-Funktionen nichts zu tun) und anschließend als Modus die “Admin-Funktion” (Nr. 6) auswählen. Damit erstellt man sich eine Adminkarte, die das Menü öffnet.