| 1 |
Copyright (C) 2007 L. Donnie Smith <cwiid@abstrakraft.org> |
|---|
| 2 |
|
|---|
| 3 |
This program is free software; you can redistribute it and/or modify |
|---|
| 4 |
it under the terms of the GNU General Public License as published by |
|---|
| 5 |
the Free Software Foundation; either version 2 of the License, or |
|---|
| 6 |
(at your option) any later version. |
|---|
| 7 |
|
|---|
| 8 |
This program is distributed in the hope that it will be useful, |
|---|
| 9 |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
|---|
| 10 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|---|
| 11 |
GNU General Public License for more details. |
|---|
| 12 |
|
|---|
| 13 |
You should have received a copy of the GNU General Public License |
|---|
| 14 |
along with this program; if not, write to the Free Software |
|---|
| 15 |
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|---|
| 16 |
|
|---|
| 17 |
|
|---|
| 18 |
------------------------------------------------------------------------------------------------ |
|---|
| 19 |
CWiid Wiimote Interface |
|---|
| 20 |
------------------------------------------------------------------------------------------------ |
|---|
| 21 |
|
|---|
| 22 |
DESCRIPTION |
|---|
| 23 |
------------------------------------------------------------------------------------------------ |
|---|
| 24 |
The CWiid package contains the following parts: |
|---|
| 25 |
1.libcwiid - wiimote API. |
|---|
| 26 |
2.cwiid module - python interface to libcwiid |
|---|
| 27 |
3.wmgui - GTK gui to the wiimote. |
|---|
| 28 |
4.wminput - an event/joystick/mouse driver for the wiimote. |
|---|
| 29 |
5.lswm - list wiimote devices (in the spirit of ls{,pci,usb}, etc. |
|---|
| 30 |
6.wmdemo - a minimal demonstration of the libwiimote API. (not installed) |
|---|
| 31 |
|
|---|
| 32 |
REQUIREMENTS |
|---|
| 33 |
------------------------------------------------------------------------------------------------ |
|---|
| 34 |
awk, bison, flex, bluez-libs, gtk+-2 dev libs, python 2.4 or greater, python dev for python module, uinput kernel support, kernel sources |
|---|
| 35 |
|
|---|
| 36 |
INSTALLATION |
|---|
| 37 |
------------------------------------------------------------------------------------------------ |
|---|
| 38 |
./configure |
|---|
| 39 |
make |
|---|
| 40 |
sudo make install |
|---|
| 41 |
|
|---|
| 42 |
To install global configuration files to the more familiar /etc rather than /usr/etc or /usr/local/etc, execute configure with --sysconfdir=/etc. |
|---|
| 43 |
|
|---|
| 44 |
While CWiid is still in the early development stages, installation directories and filenames are changed more often than in a mature, stable package. In order to prevent the collection of obselete directories and files, it is recommended that you run 'make uninstall && make uninstall_config' from your current CWiid source directory before installing a new one. Files are currently installed to the following directories: /usr/local/{bin,etc,lib,lib/cwiid,lib/python2.X/site-packages,share/doc,share/man}. Recently, but no longer, used directories include /usr/share/CWiid - this directory may be deleted. |
|---|
| 45 |
|
|---|
| 46 |
Many distributions do not have /usr/local/lib in the library search path, and on many of these same distributions, the library installation directory (as determined by autoconf) is /usr/local/lib, creating a problem when you try to run programs depending on libraries installed there. There are two clean ways to fix this: |
|---|
| 47 |
1.Add a --prefix=/usr argument to ./configure |
|---|
| 48 |
2.Add /usr/local/lib to /etc/ld.so.conf, then run ldconfig. |
|---|
| 49 |
|
|---|
| 50 |
I prefer the second method since it keeps local software in the local directory where it should be, and it fixes the problem for every package using /usr/local/lib, not just CWiid. Until someone offers a convincing argument for the omission of /usr/local/lib from /etc/ld.so.conf, I consider this to be a distribution bug, and method #2 above is the fix. |
|---|
| 51 |
|
|---|
| 52 |
Please report any compilation errors at http://www.abstrakraft.org/cwiid or to <cwiid@abstrakraft.org>, with preference for the former. |
|---|
| 53 |
|
|---|
| 54 |
EXECUTION |
|---|
| 55 |
------------------------------------------------------------------------------------------------ |
|---|
| 56 |
wmgui [-h] [bdaddr] |
|---|
| 57 |
wminput [-h] [-c config] [bdaddr] |
|---|
| 58 |
|
|---|
| 59 |
The bluetooth device address (bdaddr) of the wiimote can be specified on the command-line, or through the WIIMOTE_BDADDR environment variable, in that order of precedence. If neither is given, the first wiimote found by hci_inquiry will be used. |
|---|
| 60 |
See wminput/README for more information on wminput configuration and execution. |
|---|
| 61 |
|
|---|
| 62 |
FUTURE IDEAS/IMPROVEMENTS |
|---|
| 63 |
------------------------------------------------------------------------------------------------ |
|---|
| 64 |
The following list is neither complete nor ordered: |
|---|
| 65 |
wmcp (copy data between files and wiimotes) |
|---|
| 66 |
Move wiimote communications into a separate daemon (wiimoted) with which applications communicate via sockets (or some other means) |
|---|
| 67 |
wmgui logging |
|---|
| 68 |
Implement speaker |
|---|
| 69 |
gui/control interface to wminput |
|---|
| 70 |
Implement other drivers such as gesture recognition. |
|---|
| 71 |
|
|---|