Remove All Ads from XDA

[APP+DRV] [Keys remapper] Rhodium Keyboard Controller GSM/CDMA v1.4

136 posts
Thanks Meter: 3
By tarkim, Senior Member on 30th August 2009, 09:38 PM
Post Reply Email Thread
This is for Rhodium only! Do not try to install this on other devices!
Do not ask me to make a version for other device since my remappers are driver dependent and this can be very and very complicated without real device (if possible at all).

So, what is it ? It's a patched keyboard driver with configurator application for keys setup. Any key (yeah, i mean ANY, including Home and Back keys) can be reassigned to perform desired actions. Keys on a QWERTY keyboard are not an exception, they might be remapped too.
If any key has an action configured and is defined to be processed by my driver extension, it wouldn't go into the system. That is to say no one program even like AEButton will see key events processed by my driver.

Some Raphael owners is familiar with this remapper. And if you are one of them then you can skip all the text below and just download attached archive.

  • Different event types supported: single, double and triple clicks, long presses
  • Two modes of key mapping: three actions per key or direct key mapping
  • Key repeats in direct key mapping mode
  • Actions sequence repeats in actions mode
  • Key combinations using FN modifier
  • Default key behaviour action - you won't loose key's default behaviour if you just want to add double click or long press to it
  • Different key behaviour depending on foreground process/window class/window text
  • Multiple rules for each key to provide different behaviour for each application you want
  • Multiple actions for each event
  • Different predefined actions:
    • Run program
    • Key press emulation
    • Send symbol/text to active window
    • Close active window
    • Switch to window by class/text
    • Terminate data connection
    • Wi-Fi toggle
    • BT toggle
    • Screen rotation
    • Power management (screen power toggle, suspend, reset)
  • Exceptions lists which are used to deny key remapping depending on foreground process/window class/window text
  • Configurable long press and double click duration
  • Configuration import/export in configurator

Changelog is located in post #2 here.
Configurator UI localization support information is located in post #3 here.

- .NET CF 2.0 (for configurator app)

- Install
- Install
- Soft reset
- Check if keyboard works by pressing hardware buttons and seeing if they do their work, if not - uninstall cab, this wouldn't work on your current ROM (PM me if you still want this to work on your device)
- If it works - go to the control panel and find "Keyboard Config" on a System page

How to define key processing:
- Run configurator (Control Panel -> System -> Keyboard Config)
- Press Menu -> Add key
- When dialog asking you to press key appears press and release desired key
- Set up needed options in key setup dialog and press OK (left softkey)
- In configurator's main window press left softkey "Update settings" to let new configuration take place (reboot is not needed, coz new settings will work immediately after saving)

Backup before installing of modified driver is strongly recommended.
Be careful when downloading the cab, make sure you choose the correct version suitable for your device.

Raphael's version thread here and Topaz's one here.
Attached Files
File Type: zip - [Click for QR Code] (148.0 KB, 10397 views)
File Type: zip - [Click for QR Code] (153.3 KB, 5574 views)
The Following User Says Thank You to tarkim For This Useful Post: [ View ] Gift tarkim Ad-Free
30th August 2009, 09:39 PM |#2  
OP Senior Member
Thanks Meter: 3

