Erik Hovland <erik@hovland.org> writes:
> No idea what the driver provides.
The driver basically gives you raw fingerprint frames comming of the
scanner. These frames are overlapping fragments of the
fingerprint. Frames are 280x8 pixels, and each pixel is 4 bits. The
scanner lays out each frame as consecutive columns (each column is 32
bit). To receive frames simply read from /dev/misc/fsi. The driver
will block you until a finger is swiped, and then give you frames
until your buffer is full or the finger is removed, whichever comes
first. Each frame takes 1124 bytes (280*4 + 4 bits of sync etc).
A very crude (as of yet) client library can be found at
http://heim.ifi.uio.no/~jorgenam/h5400/fsi-client-20040202.tar.gz
It does a very poor job at assembling frames into fingerprints¹ but
it should atleast suffice as an example for anyone interested.
¹ The client should add up the frames instead of cutting out pieces,
to get better SNR; I have started to work on this.
As for using the fingerprint scanner as a mouse, that should be
possible in theory (e.g. looking at two consecutive frames and
computing a motion vector between them). However, I'm not sure if this
will be practical in terms of performance. (Atleast a new interface to
the driver should be added, perhaps like the model in v4l.)
BTW, I have noticed a slight issue with the driver where it blanks the
screen (backlight stays on) when reading. Happens on newer kernels,
never happened before. My guess is the driver touches a bit it should
have left alone.
-- JørgenReceived on Fri Jul 23 05:14:40 2004
This archive was generated by hypermail 2.1.8 : Fri Jul 23 2004 - 05:15:10 EDT