i mean, is that possible to develop a SW for ppc,
Which shows a mouse in ppcs screen, and we can use navigator key control the mouse.
That's quite easy, but would there be much point?
The program you're using would then loose use of the control pad.
An idea tho would be, say:
Record button toggles mouse (shows/hides cursor)
Joystick/pad controls mouse cursor
Contacts button sends left click
Calendar button sends context menu click.
It could work. I might play with this sometime. :wink:
V
there is a soft for virtual mouse
if u have a ppc with usb host function then u can connect ur computer's mouse to the ppc using the usb connection there is a software available for the mouse pointer here's the link
http://www.deje.gmxhome.de/download.html
u can make it someting special.
for exmaple.
in SW setting we can choose by which programme activating the mouse.
Re: there is a soft for virtual mouse
dhiraj228 said:
if u have a ppc with usb host function then u can connect ur computer's mouse to the ppc using the usb connection there is a software available for the mouse pointer here's the link
http://www.deje.gmxhome.de/download.html
Click to expand...
Click to collapse
yes i know about this.
but a virtual mouse does not mean only a tool to control the ppcpe.
it can be very helpful for one hand ppcpe operating.
sometimes we have only one free hand to use ppcpe.
Hi vijay or other developer
Any development/thought on virtual mouse - I like the idea of non stylus control of my wizard esp when in case. You could assign a button to switch on and off. You could call it VJmouse or VJrodent I would pay for this - I know that's music to your ears
Cheers
generating mouse clicks is easy enough but the drawing of the cursor in different locations would be the harder part. I have not seen cursors drawn in places other than the centre. How could that be done without drawing to the screen buffer?
One possible idea is a transparent window, say a 16 by 16. Any way I just wanted to mention that HP iPaq 4700 has a native app in its ROM that shows a mouse cursor and lets the arrow key area act as a touch pad just like on a laptop.
Guys, this is by the guy that did the FileDialogChanger, a genius in his own time:
http://www.geocities.co.jp/SiliconValley-Cupertino/2039/FakeCursorPPC.zip
Please indicate if it does or doesn't work. I don't think it would be too difficult to write a new mouse emulator, but there's no point reinventing the mouse wheel :wink:
V
Thanks vijay that's wicked
Finally true one handed operation of my pda - es
So I want have to pay you all my bucks after all!
I have tried this app and it is really good but has a couple of bugs. one is that it won't delete or backspace on the virtual keyboard, second it call and end call buttons and softkeys are immobilized when the fake cursor is operational. If it could be developed further and possibly include other pointer styles it would be an excellent app - I think marketable and some thing that should be part of the OS.
Smartphone users will be particularly interested as I am being a long trrm spv user.
cheers
wicked man... I like it
kudoos to the developer
vijay555 said:
That's quite easy, but would there be much point?
The program you're using would then loose use of the control pad.
An idea tho would be, say:
Record button toggles mouse (shows/hides cursor)
Joystick/pad controls mouse cursor
Contacts button sends left click
Calendar button sends context menu click.
It could work. I might play with this sometime. :wink:
V
Click to expand...
Click to collapse
I'd be interested in a "mouse" or "Cursor control" app.
IMHO the one thing missing from the Universal is a "clit-mouse" (the tiny joystick type thing you used to get on Laptops). I dont' think it would have been that hard to implement physically either.
vijay555 said:
Guys, this is by the guy that did the FileDialogChanger, a genius in his own time:
http://www.geocities.co.jp/SiliconValley-Cupertino/2039/FakeCursorPPC.zip
Please indicate if it does or doesn't work. I don't think it would be too difficult to write a new mouse emulator, but there's no point reinventing the mouse wheel :wink:
V
Click to expand...
Click to collapse
can someone describe exactly what this does?
Does it slow the device down at all?
(and has anyone translated the txt file in that zip???? )
Yes works qute will as a cursor / mouse you can control with d-pad. no does not slow device down and no can't translate txt but is quite self explanatory when you use. Give it a go tis cool!
Find attached for other users in case link goes down
I have added mouse cursor just place in same directory as fake cursor.exe and you will have typical mouse pointer.
meschle said:
Yes works qute will as a cursor / mouse you can control with d-pad. no does not slow device down and no can't translate txt but is quite self explanatory when you use. Give it a go tis cool!
Find attached for other users in case link goes down
Click to expand...
Click to collapse
I assume the .exe in the zip is for installing over Activesync? Or is it run on the PPC itself?
Run on ppc itself - i stuck it in \program files\
custom cursor
If it could be developed further and possibly include other pointer styles it would be an excellent app - I think marketable and some thing that should be part of the OS.
Click to expand...
Click to collapse
Just put any 16 color win95 cursor file in the same directory as FakeCursor.
a program called GoldIcon creates cursors that are compatible with FakeCursor.
I love this app, I have a top soft key dedicated to this so I can activate/deactivate it at any time.
there is no installation; the EXE can be located anywhere on the device and creates 2 lnk files in windows/startmenu/programs when run:
FakeCursor.lnk (toggle on and off) and FakeCursor Settings.lnk
Doesn't seem to be anything FAKE about it. It's a real Dpad mouse!
Thanks for the tip - do you have any you could post particularly mouse style pointer.
thanks
can you use XP mouse pointers, I havent seen a win95 machine for years.... or if you have one around would be great if you could simply post a few.
Is there a way of submitting Alt commands via an Android keyboard to my windows PC?
I presently use Air Mouse on an Ipod Touch to control my HTPC remotely.
This is the only use I have for the thing and I'd like to think that there will be the perfect Android solution for me soon.
The benefit of Air Mouse over RemoteDroid and GMote is the Alt key ability which neither of the Android apps have (or if they have I haven't found it yet), a function I find a lot of use for.
(I should add that the only Android device I have at present is an HTC Desire....so I guess that could be the limitation rather than the apps)
I don't really understand what you mean by alt key ability. Could you please explain, and maybe we can help sugest a solution?
What is it that this alt key ability of air mouse do, or more importantly, what is it that you want to accomplish with such an alt key ability?
Thanks for the reply, I had a feeling I wasn't being very clear.
I'd like to use my Android device as a trackpad and mouse for my HTPC.
My media player of choice (MPC-HC) uses a lot of keyboard shortcuts with the "Alt" signifier. For example Alt+X closes the program. These shortcuts are especially important because the program runs in a fullscreen mode which removes any context menus.
All the various android soft keyboards I have seen have no Alt key so I would lose a lot of functionality controlling the HTPC from an android device.
I have read that pressing the trackball twice on an HTC Desire may be a substitute for pressing the "Alt" key but have never got this to work in practice.
Just found an app that might suit your needs. I suggest you check it out.
GRemote Pro
Edit:
Ok, I just tried this app out, and it does exactly what you need.
It comes packed with an app alt, ctrl, tab and del buttons that let you alt+tab among other things.
I didn't see MPC-HC in the server setup, but that's not a problem as you can configure your own profiles with specific commands.
Fair warning, it's a bit on the slow side (seems to be a port of a winmo app), but I'm sure it'll get better with time and updates. It's a very polished Remote app for android and it even comes with drivers for a G-sensor controller to play games with (use android as wii-mote/controller).
This app defenitly rocks.
You sir (or madam) are a legend.
I was disappointed at first to see that this app doesn't simply add Alt and Ctrl keys to the standard keyboard, but it does allow considerable control of the media player directly.
Need to have a much longer play to see if it's really what I need...but I appreciate your effort already.
Another Suggestion
Have you tried unified remote?
It's got a full windows keyboard, You can create your own custom remotes and if you wanted, you could even have multiple droids connected.
Yes, this reply is s bit late, but better late than never
try Hackers Keyboard
I installed hackers keyboard and tried to activate it. It gives a prompt message that this will collect all information except passwords, including personal data and credit card numbers....!!!
Disclaimer
This short tutorial is based on my own research regarding missing keyboard layout mapping in stock Honeycomb/ICS Android for my Motorola XOOM. It is not intended to be a complete description of the Android input system, please refer to the official documentation for more information. This text should suffice for anyone with a basic knowledge about IT Anyway, if you break something, 'aint my fault. Won't take any responsibilities for YOUR actions.
Requirements
- rooted Android 3.0+ device (3.0, 3.1, 3.2, 4.0)
- text editor
- external keyboard to play with
Background stuff
(simplified, no bashing )
Keyboard (connected to any device) sends key codes to the target device. Key codes are just plain numbers, eg. if you press the "A" key on the keyboard, the computer reads "30" number. Since "30" is quite difficult to remember as being the "A" button, it is much more handy to describe keycodes as char codes: in the target software we get a KEY_A instead of 30.
Android uses two files for keyboard key-to-output mapping: .kl (key layout) and .kcm (key character map).
*.kl file describes the mapping between real keyboard codes to their virtual values, eg. 30 => KEY_A.
*.kcm file converts char codes to key events (KEY_A pressed? Send character "a". Shift + KEY_A? Send character "A", etc.)
So if you connect an external keyboard (USB, BT, Ir?) to your Android device, you get the following chain:
Code:
[keyboard] => [kl] => [kcm] => [application]
All devices (well, most of them) can be identified by VID (Vendor ID) and PID (product ID). VID and PID are 4 hex symbols each.
Android by default uses /system/usr/keylayout/Generic.kl and /system/usr/keychars/Generic.kcm for keyboard handling. If you look into /system/usr/keylayout/ and /system/usr/keychars/ you may find some more keymaps, including something like Vendor_xxxx_Product_xxxx.* Those files are used for specific devices, eg. Vendor_045e_Product_028e.kl is used for XBox 360 controller. When you connect the keyboard, Android checks the peripherial device VID and PID and looks for matching kl and/or kcm. If there is no matching file found, Generic.kl/Generic.kcm is used instead (disjoint -> you may have a specific kl and generic kcm, generic kl and specific kcm, etc.).
You may get the PID/VID of your external keyboard under for example Windows (in device manager [devmgmt.msc] find your keyboard and check its details [properties->details], for example HID\VID_046D&PID_C312\6&26DA469B&0&0000 => Vendor_046d_Product_C312). So if you would like to prepare a keymap for my USB Logitech keyboard, you will have to provide me with Vendor_046d_Product_C312.[kl|kcm] files
Both KCM and KL files are encoded in ANSI -> no special (national) characters allowed except for 'classic' set! If you want to include any national or extra character, you need to use their unicode hex values in \uXXXX variant. See http://www.tamasoft.co.jp/en/general-info/unicode.html for a huge list of unicode characters.
Getting hands dirty
- pull Generic.kcm from your device via adb:
Code:
adb pull /system/usr/keychars/Generic.kcm
- open it with Notepad++
- scroll through the blahblah about not modifying the file to the section with
Code:
key A {
label: 'A'
- this is where your work starts!
In general the map is composed as fillows:
Code:
# comment starts with a hash
key [keycode] {
label: '[label]'
base: '[key without any modifiers]'
[modifier]: '[key with modifier]'
[modifier]+[modifier]: '[key with both modifiers]'
[modifier],[modifier]: '[key with any of listed modifiers]'
[modifier]: fallback [magic key] # read below
[modifier],[modifier]: none
}
Modifiers can be: ralt, lalt, alt (right/left ALT, any ALT), rshift, lshift, shift (right/left SHIFT, any SHIFT), rctrl, lctrl, ctrl (left/right CTRL, any CTRL), capslock (no right CAPSLOCK on the kb, sorry ), rmeta, lmeta, meta (right/left WIN key, any WIN key). There are probably more, but didn't encounter any...
So, let's make the A key work like on Polish (Programmer) keyboard layout (namely a, A, ą, Ą letters):
Code:
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
ralt: '\u0105'
shift+ralt, capslock+ralt: '\u0104'
lalt, meta: none # ctrl omitted - ctrl+a does something...
}
Polish letters "ą" and "Ą" have their unicode values of 0x0105 and 0x0104 respectively, thus in order to have them available via right alt + A, we use ralt modifier and shift/capslock ralt modifier. Please note, that it is necessary to have 'shift' modifier for capital A.
Code:
fallback [i]magic key[/i]
is used to map certain key combinations to other commands ("hardware buttons"), such as HOME, SEARCH, MENU, APP_SWITCH, etc. Thus if for example you would like to have lalt+tab for app switching you would have to use the following:
Code:
key TAB {
label: '\t'
base: '\t'
lalt: fallback APP_SWITCH # alt + tab :)
ralt, meta: none
}
And now a Windows+D for desktop shortcut:
Code:
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
meta: fallback HOME # show desktop
alt: none
}
In short
- in most cases the Generic.kl file is ok, there is no need to prepare .kl for a common keyboard
- either edit Generic.kcm or get VID/PID of your keyboard and prepare a key layout for your language and push it to /system/usr/keychars/
Hints
- backup your Generic.kcm file!
- try to be as specific as possible if you do not use a combination, map it into 'none' section; when you map ralt, don't include alt in 'none', include lalt instead. Remember, that some key combinations have special meanings (ctrl+d, ctrl+c, ctrl+v, etc), and it is better not to include them in your map.
- backup your layout - I lost a lot of time re-creating my keymap after ROM upgrade (symbolic link is a better idea!)
- look through the entire Generic.kcm file - there are a lot of fancy key combinations, for example ESCAPE key can !by default! handle MENU, BACK and HOME keys!
- possible fallback keys are listed in .kl file
- use logcat! You can spot information about external input device and a note about applied KCM/KL files
Finally
Hit "thanks" if you find it helpful. If you prepare a good (national) key layout, please share it!
For Polish national characters we can use "Polska Klawiatura Programisty V2" it works very well with external keyboard on MoPho with 2.3.
thanks for the information. I couldnt find the the Android ICS/Honeycomb virtual key for task switcher..do you know what name is that Task switcher virtual key ?
Hi, I am a newbie with android....
I modify the kcm file to (spanish layout, Generic to Vendor both attached):
An I can't make it work, maybe:
Something is missing?
Errors in the kcm file?
Any advice would be appreciated :crying:
I am away from my PC, but:
1) run Terminal Emulator before connecting the external keyboard
2) enter superuser mode (su)
3) launch logcat (logcat)
4) launch another Terminal Emulator window
5) enter superuser mode (su)
6) connect external keyboard
7) break logcat feed
8) launch dmesg (dmesg) in other window
9) check logcat and dmesg outputs looking for errors
I'm on vacation till next Sunday. I will help you directly once I'm back
Sent from my Galaxy Nexus using Tapatalk 2
Thanks for the help:
Here are fragments of:
dmesg
Start called p = df8e3820
starting connect time
DWC_OTG : [tcc_set_vbus] vbus_state:1
usb 1-1: new low speed USB device number using dwc_otg
usb 1-1: device v1241 p1503 is not supported
input: USB Keyboard as /devices/platform/dwc_otg.0/usb1/1-1/1-1:1.0/input/input5
Click to expand...
Click to collapse
logcat
D/EventHub( 1114): No input device configuration file found for device ' USB Keyboard'.
E/KeyCharacterMap( 1114): /system/usr/keychars/Generic.kcm:454: Malformed character literal.
E/KeyCharacterMap( 1114): /system/usr/keychars/Generic.kcm:454: Invalid character literal for key.
Click to expand...
Click to collapse
I will check line 454 and see what I can do.
UPDATE
So I checked the 454 lien an a 'u' was missing, "\00xx" to "\u00xx".
I use the droidedit pro (1.15.2, and god the save file doesn't work unless root mode is enabled), changed in the ext_sd version use the terminal and copy then I connect the keyboard and it work, oh yeah it simply works (just a fu..ing 'u' for 22kb file)
Anyway thanks for the tip it really, REALLY help me :highfive: :highfive: :good: :good:
Thanks for this, will come in handy.
Hi everyone! Need some help with character map modding for Jelly Bean. I need to assign multiple letters to one button, e.g. "A" for single tap and "[" for double tap (just an example, don't mention).
What I found on source.android.com:
http://source.android.com/tech/input/key-character-map-files.html said:
The following keyboard types are recognized:
...
PREDICTIVE: A keyboard with all the letters, but with more than one letter per key.
This type of keyboard is generally designed for thumb typing.
Corresponds to KeyCharacterMap.PREDICTIVE.
Click to expand...
Click to collapse
Seems like the one thing I need, but I haven't found any syntax explanations or charmap examples for that layout type. Neither on AOSP pages, nor via Google. If your device uses such keymap type or you just know the syntax, post here examples, or attach kcm files. Any hint is good.
Android 4.2.2 - Virtual
Hi
Many thanks for this guides.
On my device Virtual.kcm is used (Acer A1-811, android 4.2.2)
Obviously it is nice to modify some file, rather than to pay 2$ for some application to do such mappings to right characters.
Regards
Logitech K400
Not sure if this goes here, but I have a Logitech K400 keyboard and it has some "special" keys, like the music player key.
What I want to do is to change the default player that opens when pressing that key, in my case it would be Poweramp.
The keyboard also has some other keys on the function keys, and when pressed some of them just are letters, want to edit this too.
There is also a "lock pc" key that opens S Planner.
I hope someone knows what I mean and can help me.
Mapping an external keyboard
In attempting to re-map an external keyboard, i have succesfully found and edited the P1_keyboard.kl file for instance changing the function of the voice search button from performing that function to performing an "Enter" or typing a letter "B" . However what i am trying to do is to use that button to do a combination of Both Letter B and then ENTER, i have tried "+" space etc but with no luck... Is this possible to do in any way?
kcm file has no effect
I create this file for the logitech K810
/system/usr/keylayout/Vendor_046d_Product_b319.kl
This successfully remaps keys.
However creating and editing this has no effect:
/system/usr/keychars/Vendor_046d_Product_b319.kcm
The generic behavior also does not match Generic.kcm
One example is Alt-Tab which switches actually switches applications on my device. It is not mentioned anywhere in anything in /system/usr. Redefining
Alt-Tab in the kcm file has no effect.
I am running KitKat on a Galaxy Note 10.1 2014.
file permissions
injola said:
I create this file for the logitech K810
/system/usr/keylayout/Vendor_046d_Product_b319.kl
This successfully remaps keys.
However creating and editing this has no effect:
/system/usr/keychars/Vendor_046d_Product_b319.kcm
The generic behavior also does not match Generic.kcm
One example is Alt-Tab which switches actually switches applications on my device. It is not mentioned anywhere in anything in /system/usr. Redefining
Alt-Tab in the kcm file has no effect.
I am running KitKat on a Galaxy Note 10.1 2014.
Click to expand...
Click to collapse
Just a guess, are the file permission set appropriately? (chmod 644 /system/usr/keychars/*.kcm)
Ctrl+SPACE does not work
On my nexus7 2012 4.4.4, chroot debian wheezy is running.
When I use emacs with Apple Wireless Keyboard (JIS).
Ctrl-SPACE does not allow me to set mark,
although keep pressing them for about one second just makes it work.
(but keep pressing makes flickering "Mark activated", "Mark deactivated"...)
In the kcm file, CTRL+SPACE is specified as "fallback LANGUAGE_SWITCH".
I tried changing it to none, or commenting out the line, but these doesn't affect.
I also used keytest.apk to inspect the behavior.
It seems just when CTRL+SPACE is pressed, no event happens...?
Does anyone know how to make Ctrl+SPACE (without keep pressing) function as setting mark ?
thank you in advance.
Genius luxepad 9100 keyboard
Hi i have this keyboard and android 4.2.2 i want the keyboard with spanish layout without pay an app, i want to choose the language on the system. Thanks in advance
Keycodes not recognised
Hi there,
I have a problem where I can't remap a key because it's not showing any keycode.
That is: standard keys like A, B, C, etc are ok: I can see their scan code and change it if I want to, but I don't.
Keys like Volume_up, play_pause, etc I would like to have them changed, but I cannot as I can't see any scan code when I press them.
I know all keys work as I tested the remote on windows and it works properly, and I can see keycodes there (but they are not the same as in android, so I can't use windows' keycodes)
Thank you if you can help
enter to send message
hello everyone! does anyone solve question about ENTER key to sending message insdeat of new line command? combination of buttons not works too for the sending messages....
android 4.4.2 + universal external keyboard (with comand buttons)
Toggle Languages
Thanks for this helpful and specific tutorial. :good:
I am trying to map keys for Urdu language. :angel:
My question is, will it work properly with lollipop?
Will it be able to toggle between language.
...
Thanks in advance for you kind information
_TB_TB_ said:
Disclaimer
- rooted Android 3.0+ device (3.0, 3.1, 3.2, 4.0)
Click to expand...
Click to collapse
Hi!
Is there any way to replace kcm without loosing your warranty?
Code:
adb push move /system/usr/
push: move/keychars/Virtual.kcm -> /system/usr/keychars/Virtual.kcm
failed to copy 'move/keychars/Virtual.kcm' to '/system/usr/keychars/Virtual.kcm': Read-only file system
Should I change permissions to put back onto system/usr?
I have Samsung S10 with Android 12
When I connect bluetooth gamepad, it gets recognized as "Physical keyboard" (gamepad is VR BOX)
When I enter in SCUMMVM (gaming app), it has a hud on screen shortcut key (HUD)to call a onscreen keyboard (needed in some games). If a bluetooth gamepad is connected, the shortcut key doesn't work and I can't call the onscreen keyboard. Under "Physical keyboard" options I have turned on "show on-screen keyboard" but it didn't help.
I've read that in past people had simmilar problems with other gamepads on older andorid phones and that the solution was to go to Android settings and "select your default keyboard. (physical or virtual)" but I don't have that option.
Any idea how to solve this problem?
The root problem is that the USB HID report descriptors in your little handheld are written incorrectly.
It's reporting that it can send the alphabet (specifically "Q").
Me? I'd fix the problem by reverse engineering the device.
The next possibility is to use a custom /system/usr/idc/Vendor...idc to make it clear that this is not a qwerty
The last possibility (and the one you probably want) is in Settings > System > Languages & input > Physical keyboard > Keyboard assistance > Show virtual keyboard.
You can load my UsbMode.apk (in the sig) and see that your handheld is identified as a qwerty.
Renate said:
The root problem is that the USB HID report descriptors in your little handheld are written incorrectly.
It's reporting that it can send the alphabet (specifically "Q").
Me? I'd fix the problem by reverse engineering the device.
The next possibility is to use a custom /system/usr/idc/Vendor...idc to make it clear that this is not a qwerty
The last possibility (and the one you probably want) is in Settings > System > Languages & input > Physical keyboard > Keyboard assistance > Show virtual keyboard.
You can load my UsbMode.apk (in the sig) and see that your handheld is identified as a qwerty.
Click to expand...
Click to collapse
Thanks for your answer
As I've mentioned before "Show virtual keyboard" doesn't work. I can see the on screen button that would call the virtual keyboard but it doesn't work if the gamepad is connected
I'm interested in solution to use custom Vendor.idc or to reverse engineer the device but I'm a noob to do it myself. I've went to /system/usr/idc/ dir and can see 4 .idc files where in the files, it says that two are form "Sony DS4...", and two are for "Google Reference RCU Remote" - none seams that belongs to the "no name" gamepad device I'm using? There are bunch of other .idc files but also no one seams to belong to the device...
Here's the paste from the Google RCU device:
1st file:
# Input Device Configuration file for Google Reference RCU Remote.
#
# Basic Parameters
# Due to a memory error on early prototypes of the reference remote control
# the VID/PID is mapped to 248a/8266 instead of 0957/0001
keyboard.layout = Vendor_0957_Product_0001
keyboard.doNotWakeByDefault = 1
audio.mic = 1
2nd file:
# Input Device Configuration file for Google Reference RCU Remote.
#
# Basic Parameters
keyboard.layout = Vendor_0957_Product_0001
keyboard.doNotWakeByDefault = 1
audio.mic = 1
Any help?
This gamepad I'm trying to use is pretty neat to play games by one hand which is great on mobile as you can hold device in one hand and gamepad in other so it would be great to hack it if to also be able to show keyboard on keypress demand if it is possible
Try the UsbMode.apk. Also, does a little boxed "A" appear on the status bar when the remote is active?
First, with the remote active, identify the VID/PID of your device
Code:
$ logcat|grep btif
bt_btif : bta_hh_co_send_hid_info: vendor_id = 0x291a, product_id = 0x8502, // something like this
^C
Could you do me a favor (just for my own interest)?
Code:
$ cd /sys/bus/hid/devices
$ cd whatever // there's only one directory here, named ????:VID#:PID#:????
$ cp report_descriptor /sdcard/descript.img
$ ^D
C:\>adb pull /sdcard/descript.img
Hmm, it looks like there is no option in idc. You'll have to make a keylayout file.
Please use the UsbMode.apk and write down what all the buttons do.
There's not that many. I just need the Android names, you don't need to say which button on the remote it is.