aboutsummaryrefslogtreecommitdiff
path: root/k7637-beep.sh
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2021-02-11 08:10:12 +0100
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2021-02-13 05:53:45 +0100
commitaa6c480f40241471d12c317c72acd94c2148a991 (patch)
tree1a6ed6298f3fef109a1989f313f7f1d75449f2ba /k7637-beep.sh
parentdff9b75c6fb900830e478ad5c71ca42efe34ffc6 (diff)
downloadtmk7637-aa6c480f40241471d12c317c72acd94c2148a991.tar.gz
added the K7637 firmware
Diffstat (limited to 'k7637-beep.sh')
-rwxr-xr-xk7637-beep.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/k7637-beep.sh b/k7637-beep.sh
new file mode 100755
index 0000000..03ba3a7
--- /dev/null
+++ b/k7637-beep.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#./k7637-beep.sh [duration]
+DURATION=${1:-200}
+
+# `xset led` does not work for me at all,
+# so we use sysfs instead.
+# This way we can also avoid sending the request to all attached keyboard.
+for led in /sys/class/leds/*\:\:kana; do
+ if [ "`cat $led/device/name`" = "VEB Kombinat Robotron K7637" ]; then
+ # NOTE: This will usually require root
+ echo 1 >$led/brightness || break
+ sleep `printf '%.3f' ${DURATION}e-3`
+ echo 0 >$led/brightness
+ exit $?
+ fi
+done
+
+# Fall back to regular PC speaker beep
+exec beep -l $DURATION