3634525d7b | ||
---|---|---|
Pi | ||
backup | ||
piconfig | ||
touchcircuit | ||
touchcontroller | ||
.gitignore | ||
Bananenkeyboard.code-workspace | ||
README.md | ||
plexibox.svg |
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:
sudo apt update
sudo apt upgrade
sudo apt -y install git python3-pip libsdl-mixer1.2
git clone https://repos.ctdo.de/interfisch/bananenkeyboard/
pip3 install pyserial pygame
sudo cp ~/bananenkeyboard/piconfig/config.txt /boot/config.txt
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