mirror of
https://github.com/xfjx/TonUINO.git
synced 2025-08-28 14:30:16 +02:00
Funktion der Up-/Down-Tasten kann jetzt im Adminmenü (Punkt 10) vertauscht werden (also lange für Songwechsen und kurz für Lautstärke)
This commit is contained in:
87
Tonuino.ino
87
Tonuino.ino
@@ -41,7 +41,7 @@ struct adminSettings {
|
|||||||
bool locked;
|
bool locked;
|
||||||
long standbyTimer;
|
long standbyTimer;
|
||||||
bool invertVolumeButtons;
|
bool invertVolumeButtons;
|
||||||
folderSettings shortCuts[3];
|
folderSettings shortCuts[4];
|
||||||
};
|
};
|
||||||
|
|
||||||
adminSettings mySettings;
|
adminSettings mySettings;
|
||||||
@@ -125,6 +125,7 @@ void resetSettings() {
|
|||||||
mySettings.shortCuts[0].folder = 0;
|
mySettings.shortCuts[0].folder = 0;
|
||||||
mySettings.shortCuts[1].folder = 0;
|
mySettings.shortCuts[1].folder = 0;
|
||||||
mySettings.shortCuts[2].folder = 0;
|
mySettings.shortCuts[2].folder = 0;
|
||||||
|
mySettings.shortCuts[3].folder = 0;
|
||||||
writeSettingsToFlash();
|
writeSettingsToFlash();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -165,15 +166,19 @@ void loadSettingsFromFlash() {
|
|||||||
Serial.println(mySettings.invertVolumeButtons);
|
Serial.println(mySettings.invertVolumeButtons);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Funktionen für den Standby Timer (z.B. über Pololu-Switch oder Mosfet)
|
||||||
|
|
||||||
void setstandbyTimer() {
|
void setstandbyTimer() {
|
||||||
|
Serial.println(F("=== setstandbyTimer()"));
|
||||||
if (mySettings.standbyTimer != 0 && !isPlaying())
|
if (mySettings.standbyTimer != 0 && !isPlaying())
|
||||||
sleepAtMillis = millis() + (mySettings.standbyTimer * 1000);
|
sleepAtMillis = millis() + (mySettings.standbyTimer * 1000);
|
||||||
else
|
else
|
||||||
sleepAtMillis = 0;
|
sleepAtMillis = 0;
|
||||||
|
Serial.println(sleepAtMillis);
|
||||||
}
|
}
|
||||||
|
|
||||||
void disablestandbyTimer() {
|
void disablestandbyTimer() {
|
||||||
|
Serial.println(F("=== disablestandby()"));
|
||||||
sleepAtMillis = 0;
|
sleepAtMillis = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -254,10 +259,10 @@ static void nextTrack(uint16_t track) {
|
|||||||
|
|
||||||
static void previousTrack() {
|
static void previousTrack() {
|
||||||
Serial.println(F("=== previousTrack()"));
|
Serial.println(F("=== previousTrack()"));
|
||||||
if (myCard.mode == 1 || myCard.mode == 7) {
|
/* if (myCard.mode == 1 || myCard.mode == 7) {
|
||||||
Serial.println(F("Hörspielmodus ist aktiv -> Track von vorne spielen"));
|
Serial.println(F("Hörspielmodus ist aktiv -> Track von vorne spielen"));
|
||||||
mp3.playFolderTrack(myCard.folder, currentTrack);
|
mp3.playFolderTrack(myCard.folder, currentTrack);
|
||||||
}
|
}*/
|
||||||
if (myCard.mode == 2 || myCard.mode == 8) {
|
if (myCard.mode == 2 || myCard.mode == 8) {
|
||||||
Serial.println(F("Albummodus ist aktiv -> vorheriger Track"));
|
Serial.println(F("Albummodus ist aktiv -> vorheriger Track"));
|
||||||
if (currentTrack != firstTrack) {
|
if (currentTrack != firstTrack) {
|
||||||
@@ -388,6 +393,34 @@ void readButtons() {
|
|||||||
downButton.read();
|
downButton.read();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void volumeUpButton() {
|
||||||
|
Serial.println(F("=== volumeUp()"));
|
||||||
|
if (volume < mySettings.maxVolume) {
|
||||||
|
mp3.increaseVolume();
|
||||||
|
volume++;
|
||||||
|
}
|
||||||
|
Serial.println(volume);
|
||||||
|
}
|
||||||
|
|
||||||
|
void volumeDownButton() {
|
||||||
|
Serial.println(F("=== volumeUp()"));
|
||||||
|
if (volume > mySettings.minVolume) {
|
||||||
|
mp3.decreaseVolume();
|
||||||
|
volume--;
|
||||||
|
}
|
||||||
|
Serial.println(volume);
|
||||||
|
}
|
||||||
|
|
||||||
|
void nextButton() {
|
||||||
|
nextTrack(random(65536));
|
||||||
|
delay(1000);
|
||||||
|
}
|
||||||
|
|
||||||
|
void previousButton() {
|
||||||
|
previousTrack();
|
||||||
|
delay(1000);
|
||||||
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
do {
|
do {
|
||||||
mp3.loop();
|
mp3.loop();
|
||||||
@@ -397,8 +430,6 @@ void loop() {
|
|||||||
|
|
||||||
// admin menu
|
// admin menu
|
||||||
if ((pauseButton.pressedFor(LONG_PRESS) || upButton.pressedFor(LONG_PRESS) || downButton.pressedFor(LONG_PRESS)) && pauseButton.isPressed() && upButton.isPressed() && downButton.isPressed()) {
|
if ((pauseButton.pressedFor(LONG_PRESS) || upButton.pressedFor(LONG_PRESS) || downButton.pressedFor(LONG_PRESS)) && pauseButton.isPressed() && upButton.isPressed() && downButton.isPressed()) {
|
||||||
Serial.println(F("ADMIN MENU"));
|
|
||||||
Serial.println(F("=========="));
|
|
||||||
mp3.pause();
|
mp3.pause();
|
||||||
do {
|
do {
|
||||||
readButtons();
|
readButtons();
|
||||||
@@ -437,30 +468,32 @@ void loop() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (upButton.pressedFor(LONG_PRESS)) {
|
if (upButton.pressedFor(LONG_PRESS)) {
|
||||||
Serial.println(F("Volume Up"));
|
if (!mySettings.invertVolumeButtons)
|
||||||
if (volume < mySettings.maxVolume) {
|
volumeUpButton();
|
||||||
mp3.increaseVolume();
|
else
|
||||||
volume++;
|
nextButton();
|
||||||
}
|
|
||||||
ignoreUpButton = true;
|
ignoreUpButton = true;
|
||||||
} else if (upButton.wasReleased()) {
|
} else if (upButton.wasReleased()) {
|
||||||
if (!ignoreUpButton)
|
if (!ignoreUpButton)
|
||||||
nextTrack(random(65536));
|
if (!mySettings.invertVolumeButtons)
|
||||||
|
nextButton();
|
||||||
else
|
else
|
||||||
|
volumeUpButton();
|
||||||
ignoreUpButton = false;
|
ignoreUpButton = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (downButton.pressedFor(LONG_PRESS)) {
|
if (downButton.pressedFor(LONG_PRESS)) {
|
||||||
Serial.println(F("Volume Down"));
|
if (!mySettings.invertVolumeButtons)
|
||||||
if (volume > mySettings.minVolume) {
|
volumeDownButton();
|
||||||
mp3.decreaseVolume();
|
else
|
||||||
volume--;
|
previousButton();
|
||||||
}
|
|
||||||
ignoreDownButton = true;
|
ignoreDownButton = true;
|
||||||
} else if (downButton.wasReleased()) {
|
} else if (downButton.wasReleased()) {
|
||||||
if (!ignoreDownButton)
|
if (!ignoreDownButton)
|
||||||
previousTrack();
|
if (!mySettings.invertVolumeButtons)
|
||||||
|
previousButton();
|
||||||
else
|
else
|
||||||
|
volumeDownButton();
|
||||||
ignoreDownButton = false;
|
ignoreDownButton = false;
|
||||||
}
|
}
|
||||||
// Ende der Buttons
|
// Ende der Buttons
|
||||||
@@ -516,7 +549,7 @@ void loop() {
|
|||||||
if (myCard.mode == 5) {
|
if (myCard.mode == 5) {
|
||||||
Serial.println(F("Hörbuch Modus -> kompletten Ordner spielen und "
|
Serial.println(F("Hörbuch Modus -> kompletten Ordner spielen und "
|
||||||
"Fortschritt merken"));
|
"Fortschritt merken"));
|
||||||
currentTrack = EEPROM.read(myCard.folder);
|
currentTrack = max(1,EEPROM.read(myCard.folder));
|
||||||
mp3.playFolderTrack(myCard.folder, currentTrack);
|
mp3.playFolderTrack(myCard.folder, currentTrack);
|
||||||
}
|
}
|
||||||
// Spezialmodus Von-Bin: Hörspiel: eine zufällige Datei aus dem Ordner
|
// Spezialmodus Von-Bin: Hörspiel: eine zufällige Datei aus dem Ordner
|
||||||
@@ -565,11 +598,12 @@ void loop() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void adminMenu() {
|
void adminMenu() {
|
||||||
|
disablestandbyTimer();
|
||||||
mp3.pause();
|
mp3.pause();
|
||||||
Serial.println(F("=== adminMenu()"));
|
Serial.println(F("=== adminMenu()"));
|
||||||
knownCard = false;
|
knownCard = false;
|
||||||
|
|
||||||
int subMenu = voiceMenu(9, 900, 900);
|
int subMenu = voiceMenu(10, 900, 900);
|
||||||
if (subMenu == 1) {
|
if (subMenu == 1) {
|
||||||
resetCard();
|
resetCard();
|
||||||
mfrc522.PICC_HaltA();
|
mfrc522.PICC_HaltA();
|
||||||
@@ -586,6 +620,12 @@ void adminMenu() {
|
|||||||
else if (subMenu == 6) {
|
else if (subMenu == 6) {
|
||||||
// create master card
|
// create master card
|
||||||
}
|
}
|
||||||
|
else if (subMenu == 7) {
|
||||||
|
// Tasten mit einem Shortcut konfigurieren
|
||||||
|
}
|
||||||
|
else if (subMenu == 8) {
|
||||||
|
// Den Standbytimer konfigurieren
|
||||||
|
}
|
||||||
else if (subMenu == 9) {
|
else if (subMenu == 9) {
|
||||||
// Ordner abfragen
|
// Ordner abfragen
|
||||||
nfcTagObject tempCard;
|
nfcTagObject tempCard;
|
||||||
@@ -617,7 +657,16 @@ void adminMenu() {
|
|||||||
waitForTrackToFinish();
|
waitForTrackToFinish();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (subMenu == 10) {
|
||||||
|
// Funktion der Lautstärketasten umdrehen
|
||||||
|
int temp = voiceMenu(2, 933, 933, false);
|
||||||
|
if (temp == 2)
|
||||||
|
mySettings.invertVolumeButtons = true;
|
||||||
|
else
|
||||||
|
mySettings.invertVolumeButtons = false;
|
||||||
|
}
|
||||||
writeSettingsToFlash();
|
writeSettingsToFlash();
|
||||||
|
setstandbyTimer();
|
||||||
}
|
}
|
||||||
|
|
||||||
int voiceMenu(int numberOfOptions, int startMessage, int messageOffset,
|
int voiceMenu(int numberOfOptions, int startMessage, int messageOffset,
|
||||||
|
@@ -136,6 +136,10 @@ say -v Anna "Einzelkarten für einen Ordner erstellen." -o 0909.aiff
|
|||||||
sox 0909.aiff 0909.wav pitch 800
|
sox 0909.aiff 0909.wav pitch 800
|
||||||
lame -b 128 0909.wav 0909_batch_cards.mp3
|
lame -b 128 0909.wav 0909_batch_cards.mp3
|
||||||
|
|
||||||
|
say -v Anna "Funktion der Lautstärke Tasten umdrehen." -o 0910.aiff
|
||||||
|
sox 0910.aiff 0910.wav pitch 800
|
||||||
|
lame -b 128 0910.wav 0910_batch_cards.mp3
|
||||||
|
|
||||||
say -v Anna "Bitte wähle eine Einstellung für den EQ mit den Lautstärke Tasten aus und bestätige sie mit der Pause Taste." -o 0920.aiff
|
say -v Anna "Bitte wähle eine Einstellung für den EQ mit den Lautstärke Tasten aus und bestätige sie mit der Pause Taste." -o 0920.aiff
|
||||||
sox 0920.aiff 0920.wav pitch 800
|
sox 0920.aiff 0920.wav pitch 800
|
||||||
lame -b 128 0920.wav 0920_eq_intro.mp3
|
lame -b 128 0920.wav 0920_eq_intro.mp3
|
||||||
|
Reference in New Issue
Block a user