ReMoko
From Openmoko
(Difference between revisions)
(→Instructions) |
(→Instructions) |
||
Line 13: | Line 13: | ||
** The FSO images built before 20080807 have a bug in the framework bluetooth system, to use remoko in a older FSO image you will need to change this lines in ....: | ** The FSO images built before 20080807 have a bug in the framework bluetooth system, to use remoko in a older FSO image you will need to change this lines in ....: | ||
− | 98 | + | **98 |
− | - proxy = self.bus.get_object( "org.freesmartphone.Device", "/org/freesmartphone/Device/PowerControl/" + self.name ) | + | ***- proxy = self.bus.get_object( "org.freesmartphone.Device", "/org/freesmartphone/Device/PowerControl/" + self.name ) |
− | + proxy = self.bus.get_object( "org.freesmartphone.odeviced", "/org/freesmartphone/Device/PowerControl/" + self.name ) | + | ***+ proxy = self.bus.get_object( "org.freesmartphone.odeviced", "/org/freesmartphone/Device/PowerControl/" + self.name ) |
− | 209 | + | **209 |
− | - genericUsageControl.addResource( DummyResource( genericUsageControl, "Bluetooth" ) ) | + | ***- genericUsageControl.addResource( DummyResource( genericUsageControl, "Bluetooth" ) ) |
− | + genericUsageControl.addResource( ODeviceDResource( genericUsageControl, "Bluetooth" ) ) | + | ***+ genericUsageControl.addResource( ODeviceDResource( genericUsageControl, "Bluetooth" ) ) |
after that you will need to restart the framework (kill the process and start it again or simply restart the device). | after that you will need to restart the framework (kill the process and start it again or simply restart the device). |
Revision as of 19:29, 7 August 2008
Contents |
About
- Openmoko remote controller is a SoC 08 project, that aims to write a application that can make Openmoko-powered devices appear to be a mixed Bluetooth keyboard-and-mouse device.
- Student: Valério Valério
- Mentor: Daniel Willmann
Remoko v0.3
Instructions
- Pre-requisites
- Remoko depends on the Openmoko framework;
- The FSO images built before 20080807 have a bug in the framework bluetooth system, to use remoko in a older FSO image you will need to change this lines in ....:
- 98
- - proxy = self.bus.get_object( "org.freesmartphone.Device", "/org/freesmartphone/Device/PowerControl/" + self.name )
- + proxy = self.bus.get_object( "org.freesmartphone.odeviced", "/org/freesmartphone/Device/PowerControl/" + self.name )
- 98
- 209
- - genericUsageControl.addResource( DummyResource( genericUsageControl, "Bluetooth" ) )
- + genericUsageControl.addResource( ODeviceDResource( genericUsageControl, "Bluetooth" ) )
- 209
after that you will need to restart the framework (kill the process and start it again or simply restart the device).
Features
- Connection
- Connection to the majority of the bluetooth stacks;
- Connection status daemon (possibility to connect to the remote device when the connection are closed);
- Information about the remote device;
- Mouse Profile
- 3 button's mouse;
- Left button mouse holding (for drawing for example);
- Tapping functionality, like a touchpad;
- Vertical Scroll;
- Keyboard Profile
- Full qwerty keyboard;
- Numeric keyboard;
- Holding for Capslock, Shift, Control, Alt and Control + Alt;
Known Bugs
- Connection problems with Symbian S60 devices with BT-HID keyboard app provided by Nokia.
Tested Bluetooth Stacks
- Working
- Linux BlueZ Stack
- Windows XP SP2
- Windows Media Center Edition (Toshiba Bluetooth Stack)
- Not Working
- Symbian Nokia's S60 - tested with Nokia Navigator (probably a BlueZ SDP bug)
Ideas for the application name
- MokoRemote
- BlueRemote
- ReMoko or ReMoto (maybe some character that's a combination of t and k, at least in the splash/logo)
- Mokomote
- Mokomo (shorter)
- FreeMote (Builds on freerunner and remote) -- +1 vote
- MokoKeyMouse (It can be a bit too long, so you can make it shorter as: MKM)
- Add your idea here
Ideas for the application logo
-
svg source avaiable, contact me --Fradeve11 15:14, 27 April 2008 (CEST) - Add your idea here
Wish List
- Possibility to control presentations easily (few buttons, PG-UP, PG-DOWN for example) - In progress
- maybe even navigation via gestures
- possibly use the touchscreen similar to a touchpad (mouse) - Done
- maybe it is too much, but if you manage to make the touchpad, you could get a small screenshot of the big screen (it is useful for presentations if you want to draw/write something without quality).
- ideally generic GUI that loads controls from some xml config file to make it fully customizable for different purposes (media remote, presenter stick, ...)
- Connect as a Bluetooth remote to a Sony Playstation 3 for Bluray/DVD playback. (JReese)
- Make use of profiles to change the interface easy and fast (interface for mouse, keyboard, a mix of those two, presentations, remote controller for videos and music, ...) - In progress
- Top part of screen as touch-pad, row of three mouse buttons across middle and whichever keyboard the user usually uses on the phone popped-up at the bottom as when adding text in any other app. - In progress
- A MythTV remote would be handy, just a subset of a BT keyboard for common commands with a few nice icons rather than letters on (large) keys.
- Avahi search for HTTP services labeled say "remote" via ethernet (BT/LAN or Wifi). MythTV/Elisa and OOPresentation can develop their own html/flash/javascript/etc. "remotes" to hearts content without fine-grain syncing every change of code/GUI/API with your "OpenMoko Remote App". Avahi/HTTP also lets desktop/laptop browsers to control "remotes"; this means a bigger community.
- Add your wish here
Roadmap
- 1- Write a HID BlueZ driver that can enable the Openmoko to be seen as a mixed keyboard and mouse in the three major OS's. - Done
- 2- Map keys and mouse gestures to the USB HID usage tables. - Done
- 3- Write the UI and some other features. - In progress