Skip to content

Instantly share code, notes, and snippets.

@dardo82 dardo82/morse-light.sh
Last active Feb 28, 2016

Embed
What would you like to do?
Morse code USB light
#!/bin/zsh
# Flash a message in Morse code with an USB light
uhubctl -a 1; sleep 4.0
UHCOPTS=$(uhubctl | awk '{ text=text"\n"$0; if ($0~/hub/) text=$0; if (text~/power$/) { print text; text="" } }' \
| awk -F',| |:' -v ORS=" " '{ print $5 }' | awk '{ print "-p "$2" -l "$1 }')
uhubctl -a 0 ${=UHCOPTS}
alias dit="uhubctl -a 1 $UHCOPTS; sleep 0.1; uhubctl -a 0 $UHCOPTS"
alias dah="uhubctl -a 1 $UHCOPTS; sleep 0.6; uhubctl -a 0 $UHCOPTS"
alias sbs="sleep 0.25"
alias sbl="sleep 0.75"
eval "$(morse $1 | sed 's/\./dit;sbs;/g; s/-/dah;sbs;/g; s/ /sbl;/g' | sed 's/sbs;/& /g; s/sbs; sbl;/sbl; /g')"
unalias dit dah
unalias sbs sbl
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.