Supporting other eye-trackers

57 views
Skip to first unread message

Gary Feng

unread,
Dec 4, 2010, 12:54:00 AM12/4/10
to text20
We have an eyelink in addition to Tobii and would like to get both
going on PEEP. Looks like the eye-tracker class is abstract enough to
cover other trackers. Does that mean we need to implement another
trackerserver for the eyelink? I have in the past written a little
server that talks to different eye trackers on the one hand and
presents a consistent API via some TCP port on the other. Is that what
the trackserver is doing?

thanks,

-- gary

Ralf

unread,
Dec 4, 2010, 5:14:16 AM12/4/10
to text20
In principle, yes, the tracking server collects eye-tracking and EEG-
data and sends it over the network. However, I would not suggest
implementing a new tracking server. The current architecture (and
tracking server) is very extensible and supports some very useful
features like network auto-detection.

Adding new device adapters should, in theory, be easy.

Setup:
0) (Optional) Get Eclipse and MercurialEclipse (http://
cbes.javaforge.com/update)
1) Get the tracking server's source (see my reply to the 'mac
support?' mail)

Development:
2) Have a look into the package
'de.dfki.km.text20.trackingserver.eyes.adapter.impl'. You will find
three adapters.
3) Create your own sub-package (e.g., 'mydevice')
4) Copy the DummyGazeAdapter into your package (e.g.,
MyDeviceAdapter.java)
5) Change the string 'gazeadapter:dummy' to 'gazeadapter:mydevice'.
This is how you will find your device later on.
6) Make your adapter fill a structure TrackingEvent (see start()) upon
a call to start() and pass it to the event queue passed on setup.
7) (Optional, recommended) Make your device stop filling on stop().
8) (Optional, recommended) Fill the TrackingDeviceInformation
structure.
9) (Optional, recommended) Act properly on adapterCommand(), see the
Tobii adapter for details.

Running / Testing:
10) In the file 'config.properties', set the
value ...TrackingServerRegistryImpl.adapter.id=gazeadapter:mydevice
(to same value as 5)
11) Start the tracking server (run Launcher.java).
12) Don't forget to add some debug output to see what you fill into
the queue mentioned in 6).
13) Start your PEEP / Browser-Plugin application and make sure only
your tracking server is running. It should use the output you
generate.

If you see 12) working but 13) does not work, it is likely our
fault ;-)

Also see the other tracking adapters for details.

Kind regards
Ralf

P.S. I will be on vacation for the next two weeks (that is, if the
Spanish ATCs go back to work ...), so I won't read any mails.

Ian Jeremy

unread,
Dec 11, 2014, 2:20:09 AM12/11/14
to tex...@googlegroups.com, r.bi...@googlemail.com
In principal, Will this then work with the eyetribe eye tracker too?
Thanks (and apologies for silly questions)
Regards,
Ian
Reply all
Reply to author
Forward
0 new messages