On May 17, 2005, at 4:22 PM, Clark Snowdall wrote:
I'm new to this list ... in fact somewhat new to low level coding
for the Mac. Some time ago I received as a gift a Logitech Digital
IO Pen. It uses Anoto technology to capture writing inside the pen
and later download it to a computer to be stored, printed, OCR'ed
into text, etc. Unfortunately as is usually the case it is only
compatible with Windows. I have used this pen for some time under
VPC. But my general frustration with this process and my desire to
live as MS-free a lifestyle as possible has convinced me to explore
the option of writing my own device driver for this pen and
download the data directly.
This process is complicated by two distinct problems:
1) I am VERY new to this level of programming (having come from the
dot-com world of java enterprise class software). I have done a
little bit of device driver work under VXWorks ... but I'm
completely new to unix kernel level programming.
Greetings,
Just a small comment here. You didn't say, is the pen USB? If so then
you should be able to do most (if not all) of this in user land. By
plugging into the HID (Human Interface Device) system you should be
able to leverage a lot of what the OS already knows. In particular, I
would investigate how USB tablets tie in and try to make what you
come up with similar. This should allow it to work with Apple's Ink
technology and provide (among other things) OCR without you needing
to write any of that code. I'd start here for this <http://
developer.apple.com/devicedrivers/usb/>.
2) I cannot find ANY information with regards to the protocol that
this pen uses. I have been packet sniffing under VPC to get a feel
for what's going on. But so far it's a bit undecipherable (either
because of my lack of experience or the complexity of the tool in
VPC). I will be doing more research into this.
In these situations I try to find software for Linux that works with
the hardware. I don't consider porting Linux kernel code to Darwin/
Mac OS X to be at all practical. They are just too different. But
such code can be a useful pseudo data sheet when the target hardware
is poorly documented. It's also possible that Logitech would part
with the hardware docs, but I'd consider this the least likely path.
And finally, you also might want to poke around on <http://
sourceforge.net/> to see if such a project is already underway (and
if not consider putting yours there). A few interested people could
make all the difference.