Skip to content

Instantly share code, notes, and snippets.

@dwilkins
Created August 5, 2013 03:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dwilkins/6153354 to your computer and use it in GitHub Desktop.
Save dwilkins/6153354 to your computer and use it in GitHub Desktop.
My Nintendo Wii pairing script. Won't work on Fedora 19 for some reason...
#!/bin/bash
on_die()
{
STATUS=`${DISCONNECT_COMMAND}`
exit 0
}
# Execute function on_die() receiving TERM signal
#
trap 'on_die' TERM HUP INT
DEFAULT_ADAPTER=`sudo dbus-send --system --print-reply --dest=org.bluez / org.bluez.Manager.DefaultAdapter | grep -oe '\/org\/bluez[^"]*'`
echo Default Adapter is $DEFAULT_ADAPTER
OLD_MAC_ADD="SomethingDifferent"
#
while [ true ]
do
MAC_ADD=`sudo hcitool scan | grep 'Nintendo' | grep -oe '[0-9A-Fa-f]\{2\}:[0-9A-Fa-f]\{2\}:[0-9A-Fa-f]\{2\}:[0-9A-Fa-f]\{2\}:[0-9A-Fa-f]\{2\}:[0-9A-Fa-f]\{2\}'`
# Scanning ...
# 00:19:1D:3B:80:7C Nintendo RVL-CNT-01p
if [ -n "$MAC_ADD" -a "$MAC_ADD" != "$OLD_MAC_ADD" ] ; then
DEVICE_ADD="dev_${MAC_ADD//:/_}"
BT_DEVICE="${DEFAULT_ADAPTER//\"/}/$DEVICE_ADD"
echo Connecting Wiimote ${BT_DEVICE}
DISCONNECT_COMMAND=`echo "sudo dbus-send --reply-timeout=60000 --print-reply --type=method_call --system --dest=org.bluez $BT_DEVICE org.bluez.Input.Disconnect"`
MESSAGE=`sudo dbus-send --reply-timeout=60000 --print-reply --type=method_call --system --dest=org.bluez $BT_DEVICE org.bluez.Input.Connect`
echo $MESSAGE
OLD_MAC_ADD=${MAC_ADD}
sleep 1
fi
if [ -z "$MAC_ADD" ] ; then
OLD_MAC_ADD="SomethingDifferent"
fi
sleep 1
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment