iRex Forum Forum Index iRex Forum

 
 FAQFAQ   SearchSearch   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Tilt data available from the Wacom tablet?
Goto page 1, 2  Next
 
Post new topic   Reply to topic    iRex Forum Forum Index -> Stylus Calibration
View previous topic :: View next topic  
Author Message
jharker



Joined: 25 Apr 2007
Posts: 281
Location: Rochester, NY, USA

PostPosted: Fri Apr 27, 2007 8:54 pm    Post subject: Tilt data available from the Wacom tablet? Reply with quote

From the sticky-post about the project:
karel wrote:
The current implementation does not support calibration, in order to support calibration and pressure sensing we prefer another implementation. (The Wacom digitizer tablet supports pressure sensing).

I assume that the Wacom tablet in the iLiad also supports tilt data? Your patch code includes it.
Back to top
View user's profile Send private message
BACbKA



Joined: 19 Dec 2006
Posts: 109
Location: Israel

PostPosted: Fri Apr 27, 2007 10:21 pm    Post subject: Reply with quote

btw, with the switch over to 2.9.5 I see very accurate stylus calibration on the same device which previously was way off (something like 1.5-2mm off). Does it mean that there was a problem with a problematic non-GPL code you've thrown away? and does it mean that those that enjoyed well-calibrated units before now have WORSE calibration than before?
Back to top
View user's profile Send private message Visit poster's website
kusmi



Joined: 03 Aug 2006
Posts: 136
Location: Zurich, Switzerland

PostPosted: Sun Apr 29, 2007 5:56 pm    Post subject: Reply with quote

I don't see that - mine is still off a few millimeters... but I have the feeling, now the offset is more prominent on the left side of the display, where before it was more on the right side (so it is swapped, as before 2.9.5) - but I can't really remember, so it could be that I'm wrong Smile

BTW, if WACOM-tablet in ilIad also provides tilt-data, that would make it possible to automatically detect, if the user writes in portrait or landscape mode! This would be great, as usually during note-taking I rotate the iliad (e.g. to write in the left/right book corners)
Back to top
View user's profile Send private message
Matthijs
iRex Employee
iRex Employee


Joined: 18 Jul 2006
Posts: 948
Location: Eindhoven

PostPosted: Tue May 01, 2007 7:14 am    Post subject: Reply with quote

From what I've heard from our Wacom contact-person, the tilt-data is not accurate in this Wacom panel, even though the variables are filled with something.
You could try to see what you can get out of it though...
Back to top
View user's profile Send private message
jharker



Joined: 25 Apr 2007
Posts: 281
Location: Rochester, NY, USA

PostPosted: Thu May 03, 2007 2:35 am    Post subject: Reply with quote

Hmm... I just uncommented some debug messages in the wacom driver, recompiled xserver, and ran it on my iLiad. (I installed the 'unbrickable' mod to turn on ethernet/dropbear at bootup, so I have reliable ssh access in the event of an xserver failure.)

From what I can see, there is actually no data at all being returned by the tilt sensor. On initialization, there are no max tilt values returned, and in the data stream there are no tilt values either.

Since this code is literally reading the tilt values straight from the serial port, I have to assume that either:
  1. The Wacom panel isn't providing tilt data at all,
  2. The driver patch is not reading the serial port correctly for tilt data, or
  3. My message-printing code is messed up. Wink

I'm pretty sure that #3 is not the case... Smile

Regarding #1, the Linux Wacom Project FAQ says:
Linux Wacom Project FAQ wrote:
Note, tilt is only supported with protocol V tablets, which include Intuos series and Cintiq 21UX to date (Nov. 9, 2006). Any other tablets don't have tilt no matter you have the tilt option in your xorg.conf or not.

Matthijs, what model Wacom tablet is in the iRex? I know you've requested permission to release technical info from Wacom, but while we're waiting for that even the model name would be helpful...

Regarding #2, the current code looks okay at first glance... I'm working on implementing the wacdump utility from the Linux Wacom Project, to see exactly what's up with the touchscreen. If that works, we'll have a pretty good idea how to talk to it and what it can do.
Back to top
View user's profile Send private message
jharker



Joined: 25 Apr 2007
Posts: 281
Location: Rochester, NY, USA

PostPosted: Thu May 03, 2007 3:27 pm    Post subject: Reply with quote

Update: wacdump runs okay on the iLiad now, however it doesn't seem to want to auto-identify the tablet. I've tried 'forcing' it to think the tablet is a certain type, but none of the known types work. So I infer that the Wacom sensor in the iLiad is somehow custom or non-standard, in which case I guess we'll need the technical data before we can get any further... Crying or Very sad Wink