Version 1.4:
+ Shift/Caps modifier support
+ Triple click
+ Multiple actions for each event (in other words, each event has actions sequence now)
+ Repeatable actions on press & hold for long press, double click and triple click
+ Configurator user interface localization support
+ Default key action can now emulate other key
+ Direct key mapping got modifiers
* Fixed problems with default key action, added option "Extended emulation" - it should be used only when emulation of selected key doesn't work
* Fixed FN modifier behaviour on remapped key
* Key emulation now allows to specify key code manually (e.g. if you can't find needed key in list)
* Fixed some items in key code selection combobox, added "VK_ACTION" modifier

Version 1.3.2:
* fixed direct key mapping bug when keyboard "hangs up"

Version 1.3.1:
* fixed bug in configurator when application hangs after closing of file selection or window selection dialogs while editing key settings

Version 1.3:
+ implemented key combinations through FN modifier (its behaviour on remapped key is the same as for not remapped one)
+ added direct key mapping - in this mode remapper generates key down when hardware key is pressed and key up on its release (for those who want to have real CTRL key, for example)
+ key repeats on direct key mapping
+ added action for default key behaviour - when you assign double click and long press actions but want to leave key's default behaviour on click, just select 'default key action' for it
+ added process name to key rule match criteries
+ added window text and process name exception lists
+ added setting for device lock checking - you can select whether to remap keys when device is locked
+ added right win key modifier to 'emulate key press' action
* fixed configuration loading from registry
* redesigned key edit dialog
* redesigned exceptions list dialog
* some other small fixes
* removed key names from all configs, them are taken directly from driver now, so you don't need to define them manually anymore
* key processing splitted into two modes: click/double click/long press or direct key mapping
* exceptions list in registry under Software\KeyboardConfig\WindowExceptions is splitted into three keys under this one: Class, Text, Process - if you are planning to use old .reg files, move all values to WindowExceptions\Class
* project renamed to Raphael Keyboard Controller

Version 1.2:
+ configuration export to/import from xml file (Menu -> Config -> Save/Load)
+ window exceptions list (Menu -> Window exceptions list) - driver will not remap particular key in case foreground window class is in this list
+ added Ctrl, Alt, Shift, Win key modifiers to emulate key press action
+ added APP1-APP6 key codes to list in emulate key press action - see above how to use them and how to add new button to list in Buttons applet
+ press & hold - long press action is performed after specified interval, no more need to release a key (the same is for double click too)
+ power management action (screen on/off, suspend device, reset device)
+ screen rotation action
+ BT on/off action
+ Wi-Fi on/off action
+ terminate data connection action
+ added 'vibrate on action' setting - device will vibrate at the moment when action is performed
* improved window selection dialog, now it has a Catch button for those whose stylus sensor is broken
* close window action works as ok/close now
* rewrote send text action - now it has two methods of text send (via paste and via key emulation) and supports control characters; if one method doesn't work for you use another
* fixed issue described in this post - now if some key has double click action and you actually perform single click, then immediately press another key, single click action of first one will be performed before the last pressed key action - thus both events will be performed in the correct sequence
* some dialogs fixes
* probably fixed bug when keyboard stops working in rare cases, at least i did all to avoid this
* optimized performance, works better than 1.1

+ version for Raphael CDMA devices

Version 1.1:
+ double clicks
+ different key behaviours depending on active window class/text
+ several actions: run program, emulate key press, send text to active window, close active window, switch to window by class/text
* run program action supports arguments now
* redesigned key setup dialog
* new program selection dialog

First version.
30th August 2009, 09:41 PM |#3  
OP Senior Member
Thanks Meter: 3
Configurator UI localization:

Since version 1.4 configurator supports localization.
On start it reads file "kbdconfig.ui.lng" from directory where is located itself.
Localization file is a simple text UNICODE file formatted in a following manner:
Key=First string\r\nSecond string\r\nAnd so forth

If you want to translate UI - download attached sample english file and use it as source.
After translation you will need to put it to \Windows\ folder to use on your device.
Or you can make a cab and send it to me, so i can attach it in this post.

German file provided by S-Line.
Attached Files
File Type: zip - [Click for QR Code] (2.3 KB, 773 views)
File Type: zip - [Click for QR Code] (3.3 KB, 268 views)
File Type: zip - [Click for QR Code] (3.0 KB, 406 views)
The Following User Says Thank You to tarkim For This Useful Post: [ View ] Gift tarkim Ad-Free
30th August 2009, 09:42 PM |#4  
OP Senior Member
Thanks Meter: 3
-- reserved 3 --
30th August 2009, 09:43 PM |#5  
OP Senior Member
Thanks Meter: 3
-- reserved 4 --
30th August 2009, 10:24 PM |#6  
Junior Member
Thanks Meter: 0
Works beautifully, thanks!
31st August 2009, 07:18 AM |#7  
xnifex's Avatar
Senior Member
Thanks Meter: 168
damn i coudln't find an option to set the Messaging key to "Ok"

that sucks.
31st August 2009, 08:07 AM |#8  
OP Senior Member
Thanks Meter: 3
Originally Posted by xnifex

damn i coudln't find an option to set the Messaging key to "Ok"

that sucks.

you should search better:
- 'emulate key press' action with key code of F6 and RWin modifier checked
- 'close active window' action
31st August 2009, 10:21 AM |#9  
Martinhdk's Avatar
Senior Member
Thanks Meter: 34
NICE - have a TOPAZ and really needs a tool to remap the keys, so I will dare and test this one for the BACK and WIN key. Could be rather cool if it works on a TOPAZ too..

EDIT:--> Does not work - damn. Locks beware
31st August 2009, 12:41 PM |#10  
OP Senior Member
Thanks Meter: 3
several people already asked me for Topaz version of remapper
will analyze its keypad driver and see what i can do
maybe in near future this thing will be released for Topaz
btw, i need keypad.dll from this device, PM me it please
31st August 2009, 03:25 PM |#11  
xnifex's Avatar
Senior Member
Thanks Meter: 168
Originally Posted by tarkim

you should search better:
- 'emulate key press' action with key code of F6 and RWin modifier checked
- 'close active window' action

i was thinking the "close active window" may do it. What does the F6 & RWin part do?
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes