[APP] {WIP} Virtual D-Pad - (Updated 15/12/09)

Search This thread

Tirinoarim

Senior Member
Oct 16, 2007
200
1
Huddersfield
www.tirinoarim.co.uk
Run this app in the background to use the G-Sensor as a DPad. Seems to work with cursor (in word etc) and, start menu, list boxes etc.

Comments/feedback appreciated (but please remember it is a work in progress!)

Version History

Added sample full config with descriptions
Added <VK_DPAD> option in config xml to increase compatibility.

Version 0.9:-
Bug fix to tilt logic
Added more override options for individual applications (e.g. MaxX/Y, DeadZoneX/Y)
Uploaded XSD for config file (contains some documentation)

Version 0.8:-
Added hardware key toggle to config file

Version 0.7:-
Moved all settings into config file
Improved UI
New "Switch" mode added
New "KeySend" methods added (SendMessage & KeybdEvent)

Version 0.6:-
Minor bug fix

Version 0.5:-
New config file format, to support...
Acceleration mode!

Version 0.4:-
Better matching of exe names (oops!)

Version 0.3:-
Allowed list now works from exe name (rather than window title)

Version 0.2:-
Config file
Proportional directions
Non-flat center/neutral point (config - CenterX/CenterY)
"Dead Zone" (config - Threshold)
Restriction by program (config - Application)

Have a play and let me know your thoughts.
 

Attachments

  • Config.xsd.txt
    10.2 KB · Views: 4,696
  • GPad.zip
    19.9 KB · Views: 4,715
Last edited:

abeery

Senior Member
Jun 12, 2007
135
0
Honeoye Falls, NY
I'll give her a look see --- not happy with the virtual SIP solution I've been trying to code. I was wondering if I could detect a hardware key (like the back arrow) and then use the g_sensor for scrolling if and only if that button was being held. That way apps aready using the g-sensor could continue to use it and users could have greater control over what was scrolled and when. Since you already have taken this this far I throw the idea your way to run with it if you want to... if not that is fine too.

Blessings my friend in the new year!

PS-If you want to collaborate in coding send me a PM
 

abeery

Senior Member
Jun 12, 2007
135
0
Honeoye Falls, NY
Seems to work as intended... The single-hardware button "hold to enable - release to disable" would make this a real solution... Are use using Dutta's Unified Sensor API "My Brain Hurts website"?

Good work so far
 

tomasn

Member
Oct 10, 2007
21
0
I tried it out and this seems promising. Below are some things I would like to see added to make this truly useful.

1. You do not want to have it active all the time so you need an easy ability to activate/deactivate it as already stated above. Either by pressing and holding a hardware button or by pressing and holding a certain area/corner of the screen.

2. When I hold the phone in my hand the neutral position is almost never the completely flat position. I think the position of the phone when you activate it according to 1. above should be taken as the neutral position. Any relative movements from that position should then be interpreted as left,right,up and down.

3. Make the speed of the scrolling configarable.

4. Make the speed of the scrolling proportional to the movement from the neutral position. If I move only slightly from the neutral position it should scroll slowly and if I move it a lot it should scroll faster.

5. A per application filter would also be really useful. For each application you should be able to specify ig G-Pad is active always, never or when activated according to 1. above. The default for unlisted applications should be to activate it according to 1. above.


Don't hesitate to ask if you have any questions regarding my suggestions. I don't think any of them should be really hard to implement.

Keep up the good work. I look forward to the next version of this.
 
Last edited:

Tirinoarim

Senior Member
Oct 16, 2007
200
1
Huddersfield
www.tirinoarim.co.uk
Wow, so many responses! Like I said initially, its a work in progress. On the "ToDo" list is :-
1. Config File!
* Threshold setting (how much to tilt before registering
* Center (i.e. what angle is neutral instead of flat)
* Application list
2. Proportional control

I'll add the other suggestions to my list.

Cheers
 

johnpatcher

Senior Member
Jan 5, 2008
913
8
Great work! The most wanted for me is the possibility to map it to a button, so by pressing the button your program is enabled, by pressing it once again, it is disabled again.

Another idea would be that it is just enabled while you are pressing the button, whereas it is disabled when you are not pressing the specified button.

But its up to you ;).
 

rhtizzy

Senior Member
Apr 25, 2008
296
38
Another idea would be that it is just enabled while you are pressing the button, whereas it is disabled when you are not pressing the specified button.
This makes the most sense to me, browsing lists for instance would be so much more practical.

Keep up the excellent efforts!
 

KukurikU

Senior Member
Nov 23, 2006
1,735
46
Rehovot
excellent idea and a very promising start. thank you and Happy New Year!:)
this thread belongs to the "themes, applications and software". i'll try to persuade one of the mods.:p
 

Tirinoarim

Senior Member
Oct 16, 2007
200
1
Huddersfield
www.tirinoarim.co.uk
1.)How is this virtual d-pad different of GController ?
Thats written for the Diamond (not 100% on HD) and development has stopped

2.) Can you move the map in Age of Empires 1,25 with this ? :)
No idea! I dont have AoE so once its up and running properly (its still in very early alpha!) I'll ask people to post compatible & incompatible apps.
 

Morden

Member
Dec 12, 2008
34
0
Tel-Aviv
Looks really promising! Seems to work pretty nicely. I think the two main things I would like would be similiar to what people already asked:

- An easy way to toggle it on\off rather than running the application and killing it.
- A way to calibrate the sensitivity threshold. It reacts rather quickly now.

Good job!
 

abeery

Senior Member
Jun 12, 2007
135
0
Honeoye Falls, NY
Ideas

I've been thinking about this more... if you allowed a program button like the BACK ARROW to temporarily activate when pressed, read current orientation and then applied scrolled based on the orientation delta from the initial orientation and then disabled scrooling once the BACK ARROW was released. This would solve the "Gee its not flat" problem and the enable/disable issue. Other configurable options might include as noted above -- changing g-sensor sensitivity; limiting scroll direction (N-S or E-W)

Can't wait to see your next version... I've suspended work on my v-DPad because i think yours will be the better solution
 

CR7KB24

Senior Member
Nov 18, 2008
462
0
Has anyone tried this on a Touch Pro, i might do it right now and get back to you guys

EDIT: Well I just tried this on my Touch Pro and it works prefect, but it would be awesome if there was a way to disable it when using TF3D because you have to have the phone perfectly flat or it will move around on the tabs, or maybe make settings for it to disable in some programs

Very nice app, I will keep my eye on this one, Thanks!
 
Last edited:

maati

Senior Member
Aug 13, 2006
790
1
Very nice!

I think this is the perfect solution as it allows to control everything with the GSensor. Too bad GController development has beed stopped, I hope this will be the perfect successor.
 

edwinlinkt

Senior Member
Mar 28, 2007
239
8
BSB
Work in PocketGBA (GBA emulator)?

Does this app work in PocketGBA?
Can't play GBA games on my mobile now since i upgrade my phone to HD as PocketGBA require hardware buttons for directions control.
GBA on Morphgear is just too slow with the sound on :(