As an aside, I guess it's obvious why I'm focused on getting tilt sensor information: Calibration will be MUCH more accurate if we have tilt data to play with. Without tilt data, the pen point will move around depending on how the pen is held (and what orientation the stylus is placed in).
Back to top
View user's profile Send private message
jharker



Joined: 25 Apr 2007
Posts: 281
Location: Rochester, NY, USA

PostPosted: Thu May 03, 2007 4:06 pm    Post subject: Reply with quote

Update: I was curious to see whether tilt data support resides primarily in the tablet or the pen. Is there such a thing as a pen that doesn't support tilt data? (I thought maybe the pen that comes with the iLiad isn't tilt-enabled, and that would explain why I got no tilt data.)

So I called Wacom technical support and asked. I said I was working on open-source driver development for the iLiad, and they gave me some information.

To make a long story short, here's what I learned:
  • Tilt support is in the tablet, not the pen.
  • The Wacom device in the iLiad is a UD type, which DOES support tilt.
  • The programmer's guide to supporting UD Wacom tablets (and others) may be downloaded in pdf form at http://www.wacomeng.com/devsupport/progman.pdf.

Actually, I found that programmer's guide by doing a Google-search for the email address of their contact person for driver development support.

I have not verified any of this information yet (they might be wrong about what model sensor is in the iLiad). Nor have I read much of the manual. But I thought I would post it for the curious. Very Happy
Back to top
View user's profile Send private message
cdnebklvr



Joined: 12 Apr 2007
Posts: 38
Location: Atlantic Canada

PostPosted: Thu May 03, 2007 5:04 pm    Post subject: Reply with quote

jharker.

You're doing a great job so far and the info you've posted has been really interesting. I haven't done any Linux development and my C coding is really rusty but I hope to help with this project at some point, even if I just provide moral support. Smile

Keep up the great work.
Back to top
View user's profile Send private message
jayk
Community Developer


Joined: 19 Nov 2006
Posts: 90

PostPosted: Fri May 04, 2007 6:04 am    Post subject: Reply with quote

Jharker: You rule. Great great work on digging up this information. I am reading the UD programming doc as we speak.

Sorry for not being around sooner. I'm buried in work from my day job and it's been slowing me down a bit.

According to the manual, we should be able to ask the tablet what model it is. I don't have everything hooked up on my iliad yet, but if you want to try it, sending the command ~#<enter> should dump back a model and version string. If it starts with UD, we know we do in fact have a UD.... Or maybe Matthijs can tell us?

I think it'd be useful during development to have a proggy to talk directly to the wacom tablet and spit out results. I'm working on getting the general linux-wacom tools compiled for my Iliad - I'm hopeful that we can use some of the debugging / testing stuff from there to learn a bit more about what our tablet will actually do.

As an aside - Matthijs - I saw a post you made elsewhere about setting a startup script to look at the cf card for another rc#.d directory - can you elaborate? When is the CF mounted? how soon in the boot process can we actually access the CF? I need to set up my Iliad to be a little less brickable - before I kill off the x server and start poking at the wacom device manually Smile

Thanks. And again - way to go jharker!

JayK
Back to top
View user's profile Send private message
Matthijs
iRex Employee
iRex Employee


Joined: 18 Jul 2006
Posts: 948
Location: Eindhoven

PostPosted: Fri May 04, 2007 8:24 am    Post subject: Reply with quote

Does W8001 mean anything for you? That should be the type of Wacom IC, according to the documentation I have here.
http://www.wacom-components.com/common/downloads/W8001.pdf

As for tilt support: my colleague who has done all communications with Wacom and has assisted them in calibrating (all panels are linearized in the factory to a maximum offset of +/- 5mm IIRC, which is stored in the Wacom IC firmware) is not here right now, but he told me in the past that the tilt data (if it is there at all) is not reliable.

jayK: the development iLiad with serial access should be heading your way via UPS now.

The CF card should be online before you rc5.d/S99-unbrick.sh is called, but you should *really* test that before relying on it. Maybe the ethernet + SSH option jharker is using is a bit safer.

I could also give you an update via iDS that flashes an NFS kernel into your emergency kernel
Back to top
View user's profile Send private message
Matthijs
iRex Employee
iRex Employee


Joined: 18 Jul 2006
Posts: 948
Location: Eindhoven

PostPosted: Fri May 04, 2007 8:26 am    Post subject: Reply with quote

