[Openicc] measurement device API

Graeme Gill graeme at argyllcms.com
Fri Mar 16 05:29:03 PDT 2007


Gerard Klaver wrote:
> I bought recently a Colorvision Spyder2express, some win tests done, 
> Yan Ke ( http://www.yan-ke.com/spyder/ )  is working on a driver.

I have my doubts that it's possible to make reasonable progress
with this sort of thing, just by looking at the USB packets. It
might be possible if one had at least an idea of the nature
of the processing, but it can be wide ranging, often involving
such things as programming an integration time that depends
on the level detected, changing gain settings, etc. To make
reasonable progress with some surety of success, one really
needs to trace the existing driver to figure the maths out. Depending
on the nature of the local laws, licences agreements and validity
of licence agreements, this may not be permitted in some parts of
the world.

Most devices store their calibration on the device, and the driver
has to read it and then process the raw readings into calibrated
readings. For instance, from the USB dumps on the above web site,
it's probable that data like:

000049: Control Transfer (UP), 06.12.2006 22:19:02.396 +0.040
Pipe Handle: 0x815d9170

  00 00 00 00 00 00 00 00 3C 1F 83 CB 3C 97 64 58   ........<.?E<?dX
  BD 30 AB 95 BB AB 4E 1B 3D D5 A9 15 BC C1 5E 0B   ½0«?»«N.=Oc.¼A^.
  BD 0F CF F3                                       ½.Ió

from the instrument, is the passing back IEEE floating point values
used in calibration or similar:

3c1f83cb -> 9.73601173609495160e-003
3c976458 -> 1.84804648160934450e-002
bd30ab95 -> -4.31323833763599400e-002
bbab4e1b -> -5.22781675681471820e-003
3dd5a915 -> 1.04326404631137850e-001
bcc15e0b -> -2.36044134944677350e-002
bd0fcff3 -> -3.51104252040386200e-002

Graeme Gill.


More information about the openicc mailing list