Zusätzliche Schalter an A5-A7

Hallo zusammen,

Ich würde gerne zusätzliche Taster anschließen (zB A5-A7) und diese dann fest mit Dateien oder Verzeichnissen „verknüpfen“.
So könnte ich zB Martinshörner oder Tiergeräusche auf feste Tasten (ohne Karten) festlegen.

Es gab zwar hier schon einen ähnlichen Vorschlag:

Das erscheint mir jedoch unnötig kompliziert.

Hat jemand mal so etwas gemacht/versucht?

Danke!
Karsten

Verwendet du die regulären Shortcuts?

Sonst könntest du diese fest mit denbTastern verknüpfen, dann kannst du den Inhalt der Taster wie jede Karte konfigurieren.

Noch nicht, weil ich den TonUINO gerade noch zusammen baue.

Das ist aber eine gute Idee.

ShortCuts gehen aber aktuell nur mit den 5 Schaltern und vor allem bei langem Drücken. Oder?

Ich wollte mir mal den Code ansehen und das für die zusätzlichen Schalter bzw PINs A5-A7 ergänzen.
Oder kann man für diese aktuell schon ShortCuts vergeben?

Es gibt 4 Shortcuts.
Einer ist für den Start Sound reserviert.
Der Rest für langen Tastendruck.

Man kann das umbauen, das die drei neuen Taster nur und direkt die Shortcuts auslösen.

Aber mir fällt gerade auf, dass man für die Taster neue Shortcuts generieren kann.

Ich versuche das heute Abend mal im Code nieder zu schreiben.

Habe gerade einen PR im Original-Repo gefunden, der sich zumindest nach identischer Anforderung anhört …

Ich gebe hier folgendes zu bedenken:

Das geht nur mit Tricksereien. In deinem Fall würde sich der Wechsel auf AceButton anbieten. Dort sind mit wenigen Pins eine größere Menge an Buttons möglich. Einfach mal die Doku durchschauen. Der Sketch muss dafür natürlich massiv angepasst werden.

@stephan Das würde aber bedeuten, dass zumindest ein zusätzlicher Button an A5 angeschlossen werden kann. Oder?

Und dann den Code entsprechend ergänzen und zB ShortCuts zuordnen. Oder?

Danke!

Ja A5 geht. Und D5-D8 (siehe unten) ebenfalls. Im Fall von D7 drauf achten das der eigentlich für shutdown verwendet wird, kann man aber natürlich frei machen.

Die Stiftleiste oben rechts ist:

5V | GND | GND | DAC R | DAC L | Speaker + | Speaker -

Die Stiftleiste unten links ist:

A0 - A7 | GND | GND | D8 - D5

Danke für den Nachtrag, der TonUino ist seit Monaten fertig und ohne Problem im Betrieb. Muss noch mal den Vorstellungspost einstellen…

Und ich habe es dann auch genauso gemacht: A4 und A5 freigemacht für I2C und auf die D-Eingänge umgelegt. I2C in Software zu emulieren macht später doch nur Probleme an anderer Stelle… Ich bin Bastler, kein Informatiker :slight_smile:

Ich habe die Original Software um drei direkte Shortcut Taster erweitert.
Inklusive sperre bei auflegen der Tastensperre Modifier Karte.

Im Admin Menü sind es die Short Cuts 5-7

Verwendet werden die Pins D5-7
Shutdown Pin ist jetzt D8.

Ich habe auch ein #define dafür eingebaut, wie bei den Five Buttons.

Die Software ist ungetestet!
Bei Problemen bitte nochmal bescheid geben.

Hallo @marco-117
Du solltest auch in den mySettings die zusätzlichen shortcuts mit aufnehmen. Sonst werden diese beim Resetten des Tonuino nicht mit zurückgesetzt.

void resetSettings() {

  Serial.println(F("=== resetSettings()"));

  mySettings.cookie = cardCookie;

  mySettings.version = 2;

  mySettings.maxVolume = 25;

  mySettings.minVolume = 5;

  mySettings.initVolume = 15;

  mySettings.eq = 1;

  mySettings.locked = false;

  mySettings.standbyTimer = 0;

  mySettings.invertVolumeButtons = true;

  mySettings.shortCuts[0].folder = 0;

  mySettings.shortCuts[1].folder = 0;

  mySettings.shortCuts[2].folder = 0;

  mySettings.shortCuts[3].folder = 0;

 mySettings.shortCuts[4].folder = 0;

  mySettings.shortCuts[5].folder = 0;

  mySettings.shortCuts[6].folder = 0;

  mySettings.adminMenuLocked = 0;

  mySettings.adminMenuPin[0] = 1;

  mySettings.adminMenuPin[1] = 1;

  mySettings.adminMenuPin[2] = 1;

  mySettings.adminMenuPin[3] = 1;



  writeSettingsToFlash();

}
1 „Gefällt mir“

Danke, hab ich angepasst.

Großartig! Das teste ich in den nächsten Tagen gleich mal!

Vielen Dank!

Hast du auch für das Voicemenü die zusätzlichen Files im mp3-ordner generiert? Sonst kriegst du für die zusätzlichen Tasten keine Ansage beim Konfigurieren.

Ist ergänzt. (20 Zeichen)

Ich habe den Code gestern Abend mal eingespielt. Der erste Test war sehr gut :slight_smile:
Muss es aber nochmal weiter ansehen.

Danke schon einmal :slight_smile:

1 „Gefällt mir“

Irgendwie bereitet die SW bei mir noch Ärger.
Wenn der Tonuino einfach da liegt, fängt er plötzlich an die Shortcuts abzuspielen - oder fortzusetzen.

Bin mir auch nicht sicher ob es ein HW Thema ist (erkennt er den Schalter als gedrückt?!) oder warum er einfach los läuft.

Werde das Gerät jetzt nochmal reseten und zum Test die Original-Firmware einspielen.

Hört sich so an, als ob ein pin offen wäre. Das fängt ev. Störungen ein.

Was meinst Du mit „offen“?

Wenn ein Input nicht mit Pullupwiderstand deklariert ist, verhält sich der betreffende Eingang wie ein offener Eingang. D.h. wenn z.B. die Taste nicht gedrückt (also offen) ist, hat der Pin keinen vordefinierten Zustand. Störungen können dann zum Auslösen der Funktion führen, die für den Pin definiert ist.
Ein anderer Grund könnten auch ein Taster sein. Ich hatte z.B. bei meinen Arcade Buttons bei einem den Effekt, dass er schon bei ganz leichter Berührung, ohne zu drücken Kontakt gab. War aber nur bei einem der Fall. Vielleicht ist es bei dir ähnlich.