bananenkeyboard/README.md

2.0 KiB

bananenkeyboard

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

Install

  • Raspberry Pi OS Lite
  • Release date: January 28th 2022
  • System: 32-bit
  • Kernel version: 5.10
  • Debian version: 11 (bullseye)

Remember to activate "ssh" before booting first (touch "/boot/ssh" on the MicroSD-card)

After login (ssh) proceed with these steps:

  1. sudo apt update
  2. sudo apt upgrade
  3. sudo apt -y install git python3-pip libsdl2-mixer-2.0-0 usbmount screen
  4. git clone https://repos.ctdo.de/interfisch/bananenkeyboard/
  5. pip3 install pyserial pygame
  6. sudo sh -c 'echo "\n[all]\nenable_uart=1\n" >>/boot/config.txt'
  7. sudo sh -c 'sed "s/^dtoverlay=vc4-kms-v3d/dtoverlay=vc4-fkms-v3d/" -i /boot/config.txt'
  8. sudo mkdir /etc/systemd/system/systemd-udevd.service.d
  9. sudo sh -c 'echo "[Service]\nPrivateMounts=no" >/etc/systemd/system/systemd-udevd.service.d/00-my-custom-mountflags.conf'
  10. chmod u+x ~/bananenkeyboard/Pi/s.py
  11. sudo sh -c 'cp /home/pi/bananenkeyboard/piconfig/rc.local /etc/rc.local'
  12. sudo chmod u+x /etc/rc.local
  13. chmod u+x ~/bananenkeyboard/piconfig/readonly.sh
  14. sudo gpasswd --add pi tty
  15. sudo /home/pi/bananenkeyboard/piconfig/readonly.sh
  16. sudo reboot

By copying the rc.local (step 11), the script will be started in a screen after reboot.

To start it manually type:

cd ~/bananenkeyboard/Pi

python3 ./s.py

Convert and remove silence from samples:

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

An open source for samples is for example: https://philharmonia.co.uk/resources/sound-samples/

TODO

  • Connect USB stick with samples which should override the default samples
  • ALSA lib pcm.c:8545:(snd_pcm_recover) underrun occurred. Especially if using mp3s?
  • It's necessary to activate the serial via raspi-config?
    • raspi-config -> Interface -> I6 Serial Port -> No (Login Shell?) -> Yes (Serial hardware port?) -> Ok