Mworks support for Wacom tablets

Hi Chris,
I was wondering Mworks supports Wacom tablets as input devices.
here is a link to Wacom tablet page
http://www.wacom.com/en-us/products/pen-tablets/intuos-pro-large

Thanks,
Eghbal

Hi Eghbal,

Insofar as the tablet acts like a mouse or other standard pointing device, you should be able to use MWorks’ “Mouse Input” device to track the stylus position and register clicks. I’ve attached an example experiment that should help you test this. It reports when the mouse cursor moves on and off of the fixation point and when the primary mouse button is pressed and released.

If you want to use additional input data from the tablet (e.g. pressure), then I’ll need to add support for it. Wacom provides details of how to support their tablets in Mac applications, so presumably this wouldn’t be too difficult.

Cheers,
Chris

Attachment: mouse_input_demo.xml (4.24 KB)

Hi Chris,
Thanks, I just tested Wacom tablet and it works well. I am trying to now show the mouse position as cursor point on the display. Any ideas on how I can do this.
Thanks,
Eghbal

Hi Eghbal,

I am trying to now show the mouse position as cursor point on the display. Any ideas on how I can do this.

I’ve attached an updated example that demonstrates one way to do it.

Cheers,
Chris

Attachment: mouse_input_demo_with_cursor.xml (5.01 KB)

Hi Chris,

Thanks, this looks good. I notice however that there is a lag between the position of the mouse and the cursor shown by the mworks. I think one easy way to solve this would be to calculate mouse speed and project the position in time to account for the lag time (predicted_position=v_mouse*t_lag+current_position). I need to calculate a smooth version of mouse velocity, and was thinking to use eye_monitor to get the mouse velocity. Do you recommend other approaches?

Thanks,
Eghbal

Hi Chris,
I was wondering if there is an easy way to calculate mouse(eye) velocity in mworks, so that I can account for the delays in the display of cursor.

Thanks,
Eghbal

Hi Eghbal,

Sorry for not responding sooner.

The eye monitor doesn’t expose the eye velocity to your experiment. While it could be modified to do so, I have doubts about the overall effectiveness of your proposal.

What exactly is your goal here? Do you want a cursor but not want the standard system cursor?

Chris

Hi Chris,

Sorry that I wasn’t clear previously.
I tested the setup with the Wacom tablet and there is a discrepancy between the location of the pen and the cursor. In an ideal scenario the cursor location should be a realtime projection of the pen location, and represent where the hand is.
what strategy can achieve this more efficiently? do you think having a cursor stimuli can help?

Thanks,
Eghbal

Hi Eghbal,

As we discussed offline, I’m planning to modify the eye monitor to expose the current eye velocity (both x and y components). However, I’m currently in the process of getting MWorks 0.6 released, and I’m not going to be adding new features to the nightly build until that’s done. I plan to push 0.6 out at the end of this week, so the earliest I’m likely to be able to work on the eye velocity stuff is next week. I hope that won’t be a problem for you.

Cheers,
Chris

Hi Chris,

That is no problem. Thanks for letting me know. I will work on other aspect of my design meanwhile.

Best,
Eghbal

Hi Chris,

I was wondering if you’ve had time to make progress the cursor display, I am close to finishing the hardware design.
Thanks,
Eghbal

Hi Eghbal,

I was wondering if you’ve had time to make progress the cursor display, I am close to finishing the hardware design.

No, but I’ll try to get it done this week.

Cheers,
Chris

Hi Eghbal,

I’ve added two optional parameters, eye_velocity_h and eye_velocity_v, to the eye monitor. If the values of these parameters are variable names, then the calculated eye velocity components will be stored in the specified variables whenever the eye status is computed. This should be available in tonight’s nightly build.

Cheers,
Chris

Hi Chris,
Thanks a lot! I give it a try and let you know how it goes.
Eghbal

Hi Chris,

I tested the setup and seems to be working, however there are some jitter in displaying of the cursor and I was wondering if you can take a look. I can set up the system if you have time to look at it today.

Thanks,
Eghbal

Hi Chris,

Part of the problem with the delay was stemming from the computer that I was using. The delay is now much shorter and looks like it has to do with frame updates, I was wondering if you could take a look at the setup sometime this week and give me some feedback about what to do next.

Thanks,
Eghbal

Hi Eghbal,

Just to recap our offline discussion: I think that our use of high-level system UI events to obtain the on-screen location of the pointing device is introducing a small but noticeable delay in the movement of the MWorks-controlled cursor versus the system one. I will acquire a Wacom tablet and investigate the possibility of getting position and movement data from it at a lower level (ideally via a USB HID interface). Due to my upcoming vacation time, I probably won’t be able to work on this until after the holidays.

Cheers,
Chris

Hi Chris,

That sounds great.
I was wondering how to make mouse cursor invisible, I tried changing the: hide_cursor=“NO” to YES but it doesn’t make the cursor disappear.

Thanks,
Eghbla