-
Notifications
You must be signed in to change notification settings - Fork 100
/
README
76 lines (58 loc) · 4.43 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
Copyright (C) 2007 L. Donnie Smith <donnie.smith@gatech.edu>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
------------------------------------------------------------------------------------------------
CWiid Wiimote Interface
------------------------------------------------------------------------------------------------
DESCRIPTION
------------------------------------------------------------------------------------------------
The CWiid package contains the following parts:
1.libcwiid - wiimote API.
2.cwiid module - python interface to libcwiid
3.wmgui - GTK gui to the wiimote.
4.wminput - an event/joystick/mouse driver for the wiimote.
5.lswm - list wiimote devices (in the spirit of ls{,pci,usb}, etc.
6.wmdemo - a minimal demonstration of the libwiimote API. (not installed)
REQUIREMENTS
------------------------------------------------------------------------------------------------
awk, bison, flex, bluez-libs, gtk+-2 dev libs, python 2.4 or greater, python dev for python module, uinput kernel support, kernel sources
INSTALLATION
------------------------------------------------------------------------------------------------
If installing from SVN or Git, run the following commands. Otherwise, or if you aren't sure, ignore them.
aclocal
autoconf
All users should then run:
./configure
make
sudo make install
To install global configuration files to the more familiar /etc rather than /usr/etc or /usr/local/etc, execute configure with --sysconfdir=/etc.
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.
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:
1.Add a --prefix=/usr argument to ./configure
2.Add /usr/local/lib to /etc/ld.so.conf, then run ldconfig.
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.
Please report any compilation errors at http://cwiid.org.
EXECUTION
------------------------------------------------------------------------------------------------
wmgui [-h] [bdaddr]
wminput [-h] [-c config] [bdaddr]
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.
See wminput/README for more information on wminput configuration and execution.
FUTURE IDEAS/IMPROVEMENTS
------------------------------------------------------------------------------------------------
The following list is neither complete nor ordered:
wmcp (copy data between files and wiimotes)
Move wiimote communications into a separate daemon (wiimoted) with which applications communicate via sockets (or some other means)
wmgui logging
Implement speaker
gui/control interface to wminput
Implement other drivers such as gesture recognition.