Resistive touch sensors to sound by touching the probes or things connected to them.
Go to file
starcalc 3634525d7b Aktuelle Herausforderung (Stabilität) 2022-01-15 10:54:33 +01:00
Pi Gitarre. Originalsamples von https://philharmonia.co.uk/resources/sound-samples/ 2020-06-29 23:12:30 +01:00
backup redraw box in inkscape 2022-01-04 18:55:11 +01:00
piconfig copy files from pi3 2020-06-08 20:55:44 +02:00
touchcircuit fix swapped resistor silkscreen 2020-06-08 23:55:53 +02:00
touchcontroller Folders, Extensions 2022-01-13 18:14:54 +01:00
.gitignore Auto-Generated Files excluded 2022-01-13 18:15:58 +01:00
Bananenkeyboard.code-workspace Folders, Extensions 2022-01-13 18:14:54 +01:00
README.md Aktuelle Herausforderung (Stabilität) 2022-01-15 10:54:33 +01:00
plexibox.svg redraw box in inkscape 2022-01-04 18:55:11 +01:00

README.md

bananenkeyboard

Resistive touch sensors to sound by touching the probes or things connected to them.

When creating a new Raspian OS minimal, after login (ssh) proceed with these steps:

  1. sudo apt update
  2. sudo apt upgrade
  3. sudo apt -y install git python3-pip libsdl-mixer1.2
  4. git clone https://repos.ctdo.de/interfisch/bananenkeyboard/
  5. pip3 install pyserial pygame
  6. sudo cp ~/bananenkeyboard/piconfig/config.txt /boot/config.txt
  7. chmod u+x ~/bananenkeyboard/Pi/s.py

Starten mit

cd ~/bananenkeyboard/Pi

python3 ./s.py

Konvertieren und Stille herauskürzen aus Samples:

for file in *.mp3; do ffmpeg -i ${file} -af silenceremove=1:0:-30dB ${file/mp3/wav} -y; done

Als Quelle haben wir zB https://philharmonia.co.uk/resources/sound-samples/

TODO

  • USB-Stick mit Samples anschließen, welche dann den "Standard" überschreiben
  • Knopf, welcher die Empfindlichkeit einstellt. Realisiert über einen Knopf am Arduino. (An einem der Digitaleingänge). Wechselt dann zwischen "ein paar" Einstellungen der Empfindlichkeit durch.
  • Daisy-Chaining Powerbank erforderlich? (Nicht wirklich zwingend, aber nice to have)
  • Pi Readonly umbauen, damit ein Abschalten über ein "Stecker raus" funktioniert

Herausforderungen und Ansätze

  • Manchmal springt der Eingangswert für einen Eingang auf 100 ("berührt"), obwohl keine Verbindung vorhanden. Er erholt sich nach einiger Zeit wieder (wenige Sekunden) und zeigt wieder korrekt >1000 ("unberührt") an. Das Zurückspringen passierte ohne Interaktion von außen.
  • A0 und GND direkt am Arduino gemessen zeigt aber weiterhin den hohen Wert an, nur der Arduino misst einen niedrigen ** RPD verringert (Pull-Down zwischen den Transistoren) von 1M auf 470k - kein Effekt ** BAV99 (D0) Diode ausgelötet - kein Effekt. Allerdings ist beim Messen von Eingang zu GND eine negative Spannung zu sehen ** Touch-Eingang Pull-Down 1.5M - Nichts berührt verbleibt bei hohem Wert (daher eine gute Idee, sollte umgesetzt werden) - kein Effekt für das Problem ** Kabel entfernt - Effekt konnte nicht beobachtet werden. Kabel dran (1m Krokolkemmenkabel) - Effekt wieder da