I started at 10:23, one lunch break, one donut break and a few hours later it is 4:11 and I have working X driver for the Nintendo wiimote. Version 0.0.0 of course and I have no clue if it works with server-1.4 (it should, but I only tried it on MPX). Dependency on the package libcwiimote-dev.
Grab a tarball or directly from git://people.freedesktop.org/~whot/xf86-input-wiimote.
At the moment, it reports tilt as x/y axis, so you can move the cursor by tilting the thing around. Z tilt is reported as z axis, accelerometers are reported as axes 3-5 (if enabled). IR doesn't work because I couldn't find LEDs that the wiimote would detect. Maybe Mark (who lent me his wiimote) can bring in the sensorbar next week so I can add that.
The code is fairly clean, I really hope somebody picks it up and continues with it. Not sure how much time I will have in the forseeable future. The code should give you a good start though. Feel free to send me patches too.
You probably saw it on the frontpage, the MPX webpage should now be available in russian. (mostly anyway)
Thanks a lot to Andrey Jornyak for doing all the gutwork!
(I also changed the settings in drupal, future posts in russian won't hit the frontpage and the RSS feeds. Please start with the link on the left "MPX на русском")
Submitted by andrey on Thursday, December 13, 2007 - 00:12
Снимок экрана запущенно сессии firefox со включенным оверлеем. Нажатием на третью кнопку с права в заголовке окна MPWM (которая выглядит [) (]) можно включить/выключить оверлей для текущего указателя. Протягивание (dragging) внутри окна позволяет рисовать (протягивание с нажатой правой клавишей - стирать). Оверлей привязан к окну в котором он был активирован. Оверлей передвигается вместе с окном. Сохраняется доступ других пользователей к приложению. Нажатие правой кнопкой мыши на кнопку оверлея стирает его, нажатие на левую кнопку - отменяет данное действие. Оверлей поддерживается оконным менеджером и не требует специальной поддержки в приложении.
xwd делает снимки экрана без курсоров.
Функция оверлея требует наличия следующих версий ПО: MPX 0.13.4, MPWM 0.8.2 и MPXlib 0.5.2.
Submitted by andrey on Wednesday, December 12, 2007 - 22:34
Это снимок экрана текущей версии отражающий принцип ClientPointer. Принцип ClientPointer устраняет неоднозначность в API Xlib. У каждого клиента есть своя настройка ClientPointer, и любой вызов без явного указания устройства, но требующий данных от устройства (так называемый QueryPointer) будет автоматически перенаправлен на ClientPointer. На снимке экрана можно видеть два экземпляра xeyes с различными указателями, а также gnome-terminal и firefox с настройками при которых всплывающие меню относятся к различным указателям.
Курсоры нумеруются в реальности, но мне пришлось добавить их вручную с помощью GIMP, потому как утилита xwd делает снимок экрана без курсоров. Так что снимок экрана выглядит точно также как изображение на экране монитора.
Примечания переводчика: в данном контексте английскому Pointer соответствует русское значение Указатель.