JSn1™ Posted April 13, 2007 Share Posted April 13, 2007 No news for the FinePoint tablet??? Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 13, 2007 Share Posted April 13, 2007 Not yet. Follow the instructions I gave in your other thread (in ../) to find the Serial Port ioname Also, you really need to do two things: TO enable wifi, spend $20 to $30 on a supported Mini PCI(-E) Atheros or Broadcom wifi card - Your intel chipset will almost certainly never be supported and it is easier to just replace it. Second, since your Mac works, Update it to 10.4.9! No point in lagging behind when 10.4.9 is so full of Stability, Security and productivity fixes! Link to comment Share on other sites More sharing options...
Dainix Posted April 13, 2007 Share Posted April 13, 2007 I was able to get TabletMagic to identify that my Finepoint tablet existed, but it doesn't work. Replacing the PNP number with FPI2004 did the trick for finding it. If you need a tester on Finepoint tablets, I can do so. This is the ioreg log: | | +-o Apple16X50ACPI0 <class com_apple_driver_16X50ACPI, !registered, !m$ | | | { | | | "CFBundleIdentifier" = "com.apple.driver.Apple16X50ACPI" | | | "IOClass" = "com_apple_driver_16X50ACPI" | | | "IONameMatched" = "FPI2004" | | | "IOTTYBaseName" = "serial" | | | "IOKitDebug" = 0x0 | | | "IOProbeScore" = 0x0 | | | "IOMatchCategory" = "IODefaultMatchCategory" | | | "IONameMatch" = "FPI2004" | | | "Location" = "ACPI Device=COMA" | | | "IOProviderClass" = "IOACPIPlatformDevice" | | | } | | | | | +-o Apple16X50UARTSync0 <class com_apple_driver_16X50UARTSync, regis$ | | | { | | | "Product Name" = "Built-in Serial Port (0)" | | | "UART Type" = "16550AF/C/CF FIFO=16 MaxBaud=115200" | | | "IOTTYBaseName" = "serial" | | | "CFBundleIdentifier" = "com.apple.driver.Apple16X50ACPI" | | | "IOTTYSuffix" = "0" | | | "Location" = "ACPI Device=COMA Base=0x6a8" | | | } | | | | | +-o IOSerialBSDClient <class IOSerialBSDClient, registered, matche$ | | { | | "IOTTYSuffix" = "0" | | "CFBundleIdentifier" = "com.apple.iokit.IOSerialFamily" | | "IOClass" = "IOSerialBSDClient" | | "Product Name" = "Built-in Serial Port (0)" | | "IOTTYBaseName" = "serial" | | "IOSerialBSDClientType" = "IORS232SerialStream" | | "IOProbeScore" = 0x3e8 | | "IOResourceMatch" = "IOBSD" | | "IOMatchCategory" = "IODefaultMatchCategory" | | "IOTTYDevice" = "serial0" | | "IOCalloutDevice" = "/dev/cu.serial0" | | "IODialinDevice" = "/dev/tty.serial0" | | "IOProviderClass" = "IOSerialStreamSync" | | } This is what appears in the console log for TabletMagic: TabletMagicDaemon v2.0b9 (c) 2007 Thinkyhead Software <www.thinkyhead.com> [INIT] renice -20 338 : Succeeded [INIT] Machine Type: ADP2,1 (Hackintosh?) [PROC] Tablet Bounds: (0, 0) - (24568, 18428) [PROC] Screen Bounds: (0, 0) - (1023, 767) [PORT] serial0: OPENED [PORT] Setting speed to 19200 [PROC] "~#ISD V4" [INFO] ISD V4.00 (TabletPC) [INIT] TabletPC Detected Tablet Settings (imposed): command set ..... Tablet PC output format ... BINARY terminator ...... CRLF packet size ..... 9 baud rate ....... 19200 data bits ....... 8 parity .......... N stop bits ....... 1 cts ............. OFF dsr ............. OFF transfer mode ... suppressed coord sys ....... ABS transfer rate ... 200 resolution ...... 1270 lpi origin .......... UL oor data ........ OFF pnp ............. ON sensitivity ..... firm read height ..... 8mm+ mdm ............. OFF tilt ............ ON mm command set .. MM1201 orientation ..... landscape cursor data ..... 1234 remote mode ..... OFF increment ....... 2 interval ........ 2 xrez ............ 1270 yrez ............ 1270 tablet width .... 24570 tablet height ... 18430 Tablet initialized. 2007-04-13 11:08:10.883 System Preferences[335] Received [hello] 2007-04-13 11:08:10.883 System Preferences[335] Received [port] serial0 2007-04-13 11:08:11.092 System Preferences[335] Received [ready] 2007-04-13 11:08:11.092 System Preferences[335] Received [model] ISD V4.0 (TabletPC) 2007-04-13 11:08:11.094 System Preferences[335] Received [info] 0 7200C910,002,02,1270,1270 active 2007-04-13 11:08:11.130 System Preferences[335] Received [geom] 0 0 24568 18428 : 0 0 1023 767 : 1 1 2 6 : 0 1.0000 2007-04-13 11:08:11.140 System Preferences[335] Received [scale] 24570 18430 Everything seems to initialize correctly, but the screen still doesn't respond. Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 15, 2007 Share Posted April 15, 2007 TabletMagic identifies the TabletPC by the fact that it isn't a mac, not by deducing anything about it. It's a better idea to do it this way anyway. And it won't work, because it doesn't understand the finepoint protocol. Good to know you're a free tester though. Link to comment Share on other sites More sharing options...
Dainix Posted April 18, 2007 Share Posted April 18, 2007 Would skimming through the fpit source code give us a better idea as to how it works? If only OSX could take in X Window Server config files...This wouldn't be such a hassle. Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 19, 2007 Share Posted April 19, 2007 But it would also need the X windows driver. So then it would have to be using X windows. Which would suck. VAV the TC1100, the Fujitsu isn't autodetected on linux, either. DO the plst hack, and see what happens. If it's not a 16X50, tough luck for now. Link to comment Share on other sites More sharing options...
Dainix Posted April 20, 2007 Share Posted April 20, 2007 But it would also need the X windows driver. So then it would have to be using X windows. Yeah, I don't think everyone would want X and Aqua running side by side just to get a tablet driver to work. Some would, like myself. VAV the TC1100, the Fujitsu isn't autodetected on linux, either. DO the plst hack, and see what happens. If it's not a 16X50, tough luck for now. I'll see what I can do. Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 21, 2007 Share Posted April 21, 2007 Well, you wouldn't be running it side by side, you'd replaceAqua with AIGLX or omething similar. And AIGLXis nota very reliable piece of software, so the number of peopl who could successfully get a working hackintosh would be very small. Which would suck. Sorry, my last reply was a bit irritable. But that 12 year old with the USB dongle he refuses to consider replacing was pissing me off. Again, my apologies. Link to comment Share on other sites More sharing options...
Dainix Posted April 22, 2007 Share Posted April 22, 2007 Sorry, my last reply was a bit irritable. But that 12 year old with the USB dongle he refuses to consider replacing was pissing me off. Again, my apologies. That's fine. Doesn't bother me. Looking in the fpit source code, /dev/ttyS3 is used (in which the current device being used is /dev/tty), along with IRQ 15. Not sure if this would associate with anything that OSX does or if these values can be changed manually within the system. If only I could actually design a kernel extension... Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 22, 2007 Share Posted April 22, 2007 No this has NOTHING to do with the problem. Nice try though. The issue here is not detecting the serial port - that has already been done. Without an OS X finepoint driver, even X11 would be useless. The missing link here is the PROTOCOL. If there is source code for the X11 finepoint driver, maybe sending a copy to Scott would be good? If not, it's a case of figuring it out the old fashioned way. Link to comment Share on other sites More sharing options...
Dainix Posted April 22, 2007 Share Posted April 22, 2007 Anything related to the protocol, from what I've briefly examined, are two variable declarations, which is defining the packet size and buffer size. #define FPIT_LINK_SPEED B19200 /* 19200 Baud */ #define FPIT_PORT "/dev/ttyS3" #define FPIT_MAX_X 4100 #define FPIT_MIN_X 0 #define FPIT_MAX_Y 4100 #define FPIT_MIN_Y 0 #define PHASING_BIT 0x80 #define PROXIMITY_BIT 0x20 /* DMC: This was 0x40 but the chart says its bit 5 which is 0x20 */ /*#define TABID_BIT 0x20 */ #define XSIGN_BIT 0x10 #define YSIGN_BIT 0x08 #define BUTTON_BITS 0x07 #define COORD_BITS 0x7f /* DMC: Added these */ #define SW1 0x01 #define SW2 0x02 #define SW3 0x04 /* *************************************************************************** * * Protocol constants. * *************************************************************************** */ #define FPIT_PACKET_SIZE 5 #define BUFFER_SIZE (FPIT_PACKET_SIZE*20) I'm probably looking at the wrong things, so I uploaded the fpit source for you guys to examine. xf86_input_fpit_X11R7.1_1.1.0.tar.gz Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 23, 2007 Share Posted April 23, 2007 *grins* A positive step inthe right direction. I'll have a poke too, just out of curiosity. I learn something new about coding every time I se a new bit of source. Link to comment Share on other sites More sharing options...
Dainix Posted April 23, 2007 Share Posted April 23, 2007 I looked through some of the header files in a default XCode project for kernel extensions, and I found "IOHIPointing.h" in the midst of things. virtual void dispatchAbsolutePointerEvent(Point * newLoc, Bounds * bounds, UInt32 buttonState, bool proximity, int pressure, int pressureMin, int pressureMax, int stylusAngle, AbsoluteTime ts); This is only a snippet of code from it. I'll look into the fpit source code some more and compare a few things. Perhaps making a kext will be easier than I thought. If you can get the extension to communicate with the serial port the 16X50 extension creates, it'd be easy as hell to port over the commands from fpit. Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 23, 2007 Share Posted April 23, 2007 The last thing you want to do is create another kernel extension. Homebrew kexts are for the most part unreliable at best. Get the tabletmagic source code - That's where you want to add a finepoint driver. Link to comment Share on other sites More sharing options...
Dainix Posted April 24, 2007 Share Posted April 24, 2007 The last thing you want to do is create another kernel extension. Homebrew kexts are for the most part unreliable at best. Get the tabletmagic source code - That's where you want to add a finepoint driver. The reliability of an extension, of course, depends on the programmer, but I see your point. I'll check the tabletmagic source. Probably a better idea to see how it functions and works with Wacom tablets. Should be some similarities. Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted April 24, 2007 Share Posted April 24, 2007 One can hope! I've discovered what I think is another laptop with the odd PCI bus problems, won't know for sure till I hook the guy up with xcode and prod his Registry Explorer. Damn PCI driver. Link to comment Share on other sites More sharing options...
Dainix Posted April 26, 2007 Share Posted April 26, 2007 What exactly do I need to download from the CVS for TabletMagic if I want to compile this myself? Also, do you happen to know where I could find that TabletPC only version that was posted a few pages ago? That link is dead. Link to comment Share on other sites More sharing options...
Dainix Posted April 27, 2007 Share Posted April 27, 2007 Double Post time. I searched the old Tablet PC driver thread that supplied the Khashoggi driver, and found the 7th beta of TabletMagic that included a logging feature. Downloading and running that, my configuration came out differently. Instead of 19200bps, it was 9600bps. Either way, it identified my tablet. [INFO] SD-Fallback (SD Series) Version 1.20 [INIT] SD-Series Detected Tablet Settings (imposed): command set ..... WACOM II-S packet size ..... 7 baud rate ....... 9600 parity .......... N data bits ....... 8 stop bits ....... 1 cts ............. OFF dsr ............. OFF transfer mode ... point output format ... ASCII coord sys ....... ABS transfer rate ... MAX resolution ...... 1270 lpi origin .......... UL oor data ........ OFF terminator ...... CRLF pnp ............. OFF sensitivity ..... firm read height ..... 8mm+ mdm ............. OFF tilt ............ OFF mm command set .. MM1201 orientation ..... landscape cursor data ..... 1234 remote mode ..... OFF increment ....... 0 interval ........ 0 xrez ............ 1270 yrez ............ 1270 tablet width .... 15240 tablet height ... 15240 [SENT] "SC15240,15240\r" [SENT] "ST\r" [PROC] Tablet Bounds: (0, 1906) - (15239, 13332) [PROC] Screen Bounds: (0, 0) - (1023, 767) Tablet initialized. [NICE] PRI=-20 PID=430 : Succeeded 70 E0 >R (p) 70 E0 70 C4 70 FC E0 4F E0 4F C4 4F F0 C4 70 E0 70 E0 89 70 C4 70 E0 88 70 FC E0 70 C4 88 70 C4 89 78 E0 70 E2 E0 C4 C4 E0 C4 E0 78 F0 E0 FC E2 C4 E0 E0 E0 E0 E0 E0 C4 E0 E0 E0 E0 F8 E0 E0 E0 E0 F0 C4 E0 E0 E2 E0 E0 FC E0 E0 C4 E0 E0 E0 F1 E0 E0 E0 E2 E0 E0 E0 E0 C4 E0 E0 E0 E0 C4 E0 E0 FF 88 E2 C4 F0 F8 4B E0 47 E2 F0 47 E0 47 E0 E2 47 C4 CC E2 47 FC 43 C4 47 FC 43 35 E2 E2 43 FC 43 E2 43 75 E2 47 E2 C8 E2 43 E2 E0 E0 E0 C4 C4 88 C4 E0 88 C4 E0 FC FC FC FC E0 FC E0 E0 E0 E0 E0 E0 E0 E0 E0 C4 C4 E0 E0 E0 88 E2 F0 FC 43 F0 47 C4 89 E0 4B C4 4F C4 4F E2 47 C4 4B C4 83 C4 87 E2 8B C4 83 C4 F0 E0 87 F0 54 E2 83 54 E2 87 E2 8B E2 87 C4 E0 C8 E0 E0 E0 FC FC E0 E0 E0 F8 E0 E0 C0 C0 C0 C0 E0 C0 E0 C0 E0 C0 88 88 88 E0 88 88 88 E0 C0 C0 FC 19 E0 C0 FC E0 E0 C0 C0 E0 C4 F0 C4 88 E0 F1 C0 F0 C0 C0 C0 88 E0 0A E0 0A E0 C0 E0 88 C0 C0 C0 C4 E0 C0 88 C0 88 88 E0 C4 E0 E0 E0 E0 E0 C4 F0 E0 F0 E0 E0 E0 E0 E0 FE E0 E0 C4 E0 FE FE E0 E0 E0 C4 E0 FE FE E0 E0 E0 F0 E0 E0 E0 E0 FE FE E0 FE E0 E0 E0 E0 E2 E0 E0 E0 E0 C4 E0 85 E0 85 E0 85 E0 45 E0 85 E0 C5 C4 45 E2 19 E2 79 E2 59 E2 79 E2 79 E2 19 E2 19 E2 19 E2 39 E2 39 E2 19 E2 79 E2 45 E2 05 E2 45 E2 E0 45 E0 AA FE E0 C4 E0 E0 E0 E0 E0 F8 E0 E0 C4 C4 E0 E0 E0 F8 E0 E0 C4 F8 F8 E0 F8 F8 F8 E0 E0 C4 C4 C4 E0 E0 E0 C4 F8 E0 E0 C0 F8 F8 4F E0 80 E0 C0 C4 00 E2 40 E2 E0 00 E2 F1 F1 F1 C1 E2 C1 E2 F0 C0 E2 F0 F0 F0 F0 E2 F0 F0 40 E2 00 E2 C0 E0 00 E0 AA E0 E0 E0 C4 C4 E0 F1 E0 E0 E0 E0 E0 E0 E0 E0 C4 E0 C4 E2 C4 C4 C0 88 C0 E0 E0 88 E0 The hex values on the bottom are sent from the tablet itself, so the connection is fine. Like you said before, the protocol for a Finepoint tablet needs to be deciphered. If only Windows had software that could log like this... I know that the fpit drivers declares that stop bits equals 0, while TabletMagic has only 1 & 2. Link to comment Share on other sites More sharing options...
Da Pupster Posted May 3, 2007 Share Posted May 3, 2007 ummm...basic question, but after i get the driver and tabletmagic installed, what's supposed to happen? should i just be able to move my pointer around by using the pen? cuz...nothing's happening and i have both installed...and it says that it sees an ISD V4.0 (TabletPC) tablet... Link to comment Share on other sites More sharing options...
Da Pupster Posted May 4, 2007 Share Posted May 4, 2007 blah...i uninstalled khaggi's daemon and kept the plist edited to WACF008... also have the latest build of tabletmagic installed here's what IOreg -kx gives: | +-o DTR <class IOACPIPlatformDevice, registered, matched, active, busy 0$ | | | { | | | "Power Management protected data" = "{ theNumberOfPowerStates = 3, $ | | | "IODeviceMemory" = (({"address"=0x200,"length"=0x8})) | | | "IOInterruptControllers" = ("io-apic-0") | | | "acpi-dstate-mask" = 0x9 | | | "Power Management private data" = "{ this object = 02fa9580, intere$ | | | "IOInterruptSpecifiers" = (<0500000000000000>) | | | "_STA" = 0xf | | | "name" = <"WACF008"> | | | "acpi-dstate" = 0x0 | | | } | | | | | +-o Apple16X50ACPI0 <class com_apple_driver_16X50ACPI, !registered, !m$ | | | { | | | "CFBundleIdentifier" = "com.apple.driver.Apple16X50ACPI" | | | "IOClass" = "com_apple_driver_16X50ACPI" | | | "IONameMatched" = "WACF008" | | | "IOTTYBaseName" = "serial" | | | "IOKitDebug" = 0x0 | | | "IOProbeScore" = 0x0 | | | "IOMatchCategory" = "IODefaultMatchCategory" | | | "IONameMatch" = "WACF008" | | | "Location" = "ACPI Device=DTR" | | | "IOProviderClass" = "IOACPIPlatformDevice" | | | } | | | | | +-o Apple16X50UARTSync0 <class com_apple_driver_16X50UARTSync, regis$ | | | { | | | "Product Name" = "Built-in Serial Port (0)" | | | "UART Type" = "16550AF/C/CF FIFO=16 MaxBaud=115200" | | | "Power Management protected data" = "{ theNumberOfPowerStates =$ | | | "Power Management private data" = "{ this object = 0303da00, in$ | | | "IOTTYBaseName" = "serial" | | | "CFBundleIdentifier" = "com.apple.driver.Apple16X50ACPI" | | | "IOTTYSuffix" = "0" | | | "Location" = "ACPI Device=DTR Base=0x200" | | | } | | | | | +-o IOSerialBSDClient <class IOSerialBSDClient, registered, matche$ | | { | | "IOTTYSuffix" = "0" | | "CFBundleIdentifier" = "com.apple.iokit.IOSerialFamily" | | "IOClass" = "IOSerialBSDClient" | | "Product Name" = "Built-in Serial Port (0)" | | "IOTTYBaseName" = "serial" | | "IOSerialBSDClientType" = "IORS232SerialStream" | | "IOProbeScore" = 0x3e8 | | "IOResourceMatch" = "IOBSD" | | "IOMatchCategory" = "IODefaultMatchCategory" | | "IOTTYDevice" = "serial0" | | "IOCalloutDevice" = "/dev/cu.serial0" | | "IODialinDevice" = "/dev/tty.serial0" | | "IOProviderClass" = "IOSerialStreamSync" | | } When I run the command to run the daemon manually (i.e. sudo /Library/PreferencePanes/TabletMagic.prefPane/Contents/Resources/TabletMagicDaemon -d), I get this: [iNIT] Machine Type: ADP2,1 (Hackintosh?) [PROC] Tablet Bounds: (0, 0) - (15239, 15239) [PROC] Screen Bounds: (0, 0) - (1023, 767) [PORT] serial0: OPENED [PORT] Setting speed to 19200 [sENT] "0" [sENT] "*" [RCVD] [PORT] Setting speed to 9600 [sENT] "0" [sENT] "*" [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" [PORT] Bluetooth-PDA-Sync: OPENED [PORT] Setting speed to 19200 [sENT] "0" [sENT] "*" [RCVD] [PORT] Setting speed to 9600 [sENT] "0" [sENT] "*" [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" Error opening serial port /dev/cu.Bluetooth-Modem - Resource busy(16). [PORT] Bluetooth-Modem: OPEN ERROR Could not initialize tablet. [ERR ] Fatal Error: No Wacom Tablet Found! Anyone know what this all means in layman's terms? Link to comment Share on other sites More sharing options...
Dainix Posted May 4, 2007 Share Posted May 4, 2007 ioreg gave you information about the port you're using. The daemon is trying to send a command to your tablet through the serial port. It's not receiving a signal back, so it can't find your tablet. What exactly are you using? Link to comment Share on other sites More sharing options...
Ferret-Simpson Posted May 4, 2007 Share Posted May 4, 2007 With Khashoggi uninstalled, use the PREFERENCE PANE (It's what it wasdesigned for) to select the serial port manually, and tell it not to query the tablet. Link to comment Share on other sites More sharing options...
Da Pupster Posted May 4, 2007 Share Posted May 4, 2007 ioreg gave you information about the port you're using. The daemon is trying to send a command to your tablet through the serial port. It's not receiving a signal back, so it can't find your tablet. What exactly are you using? I'm using a Lenovo X60 Tablet... Link to comment Share on other sites More sharing options...
Thinkyhead Posted May 5, 2007 Author Share Posted May 5, 2007 I was able to get TabletMagic to identify that my Finepoint tablet existed, but it doesn't work. Replacing the PNP number with FPI2004 did the trick for finding it. If you need a tester on Finepoint tablets, I can do so. Hi, good going! It's true - as FS posted - that TabletMagic doesn't try to talk to TabletPC digitizers (by default) so if you selected the serial port of your Finepoint digitizer when you started the driver the only thing that's happened so far is that the serial port has been opened and communication has been established. It looks like Finepoints may communicate at 9600 baud, so I'll have to add some override options for TabletPCs, which currently assume 19200. I'll try to find out more about the Finepoint protocol, and when I have something to test I'll post it here. I'm using a Lenovo X60 Tablet... In the Preference Pane try turning on "Don't Query" in the Extras tab, then kill and restart the daemon. Link to comment Share on other sites More sharing options...
Dainix Posted May 7, 2007 Share Posted May 7, 2007 It looks like Finepoints may communicate at 9600 baud, so I'll have to add some override options for TabletPCs, which currently assume 19200. I'll try to find out more about the Finepoint protocol, and when I have something to test I'll post it here. Indeed it does, I was able to get some information previously posted from the tablet at 9600 baud. If anything, you could look at the fpit source. It looked like some variables that were declared could be deemed important. Perhaps you could have the ability to manually select the protocol to use? Since I was able to get some information from the old version of Tablet Magic (before the TabletPC support) where the options were different, that could help. Could be risky, but even so, it gives the user the capability to select the precise parameters that their tablet follows in order for it to work. Link to comment Share on other sites More sharing options...
Recommended Posts