The protocol used on the Serial port is referred to as "ISD V4"
Back to top
View user's profile Send private message
jharker



Joined: 25 Apr 2007
Posts: 281
Location: Rochester, NY, USA

PostPosted: Fri May 04, 2007 1:16 pm    Post subject: Reply with quote

Whew! Now we're cooking! Smile

All kinds of stuff to follow up on... let's see:

@Matthijs: I don't know anything about the W8001, but more technical info is better than less!

As for the tilt data, I know it's probably going to be unreliable, but I always like to check these things for myself. Very Happy If it's even approximately correct, we can still use it for calibration. As far as I'm concerned, even tilt that's accurate within +/- 10 degrees would still be an improvment over none, in terms of calculating the position of the pen tip. So while it might not be sensitive enough to control the line width dynamically, it might be helpful for keeping the projected pen tip in the right place... we'll see! Thanks for the info!

I don't know anything about ISD V4 yet, but I'll work on it. Smile

@jayk: Well, I'm a furiously procrastinating grad student, which means that even if I don't (theoretically) have much free time, I get a lot done... on everything that's not my thesis. Wink

Don't be too keen on the UD protocol. In the current iLiad driver, it sends the character "*" as a request for the tablet's current settings. But I can't find that command anywhere in the UD programming doc, which suggests that the iLiad tablet may not quite meet those standards.

I think I said earlier that although I compiled Linux Wacom Project tool "wacdump" for the iLiad, I was unable to get it to respond. Either the tool "timed out" or it said something about being unable to talk to vt100... I'm not sure what's up with that. I may have made an error in compile, although I used the SDK and so on. You probably have more experience than me, if you could check that would be great!

As far as I know the "UD" tablet type is fairly old, and it's also used only for integrated, low-power, handheld systems. I think the Linux Wacom Project has focused more on standalone tablets??... and it may simply be not supported by their driver. But I could be completely wrong.

I modified the current iLiad Wacom driver to send the "~#" and "~R" commands and each time read 28 characters of the result. In both cases it crashed the xserver (static-y screen on the iLiad, wow!) and produced no useful data that I could find. This could be because I don't know enough about basic serial port protocol, and I might have done something wrong.

So today I'm going to work on learning more about how serial ports work, and try this quick-and-dirty approach for getting some info from the tablet.

Jayk, I did work up a few things to make my iLiad less brickable when testing xserver stuff... I'll post it here in a couple of minutes.
Back to top
View user's profile Send private message
jharker



Joined: 25 Apr 2007
Posts: 281
Location: Rochester, NY, USA

PostPosted: Fri May 04, 2007 1:27 pm    Post subject: Reply with quote

Here are some questions, just off the top of my head: do either of you know much about serial ports?
  • When I write a string to the serial port, do I have to include the <newline>, or is it somehow included automatically?
  • What about reading, is there a flag I should look for before reading characters? The current iLiad Wacom driver seems to think so.
  • What happens if I read too many characters from the serial port? Do I go into bad memory?
  • What happens if I read too few characters from the serial port? Does stuff queue up in there, or does it vanish if it's not read?

These are probably all very obvious, but I don't know much about serial ports. I'll Google it later- I just thought I would ask... Smile
Back to top
View user's profile Send private message
cdnebklvr



Joined: 12 Apr 2007
Posts: 38
Location: Atlantic Canada

PostPosted: Fri May 04, 2007 2:22 pm    Post subject: Reply with quote

I was curious about the ISDV4 protocol so I did some googling.

From the LinuxWacom input driver man page:

...

Option "ForceDevice" "ISDV4"
tells the driver to dialog with the tablet the Tablet PC
way. Tablet PC is a serial tablet using a special Wacom IV
protocol, called ISDV4 protocol. This option is mandatory
for Tablet PC.
...

The related code looks to be in linuxwacom-0.7.6-4\src\xdrv\wcmISDV4.c

I couldn't find any technical specs on the Wacom site when I searched for ISDV4.

Hope this info helps.
Back to top
View user's profile Send private message
cdnebklvr



Joined: 12 Apr 2007
Posts: 38
Location: Atlantic Canada

PostPosted: Fri May 04, 2007 2:27 pm    Post subject: Reply with quote

I just noticed in the comment header of wcmISDV4.c

Copyright 2002-2005 by Ping Cheng, Wacom Technology. [his email address]

That email addr may come in handy for this project. Smile
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    iRex Forum Forum Index -> Stylus Calibration All times are GMT + 1 Hour
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


You can find our complete guidelines here.
Powered by phpBB © 2001, 2005 phpBB Group