summaryrefslogtreecommitdiffstats
path: root/abs/not_built/extra/community/mythpywii
diff options
context:
space:
mode:
Diffstat (limited to 'abs/not_built/extra/community/mythpywii')
-rw-r--r--abs/not_built/extra/community/mythpywii/CONTROLS25
-rw-r--r--abs/not_built/extra/community/mythpywii/PKGBUILD37
-rw-r--r--abs/not_built/extra/community/mythpywii/mythpywii.install65
-rw-r--r--abs/not_built/extra/community/mythpywii/wiimote.rules6
4 files changed, 133 insertions, 0 deletions
diff --git a/abs/not_built/extra/community/mythpywii/CONTROLS b/abs/not_built/extra/community/mythpywii/CONTROLS
new file mode 100644
index 0000000..d733964
--- /dev/null
+++ b/abs/not_built/extra/community/mythpywii/CONTROLS
@@ -0,0 +1,25 @@
+ * Keypad : same as keypad on keyboard
+ * A : Enter (Accept, OK, next, .)
+ * Minus (-) : d (Delete)
+ * Home : escape (Exit to previous menu/exit mythfrontend)
+ * Plus (+) : p (Play/pause)
+ * 1 : Info
+ * 2 : Menu
+ * B + left : rewind to beginning of video
+ * B + twist wiimote : rewind (if twisted to the left) or fastforward
+ (otherwise) with speed dependant on twist amount.
+ * B + A + twist wiimote: timestretching . slower (if twisted left) or
+ faster (if twisted right)
+
+A comment on twisting:
+Point the wii remote at the screen, and twist from the elbow so that it
+ continues to point at the screen.
+
+The maximum fastforward/rewind speed is 180x. The speeds are dictated by
+mythfrontend itself. When you rotate the wiimote, you will feel a slight
+vibration (0.05 seconds) to let you know you have gone up or down a speed
+segment. To stop fastforwarding/rewinding, simply let go of B.
+
+Beware: there is no power saving built in. However you should be able to
+turn the wiimote off (power button) when not in use, and turn it back on
+by holding down 1 and 2 to make it sync.
diff --git a/abs/not_built/extra/community/mythpywii/PKGBUILD b/abs/not_built/extra/community/mythpywii/PKGBUILD
new file mode 100644
index 0000000..509db19
--- /dev/null
+++ b/abs/not_built/extra/community/mythpywii/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 5936 2008-07-21 20:24:16Z thomas $
+# Maintainer: Cecil Watson<knoppmyth@gmail.com>
+
+pkgname=mythpywii
+pkgver=17
+pkgrel=9
+pkgdesc="Control MythTV using Wiimote."
+arch=('i686' 'x86_64')
+license=('GPL2')
+url="http://www.benjiegillam.com/"
+depends=('bluez' 'python-pybluez' 'cwiid-git')
+install=mythpywii.install
+source=(http://www.benjiegillam.com/code/myth_py_wii.py \
+ wiimote.rules mythpywii.install CONTROLS)
+
+. /usr/MythVantage/bin/install_functions.sh
+home_check
+
+build() {
+
+ /bin/true
+
+}
+
+package() {
+ install -D -m755 ${srcdir}/myth_py_wii.py ${startdir}/pkg/usr/bin/myth_py_wii.py || return 1
+ install -D -m644 ${srcdir}/wiimote.rules ${startdir}/pkg/etc/udev/rules.d/z90-wiimote.rules || return 1
+ install -d -o mythtv -g mythtv ${startdir}/pkg/$MYTHHOME/.cwiid/wminput || return 1
+ install -D -m755 -o mythtv -g mythtv /etc/cwiid/wminput/{acc_led,buttons,gamepad,neverball,nunchuk_stick2btn,acc_ptr,ir_ptr,nunchuk_acc_ptr} ${startdir}/pkg/$MYTHHOME/.cwiid/wminput || return 1
+ install -D -m644 ${srcdir}/CONTROLS ${startdir}/pkg/usr/share/docs/mythpywii/CONTROLS || return 1
+ cd ${startdir}/pkg$MYTHHOME/.cwiid/wminput
+ ln -s acc_led default
+}
+md5sums=('52b756c403349640c3e66f485b6c0a54'
+ '0d817a971d414b9320587a4cf289386b'
+ '18a4c2936a731191e2db92211b254b66'
+ '0872cbdb3def3dd9aa2b97b191ad76d8')
diff --git a/abs/not_built/extra/community/mythpywii/mythpywii.install b/abs/not_built/extra/community/mythpywii/mythpywii.install
new file mode 100644
index 0000000..76b9c6e
--- /dev/null
+++ b/abs/not_built/extra/community/mythpywii/mythpywii.install
@@ -0,0 +1,65 @@
+post_install() {
+ . /$MYTHHOME/.mythtv/mysql.txt
+ # Enable the Network Remote Control Interface for use with the wiimote.
+ # Get local machine's hostname
+ HOST=`cat /etc/hostname`
+ # Update mysql for Network Remote Control Support
+ mysql -u mythtv -pmythtv --host=${DBHostName} mythconverg -e \
+ "UPDATE settings SET data = '1' WHERE value = 'NetworkControlEnabled' AND hostname = '${HOST}'";
+ echo "------------------------------------------------------------"
+ echo "myth_py_wii.py expects the Network Control Port to be set to"
+ echo "mythtv's default port of 6546. It will not work if you have"
+ echo "changed it to something else."
+ echo "------------------------------------------------------------"
+ # Add myth_py_wii.py to ~/mythtv/.fluxbox/apps before LinHES-run
+ sed -i '/LinHES-run/ i [startup] {/usr/bin/myth_py_wii.py >/dev/null}' /$MYTHHOME/.fluxbox/apps
+ # udev needs to pick up our new rule for the mythpywii.
+ udevadm trigger --subsystem-match="misc" --subsystem-match="bluetooth"
+ # Add the uinput module
+ modprobe uinput
+ # Ensure this module is loaded across reboots
+ echo "# uinput is needed by mythpywii" >> /etc/modules.mythvantage
+ echo "uinput" >> /etc/modules.mythvantage
+ # Bring up the bluetooth interface -- udev will do this after reboot
+ /usr/sbin/hciconfig hci0 up
+ # Punting on the multiple bluetooth adapter question.
+ echo "It is assumed your bluetooth adapter will be hci0."
+ echo "If you have more than one bluetooth adapter, you"
+ echo "may need to edit /etc/udev/rules.d/z90-wiimote.rules"
+ echo "--------------------------------------------------------------"
+ echo "--------------------------------------------------------------"
+ # Unfortunately there does not seem to be a way to do this without
+ # the user manually intervening.
+ echo "To use your wiimote you will need to restart the frontend service."
+ echo "$ sudo sv restart frontend"
+ echo "or simply reboot your machine."
+ echo "--------------------------------------------------------------"
+ echo "--------------------------------------------------------------"
+ echo "After frontend restart, you should now be able to pair your"
+ echo "Wiimote with your bluetooth adapter by pressing 1 & 2 at the"
+ echo "same time. After a few seconds the wiimote should vibrate and the"
+ echo "LEDs will show [ # . . # ] where # is on and . is off."
+ echo "--------------------------------------------------------------"
+ echo "See /usr/share/docs/mythpywii/CONTROLS for more information."
+ echo "--------------------------------------------------------------"
+}
+
+post_remove() {
+ . /$MYTHHOME/.mythtv/mysql.txt
+ # kill myth_py_wii.py
+ WIIPID=`pidof -o %PPID /usr/bin/myth_py_wii.py`
+ [ -n "$WIIPID" ] && kill $WIIPID
+ # Remove uinput
+ sed -i '/uinput/d' /etc/modules.mythvantage
+ # Remove line in .fluxbox/apps
+ sed -i '/myth_py_wii.py/d' /$MYTHHOME/.fluxbox/apps
+ # Remove network remote control support
+ mysql -u mythtv -pmythtv --host=${DBHostName} mythconverg -e \
+ "UPDATE settings SET data = '0' WHERE value = 'NetworkControlEnabled' AND hostname = '${HOST}'";
+}
+
+if [ x$MYTHHOME = x ]
+then
+ . /etc/profile.d/MythVantage.sh
+fi
+
diff --git a/abs/not_built/extra/community/mythpywii/wiimote.rules b/abs/not_built/extra/community/mythpywii/wiimote.rules
new file mode 100644
index 0000000..4bb2d9d
--- /dev/null
+++ b/abs/not_built/extra/community/mythpywii/wiimote.rules
@@ -0,0 +1,6 @@
+# For Bluetooth/Wiimote
+ KERNEL=="uinput", MODE="0660", GROUP="mythtv"
+
+# Automaticly bring up/down the bluetooth interface
+ ACTION=="add", KERNEL=="hci%n", SUBSYSTEM=="bluetooth", RUN+="/usr/sbin/hciconfig hci%n up"
+ ACTION=="remove", KERNEL=="hci%n", SUBSYSTEM=="bluetooth", RUN+="/usr/sbin/hciconfig hci%n down"