Jump to content

TabletMagic for TabletPCs


  • Please log in to reply
519 replies to this topic

#1
Thinkyhead

Thinkyhead

    Scott Lahteine

  • Members
  • PipPipPip
  • 110 posts
  • Gender:Male
  • Location:Seattle, WA
  • Interests:OSX, iOS, reprap, science!
This is a dedicated topic for TabletMagic, an open source driver for Wacom serial devices that has been adapted to communicate with Tablet PC ISD-V4 digitizers.

So to start things off, welcome! Here's where the project stands as of today, April 19, 2013:
  • The official project page is https://github.com/t...ead/TabletMagic
  • The current release version is TabletMagic 2.0b20
  • Builds b14 - b15 consider all non-Apple Machine Type strings to be hackintosh systems
  • Build b16 and later consider any system with a digitizer in the I/O Registry to be a TabletPC
  • Build b18 adds 64-bit support and software Mouse Mode
  • The driver has been tested on several TabletPC systems and now works with most.
Getting Mac OS X To See Your Digitizer
Before Mac OS X will recognize your TabletPC's digitizer hardware your digitizer's ID string must be inserted in the proper kernel extension file. TabletMagic now includes an Enable Digitizer button to automate this process. Give it a try!

Lenovo ThinkPad X61t
If you have a Lenovo ThinkPad X61t you will also need an enabler to actually turn on the digitizer hardware. All the information you need is in its own dedicated topic. (and here's the relevant post!)

Still Nothing? Try "Don't Query"
Many - indeed most - TabletPC digitizers seem to ignore the "*" (TabletID) command, which asks the tablet to identify itself. If TabletMagic finds no tablet, or claims to see an ISD-V4 tablet, but the tablet doesn't function there are two things to check. First, under the TabletPC tab make sure the Don't Query checkbox is selected. Second, make sure the actual serial port is selected instead of "Automatic." (When Don't Query is enabled the "Automatic" setting only checks the first serial port, which is sometimes not what you want.)

Diagnostic Messages
For basic troubleshooting you can open the Console application before starting TabletMagic. There you will be able to observe its diagnostic output, including your Machine Type string. Press Console's "Clear" button between attempts for the cleanest output.

Killing TabletMagic
You can kill the driver most easily using the "Kill Daemon" button in the "Extras" tab of the TabletMagic Preference Pane. If you have any other tablet driver installed on your system, remove it and reboot before trying to start TabletMagic.

TabletPC tab
Under the TabletPC tab of the TabletMagic preference pane you'll find the aforementioned Enable Digitizer and Don't Query options, plus a pair of edit boxes where you can modify the digitizer range values. If the pointer doesn't correctly follow the stylus or seems to drift near the edges of the screen you should modify these values. With the Get From Stylus checkbox enabled you can obtain the digitizer range by moving the pen all the way to the bottom right corner of the screen.

Source Code To get the latest source code first you'll need 'git.' The 'git' binary is included with Snow Leopard (/usr/bin/git) or you can get it through MacPorts. Or download the GitHub application. Using the Terminal you can instantly fetch TabletMagic with the following command:

git clone git@github.com:thinkyhead/TabletMagic.git
(Older versions of the TabletMagic source code will remain archived on SourceForge at http://sourceforge.n...ts/tabletmagic/ ).

For More Help
If you've read this thread thoroughly and all your posts for help have led to a dead end, contact me at my TabletMagic for TabletPC email address. A logging version of TabletMagic is available (upon request) to help figure out unsupported protocols. If you have a serial tablet or built-in digitizer that TabletMagic can see but can't interpret, the logging version will help me to add support for your device.

#2
Ferret-Simpson

Ferret-Simpson

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 441 posts
  • Gender:Male
  • Location:EXETER
Collecting the TabletPC tomorrow afternoon. Will do fresh installs of OS X, Windows, and if I can now, Sabayon - Then will test TabletMagic.

#3
emon

emon

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 4 posts
rc3 didn't work either in my M275

Here's the output from console:
===== Thursday, March 1, 2007 7:50:12 PM US/Central =====
TabletMagicDaemon v2.0b8rc3
(c) 2007 Thinkyhead Software <www.thinkyhead.com>

[INIT] Machine Type: ADP2,1 (Hackintosh?)
[PROC] Screen Bounds: (0, 0) - (1023, 767)

[PORT] serial1 (19200 baud): Open Succeeded...
[SENT] "0"
[SENT] "*"
[RCVD] 

[PORT] serial1 (9600 baud): Open Succeeded...
[SENT] "SP\r"
[SENT] "~#\r"
[SENT] "~#\r"
[SENT] "~#\r"

[PORT] serial1 (19200 baud): Open Succeeded...
[SENT] "SP\r"
[SENT] "~#\r"
[SENT] "~#\r"
[SENT] "~#\r"

Could not initialize tablet.

No tablet found
[NICE] PRI=-20 PID=299 : Succeeded


#4
Ferret-Simpson

Ferret-Simpson

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 441 posts
  • Gender:Male
  • Location:EXETER
New motherboard. However my issue is the same - Enabling TabletMagic Grey Screens the system.

#5
paringas

paringas

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
Ok, let's see... Here're the two outputs of two different daemons, top one from rc3 of tabletmagic and bottom - from ...shoggi's driver:

2007 Thinkyhead Software <www.thinkyhead.com>

Paringas:~ Paringas$ [INIT] Machine Type: ADP2,1 (Hackintosh?)
[PROC] Screen Bounds: (0, 0) - (1823, 767)

[PORT] builtin-serial0 (19200 baud): Open Succeeded...
[SENT] "0"
[SENT] "*"
[RCVD]

[PORT] builtin-serial0 (9600 baud): Open Succeeded...
[SENT] "SP\r"
[SENT] "~#\r"
[SENT] "~#\r"
[SENT] "~#\r"

[PORT] builtin-serial0 (19200 baud): Open Succeeded...
[SENT] "SP\r"
[SENT] "~#\r"
[SENT] "~#\r"
[SENT] "~#\r"

Could not initialize tablet.
[ERR ] Fatal Error: No Wacom Tablet Found!

_____________________________________________________________

TabletMagicDaemon $Revision: 1.16 $
2004 Scott Lahteine

Screen Bounds: (0, 0) - (1023, 767)

[PORT] builtin-serial0
[SENT] "0\r"
[SENT] "*\r"
[GOOD] "\FFF03$1\7F"
[RCVD] "\FFF03$1\7F"
Tablet Bounds: (0, 0) - (24779, 18629)
[SENT] "1\r"

Tablet initialized.


Clearly, tabletmagic's not sending the right initialization string.
As for the tablets that worked - they were either happy with any string or that particular one of tabletmagic's rc3/rc2.

Hope this will get the ball rolling further, although i'm still to see my artrage2 and corel painter essentials working usably/without lagging and so forth.

Edited by paringas, 03 March 2007 - 03:08 AM.


#6
emon

emon

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 4 posts
Scott .. any updates?

#7
Ferret-Simpson

Ferret-Simpson

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 441 posts
  • Gender:Male
  • Location:EXETER
See topic "Pestering Driver Writers/Hackers"

#8
Thinkyhead

Thinkyhead

    Scott Lahteine

  • Members
  • PipPipPip
  • 110 posts
  • Gender:Male
  • Location:Seattle, WA
  • Interests:OSX, iOS, reprap, science!
I've just posted a new build:This version tries "*\r" in place of "*" in an attempt to get tablets to reply. If this string doesn't do the trick, it also tries connecting at 9600 baud. And if that doesn't work, well we'll see what happens...

I don't know what would be causing a kernel panic. There's very little - if any - low-level hackery going on. It may be useful to know at about what point the system panics. You might try something like this in Terminal (and place terminal low on the screen so it won't get hidden by the panic alert)...

sudo /Library/PreferencePanes/TabletMagic.prefPane/Contents/Resources/TabletMagicDaemon -d

This will start the daemon and try to connect to whatever tablet it can find. If it can't find a tablet it will quit. If there's a kernel panic, it'll probably be when the daemon tries to initialize the serial port.

I hope the results are more positive this time around. The preference pane and daemon should communicate a little better now, at least.

#9
veggieryan

veggieryan

    InsanelyMac Protégé

  • Members
  • Pip
  • 6 posts
WOW!!!!
THANKS SO MUCH FOR THIS!!!

Question: What exactly do I need to set in the settings to get the this working with a toshiba tecra m7 tablet pc? It should be the same as the m400.. I gathered that baud rate should be 19200... but what about the others? when i click enable I just get "no tablet found" in beta 7. now in beta 8 rc4 its the same.. but if I enable on startup i get a kernel panic and have to manually turn off the startup in the plist.
Is there something I am blatenly overlooking? Could you post the steps used to get the m400 working? I may just buy one if the m7 wont work.

I will send money to get this working. I want a mac tablet hybrid.

you are awesome.
thanks,
ryan.

#10
paringas

paringas

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
TabletMagicDaemon v2.0b8rc4
2007 Thinkyhead Software <www.thinkyhead.com>

[INIT] Machine Type: ADP2,1 (Hackintosh?)
[PROC] Tablet Bounds: (0, 0) - (15239, 15239)
[PROC] Screen Bounds: (0, 0) - (1823, 767)

[PORT] builtin-serial0: OPENED
[PORT] Setting speed to 19200
[SENT] "0\r"
[SENT] "*\r"
[RCVD]
[PORT] Setting speed to 9600
[SENT] "0\r"
[SENT] "*\r"
[RCVD]
[PORT] Setting speed to 9600
[SENT] "SP\r"
[SENT] "~#\r"
[SENT] "~#\r"
[SENT] "~#\r"
[PORT] Setting speed to 19200
[SENT] "SP\r"
[SENT] "~#\r"
[SENT] "~#\r"
[SENT] "~#\r"

Could not initialize tablet.

[ERR ] Fatal Error: No Wacom Tablet Found!
_________________________________________________

It's receiving blanks... Also tried starting the daemon with pen moving around the screen/button pressed.

Sorry, Scott, man, wish i could send you a tabletpc for testing but i'm in another country.
...shoggi's source could save some time, though.

Veggieryan,
For now, get the driver/daemon from this thread:
http://forum.insanel...showtopic=41054 (4th post)
and follow instructions from the 3rd post (for inkwell look in 5th post)...

Edited by paringas, 05 March 2007 - 11:46 AM.


#11
Ferret-Simpson

Ferret-Simpson

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 441 posts
  • Gender:Male
  • Location:EXETER
There's something odd for me - Kashoggi's driver works fine, but as soon as TabletMagic (Any version I've tried) starts to query the port, the system locks up.

All I need for the moment is a working pen with presure sensitivity and Kashoggi's driver provides that much. I'm ok for now.

#12
carpao

carpao

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 108 posts
I was one of the two M400 users...
I confirm that it works all also in the rc4 (even better)

I used before the khashoggi daemon, but about sensitivity, there was some problem that in my case tabletplanner solved.
I have a pen wholly functional and it works well with inkwell too...

thanks scott

#13
Ferret-Simpson

Ferret-Simpson

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 441 posts
  • Gender:Male
  • Location:EXETER
After sending the first "*/r" on 19200 baud the system freezes. It's not the system's hardware, it just had a new motherboard and Khashoggi's daemon manages fine. . .

#14
Thinkyhead

Thinkyhead

    Scott Lahteine

  • Members
  • PipPipPip
  • 110 posts
  • Gender:Male
  • Location:Seattle, WA
  • Interests:OSX, iOS, reprap, science!
In the interest of full testing I've posted a special version just for the TabletPC owners to test out. It is a logging version, so it creates a file /Users/Shared/tabletmagic.log with all daemon output. Since on the M275 doesn't reply and the T421X kernel-panics, I've altered this build to simply not send anything to either tablet, but just to start reading at 19200 and see what happens.

Maybe this won't work either, but here it is:

http://thinkyhead.co...c2b8rc5-tpc.dmg

Check the tabletmagic.log file to see if there's any activity at all.

#15
paringas

paringas

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
Well, this one works on my tc4200 and i assume will work on all the others including m400s.
IDs as "ISD V4.0 (TabletPC)"

positives:
1. works
2. less to no lagging in painting/sketching apps.

negatives:
1. very laggy input in the "testing" tab of tabletmagic. it's that laggy that it becomes dotted.
2. calibration is totally out (you can help it a little by playing with mapping, but it's still far from good)
3. tilt data's not working.
4. mapping is sort of irrelevant to tablet pcs(can't get to the very top couple of lines of the screen - couldn't fix with mapping).

for future:
1. mouse mode would be pretty cool to have.
2. would be nice to see "press and hold" functionality of both the tip and the side switch.

#16
Thinkyhead

Thinkyhead

    Scott Lahteine

  • Members
  • PipPipPip
  • 110 posts
  • Gender:Male
  • Location:Seattle, WA
  • Interests:OSX, iOS, reprap, science!
Ryan, I wonder what the Toshiba M7 issue could be. Does the build linked in the previous posting work at all on your system? Does your serial port show up in the Preference Pane? And did you edit the appropriate plist file as paringas describes in this post?
___________________

Paringas, that's some good news. Is this the first version of TabletMagic that has worked on your system? I remember you sent me log files back in the beginning of February when I didn't have a clue.

On the surface it looks like some tablets don't answer "*" and maybe some tablets don't like to be talked to at all. That would be very annoying. But I have a feeling there's some way I could tweak the serial port settings or my initialization code to get it working.

The mapping problem is going to be more tricky to automate, but there may ultimately be a way to query for that information. Further research is definitely needed. Meanwhile, what are the tablet values you set in the Mapping pane to get the nearest match? And what is the resolution of your screen?

The slow drawing in the Testing pane might be caused by the constant logging to a file that this build does, plus all the other items in the window being updated 10 times per second. I think it'll be better once logging is off. I'll have a non-logging version of the pane available soon, and you can compare the performance.

And tilt... well I didn't know tilt was supported. Could you send me your log file? Id like to see if there's any tilt data I can decipher.

I'm anxious to hear from Ferret-Simpson whether it still crashes his system, but I suspect it won't. The fact that the system is kernel panicking makes me think it's got to be a low-level serial issue. There are still some things that I could try to help narrow down the cause.

And well, I did recently change the way the serial ports are scanned and configured when the daemon tries to locate a tablet. The old way was a bit lame, testing each port at one speed, then going back and trying each port at the next speed. Now it works the way it should, trying each serial port at both speeds before going on to the next port. As part of this rewrite, each serial port is only opened once, and it's kept open. So the serial speed is being changed while the port is open, which some kinds of serial hardware may dislike.

On the other hand, maybe the crash and the failure to answer is being caused by my addition of a call to Flush() just before "*" is sent to the tablet. One or two more test versions should be enough to discover some patterns. Or if you'd like to help get this thing working - Paringas and F-S - we could do a few email exchanges at your own pace instead of clogging up the forum.

Edited by Scott Lahteine, 08 March 2007 - 10:13 PM.


#17
psygoo

psygoo

    InsanelyMac Protégé

  • Members
  • Pip
  • 5 posts
Nice job Scott Lahteine.
I wonder if you could make a generic wacom usb driver for Volito and penpartner?
thx

#18
paringas

paringas

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
Adding to the "for the future" comment:

1. I have to press pretty hard to get to 3/4 of max pressure(displayed in testing tab)...
so it would be nice to have some sort of a scaling bar for setting the sensitivity.

2. The ability to set the side switch to middle click or mouse wheel click (that's how i open pages in background tabs and can't live without it).

_________________________________________

Yes it was the first version that "worked" for HP TC4200 (naming for searching purposes).
My resolution is XGA and mapping settings will follow shortly.

#19
carpao

carpao

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 108 posts

2. The ability to set the side switch to middle click or mouse wheel click (that's how i open pages in background tabs and can't live without it).

In my case it suffices to work with the button remapping already present... did you try that?
I set side switch to Button 2 and it works...

#20
paringas

paringas

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts

In my case it suffices to work with the button remapping already present... did you try that?
I set side switch to Button 2 and it works...


Button 2 works as right click
Need Button 3 for middle click

would be nice to find out how to configure osx to display that "scroll cross" on middle click in any app with scroll bars.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   Web hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy