I'm creating a virtual mouse pointer control program, and I've run into some tricky problems

I’m trying to create a program that will create a mouse cursor I can control with the keypad. I’ve been making decent progress, but I’ve run into a few tricky issues. I’ll probably be able to figure it out on my own eventually, but I could use an outside perspective on the project.

Current issues (copied from the github page):

  • Is there a way to directly enable and disable the mouse cursor in X11, even when no input device exists? If this was possible, it would simplify things considerably, and I could just use xdotool to move the cursor.
  • Is it possible to create a fake pointer device that runs through software? This would also be better than my current approach.
  • Is there a way to make X11 draw a cursor image over any window? Direct framebuffer access is less than ideal, and it would be better if I could avoid it.
  • If not, how can I enable drawing to the framebuffer over X11 again? In ClockworkOS V0.2, images could be drawn directly to the framebuffer even with X11 active. Is there some way this can be re-enabled?
  • How can I enable custom security capabilities? I suspect these are disabled in the kernel, but can’t be sure as the kernel configuration isn’t accessible in any of the usual locations in /proc or /boot. Is there a way to enable these without installing a new kernel?

Shouldda read this: Modify the Keypad firmware to simulate the mouse.修改键盘固件来模拟鼠标

Considering the mouse arduino firmware was posted on August 29th, and this post was made on August 23rd, unless they had a time machine that would have been impossible.

Besides, attempting to solve problems in different ways is how we learn things and sometimes how we come up with even better solutions. A purely software based solution could be interesting as well, as it could probably be made to work on other Raspberry Pi devices, and perhaps other Linux systems in general. The arduino firmware method is a Gameshell specific option.

1 Like

Actually, this could be a great re-opening of an existing function, adding a second layer of almost “gesture” like inputs.

In another thread recently, re: mapping a player 2 for the gameshell, @Petrakis brought up that it should be viable to have a secondary mapping of the dpad+shift.
That would be doing something based on an arduino being flashed. However a software solution could be doable. I have done some similar things with xbindinput, just for some quick shortcuts to terminate programs. Something could be done, scripting mould gestures.

On another note, I don’t see how replying to a post 10 months later with something that is not constructive, and seemingly demeaning to the original topic has any purpose in a forum such as this. I think you hit the nail on the head @adcockm. We are about going forwards and innovating.

The second reply is doing the exact opposite.

1 Like