Validation of a fast and accurate magnetic tracker operating in the environmental field

We characterize the performance of a system based on a magnetoresistor array. This instrument is developed to map the magnetic field, and to track a dipolar magnetic source in the presence of a static homogeneous field. The position and orientation of the magnetic source with respect to the sensor frame is retrieved together with the orientation of the frame with respect to the environmental field. A nonlinear best-fit procedure is used, and its precision, time performance, and reliability are analyzed. This analysis is performed in view of the practical application for which the system is designed that is an eye-tracking diagnostics and rehabilitative tool for medical purposes, which require high speed ($\ge 100$~Sa/s) and sub-millimetric spatial resolution. A throughout investigation on the results makes it possible to list several observations, suggestions, and hints, which will be useful in the design of similar setups.


INTRODUCTION
Tracking methodologies based on magnetic field measurements have been widely studied in the past decades and find application in several areas, including lowinvasivity medical diagnostics [1,2]. These methodologies are based on the accurate mapping of the magnetic field generated by one or more magnetic sources, and on mathematical analysis aimed to reconstruct geometrical features (position and orientation) of those sources. Tracking apparatuses based on permanentmagnet sources constitute an excellent tool for wireless (and thus minimally invasive) medical applications. The availability of strongly magnetizable materials, such as Neodymium-Iron-Boron alloys, permits the generation of well detectable magnetic signals by very small size devices, with further reduction of the invasivity level.
Compared to other state-of-the-art tracking and/or imaging techniques based on optical detection or ultrasonic measurements, magnetic tracking provides an occlusion-free scheme to estimate the target position and is intrinsically responsive to its orientation. This enables a reliable localization, and accurate trajectory reconstruction, in more than three dimensions. In the simplest case of a dipolar target, five-dimensional information is normally retrieved, consisting in (3D) position and (2D) angular orientation: the system has a blind angular component, which corresponds to rotations around the dipole direction.
The problem of retrieving position and orientation of a magnetic dipole has been successfully faced both on the basis of linear, deterministic methods [3] and non-linear * valerio.biancalana@unisi.it best-fit approaches [4,5], as well as with a combination of the two, where the linear solution is used as an inputguess for the non-linear calculation [6].
At the expense of a heavier computation, the nonlinear best fit approach permits more accurate evaluation, also thanks to the possibility of using larger data sets. Its main drawback is constituted by the need of providing an appropriate initial guess to the numerical algorithm, i.e. on a limited reliability caused by the nonconvexity of the strongly non-linear function to be minimized. The typical working principle of best-fit procedures is based on finding a path in the parameter space, which efficiently brings from an initial, arbitrarily assigned guess to the best fitting parameter set. The latter is identified as the one that minimizes the difference between measured quantities and their theoretical values. The assignment of an appropriate initial guess has a twofold relevance. It helps accelerating the convergence of the algorithm, and -more important-helps preventing that the algorithms converge to local minima, i.e. to wrong solutions. Unfortunately, the mathematical complexity which renders these numerical approaches a favorite choice, makes also difficult to elaborate reliable predictions of the guess appropriateness. Empiric tests are necessary to quantify the robustness of the best-fit procedure with respect to the accuracy level of the initial guess.
The non-linear approach can be easily extended to more complex problems, as in the cases of multi-target tracking [7] or when operating in the presence of a background field, which is the case considered here. The latter feature characterizes the device described in this work, because of two main reasons: firstly it makes possible to operate with small targets in the presence of Earth field without suffering of tracking distortions induced by the latter, secondly it allows the simultaneous tracking of the magnetic target with respect to the sensors and of the sensors with respect to the ambient field. This is of interest in diagnostic measurements focused on the correlation of head and eye motion, which, with instrumentation based on alternative kind of measurements, requires the fusion of data recorded by detectors of different nature [8,9].
Up to date the gold standard for eye-tracking system in medical field is represented by magnetic search coil systems for research purposes and infrared head mounted cameras for clinical use. Typical angular and temporal resolution of the two different techniques are respectively < 0.1 • and > 1000 Hz (magnetic search coil) versus 0.5 • and 100 − 200 Hz (high-speed, head mounted infrared cameras) [10]. The last option is the most widely used in the medical field since it is less expensive, non-invasive and portable. Despite of that, infrared cameras have several drawbacks in terms of eye movement recording: lower spatiotemporal resolution, difficulties in recording vertical and torsional eye movements, difficulties with light eyes, artifacts due to blinks, need the camera to be strongly tightened to the head, need of data fusion to record also head movements, heavy computational burden for image analysis. An overview about speed and angular resolution of low-cost eye trackers developed in the last decade can be found in ref. [11].
The paper is organized as follows: Sec.I provides a brief description of the hardware setup and of its specifications; Sec.II describes the methodology applied to extract tracking information from magnetometric data; Sec.III reports a set of tracking outputs and estimates of tracking accuracy; Sec.IV describes an analysis devoted to quantify the achieved speed under different operation conditions of the numerical algorithm application; Sec.V deepens the analysis of the time performance and studies the relevance of providing an appropriate initial guess to the numerical algorithm. Finally, a synthesis of the achievements and potentialities is provided in the following two sections.

I. SETUP
The hardware of the setup is extensively described in the Ref. [12]. Briefly, eight triaxial magnetoresistive sensor chips (Isentek IST 8308) are mounted on two parallel, rigidly assembled printed circuit boards (PCBs). The chips are driven by a microcontroller, which synchronizes their acquisition and makes possible to memorize their readings (for calibration purpose) or to transmit them in real time to a computer, via USB interface (for data storage and/or online tracking). Beside the three sensors, each chip contains a triple 14 bit, 200 Sa/s analog-to-digital converter and numerical filters for noise reduction. Prior to normal (tracking) operation, calibration data are initially collected in a uniform field and analyzed to define a set of conversion coefficients saved into the computer. These conversion coefficients are used The system is designed for eye-tracking purposes. A 20 mm diameter cylinder is used to emulate eye motion. It hosts the magnetic source (target), which performs either circular or helix trajectories.
during the normal operation to: • Subtract the individual sensor offsets; • Make the responses isotropic; • Refer to a unique co-ordinate system, oriented in accordance with that of a sensor selected as the reference one; that is, in synthesis, to convert the raw readings in accurate and consistent magnetometric data. During the tracking measurements, the resulting homogeneous, calibrated and equalized magnetometric data are numerically analyzed by means of a Levemberg-Marquardt algorithm [13,14] to localize the magnetic source and to determine vectorially the environmental field and the magnetic dipole of the target.
The permanent magnets used in this experiment are disks 2 mm in diameter and 0.5 mm in thickness. Their volume -considering the typical magnetization of Neodymium-Iron-Boron materials (M ≈ 1 T/µ 0 )-gives a magnetic dipole m ≈ 10 −3 Am 2 . Such a dipole produces a magnetic field comparable with the Earth one (≈ 40 µT) at centimetric distances. The tests presented in this work are performed with the magnet attached on the surface of the white cylinder visible in Figure 1. The cylinder rotates around its axis which can be alternatively plain or threaded, as to produce circular or helix trajectories.

II. MODEL AND ALGORITHMS
Each measurement produces 3K (K = 8) magnetometric data corresponding to the three components of the magnetic field detected in the (nominally known) positions r k of the K sensors.

A. Field model
The field measured by the kth sensor when the dipole m is localized in r is modeled as: where r k (k = 0, . . . , K −1) is the position of the kth sensor and B g is the environmental field, which is assumed to be homogeneous over the sensor-array volume.
Despite the highly non linear B k ( r, m) dependence, the inverse problem of determining r and m from a minimal set of B k ( r) measurements performed in known r k positions has been successfully approached, under conditions of negligible B g [3].
However, also in those conditions, a non-linear best fit approach, making use of larger data sets from many sensors, helps reduce noise and imperfection effects, and produce better tracking results at the expense of a heavier computation burden. The latter problem is efficiently circumvented by the currently available computers, and its main drawback actually consists in the risk that bestfit convergence conditions are not fulfilled. Figure 2. The field components are referred to co-ordinates defined within the reference sensor chip S ref (in black), which might be slightly misaligned with respect to the PCB frame (in red). This can lead to inaccuracy in the position of the other chips (S k ). In addition, each chip contains three sensors (represented by colored dots), which are (submillimetrically) displaced with respect to each other.

B. Limits
One of the possible imperfections is related to the limited precision with which the sensor positions are known. Firstly, each chip contains three separate magnetoresistive sensors (represented with dots in the Figure 2) for the measurement of the three field components, and they are not located in one point within the chip. This limit could be (at least partially) mitigated assigning the precise locations; however the relative displacements are sub-millimetric and do not play a substantial role, unless the system to be built is scaled down to sub-centimetric size. Secondly, there could be a misalignment between the co-ordinate axes within the reference sensor (that used to define the field components) and the PCB reference frame (that used to define the positions of the other sensors with respect to the reference one). As schematically shown in Figure 2, an angular misalignment δθ would produce systematic errors L k δθ in the determination of the kth sensor position, L k = | r k − r 0 | being its distance from the reference one. The problem is 3-D and three angular uncertainties concur to determine the sensor position errors. In our implementation the L k are in the cm scale, and δθ might be of the order of one-degree, which leads -again-to submillimetric errors. Additional (but even smaller) uncertainties are related to minor chip translations with respect to their ideal positions on the PCB.
Best-fit procedures (based on data consistency) may help determine the sensor displacements with respect to their nominal positions. We have successfully attempted to face the problem with this approach, obtaining only submillimetric corrections and barely appreciable improvements in terms of tracking accuracy: this activity will not be discussed further in this paper.
Another assumption made to derive eq.1 is the punctual nature of the source, which is indeed modeled as a pure dipole. This assumption is very well justified by the small size of the magnetic source (≤ 1 mm) with respect to the source-sensors distance (> 1 cm): higher order multipole terms contribute to the field in a definitely negligible manner.
When strong magnets are used, the environmental field can be neglected, and in this case its presence is regarded as an external interference which may deteriorate the tracker performance. In contrast, we use of relatively weak magnetic sources, whose size is selected in such a way to make the ambient field and the dipole field on the sensors of comparable intensities. Under this condition, the ambient field is far from being negligible, while it can be well identified by the best-fit procedure. An alternative approach that could be used when a non-negligible ambient field is present, is to detect it with a far-located sensor (on which it is the dipole field that is negligible) and to subtract it to the other measurements prior to the data elaboration. At the expense of an increased number of fit parameters, our approach brings a threefold advantage: it permits a more accurate evaluation of the ambient field (data from all the sensors concur to its determination), it makes the system less affected by ambient field inhomogeneities (the gradiometric baseline is set by the array size), the size of the sensor array is maintained small (it does not contain a far located reference sensor). As already verified (Figure 6 in Ref. [12]), the target tracking results substantially unaffected by B g variations, which demonstrates the feasibility and reliability of this approach.

C. Best-fit degrees-of-freedom
Referring to eq.1, the best fit procedure is in charge of retrieving n p = 9 parameters, and namely the components of the 3D vectors r, B g , m. In principle, being the intensity of B g and m assigned, a reduced fitting parameter set could be used. In our experiments we had the evidence that setting a fixed B g modulus severely worsens the performance (accuracy and reliability), as soon as its real value changes because of sensors displacements. The reason for that is the typical presence of smooth but non-negligible ambient field inhomogeneities caused, e.g. by ferromagnetic materials of buildings and furniture. In contrast, it can be definitely advantageous using a fixed | m|, as to reduce the best fit to determine only the dipole orientation. Provided that m is accurately evaluated, this reduction of n p from 9 down to 8 improves the tracking performance, as discussed below in Sec.III B. Differing from what one could expect, passing from a 9parameter procedure (9P) to an 8-parameter one (8P), does not help reduce the number of iterations or shorten the computation time, as discussed in Sec.IV.
The Levemberg-Marquardt algorithm used for the analyses here presented has a termination condition based on the comparison of a tolerance parameter (T ) with the variation of a mean residual R, which is defined as the root of the mean squared deviation between the estimated and the measured values of the fields. The fitting procedure is terminated and a parameter estimation is output as soon as an iteration produces a relative variation ∆R/R < T . All the results reported in this paper are obtained with T set at 10 −6 . However, we verified that selecting a 100 times tighter condition (T = 10 −8 ) increases the number of necessary iterations by a few units (typically less than 10), both in the 8P and in the 9P case.

D. Scalability
The equation 1 inherently expresses an important scale-law. For a given material remanence, the dipole intensity m scales with the volume of the magnet, i.e. with the third power of the magnet size. For a given spatial positioning (location and orientation) the dipole field scales with a 1/r 3 law, while B g is obviously not dependent on the system size. In conclusion, the same measurement results will be obtained if the whole system is stretched or shrunk by a given scale factor. Of course this scale-law would fail when the shrinking factor would be so large to make the punctual approximation of the sensor size inappropriate, while stretching can result excessive whenever the increase of the array size causes  inhomogeneities play a relevant role (in other terms, the mentioned scale-law would persist only if the distance of ferromagnetic disturbers was stretched as well).

III. TRAJECTORY PERFORMANCE
The precision with which position and trajectories can be retrieved depends on diverse parameters, among which: • accuracy of the calibration and subsequent consistency of the magnetometric data In addition, the condition of single measurement may greatly affect the tracking accuracy, in particular, a crucial role is played by: • intensity of the target dipole | m|; • distance of the target from the sensor array • position and orientation of the target with respect the sensor array (the performance is not isotropic around the array center, and the anisotropy depends also on the dipole orientation) In contrast, the initial guess has no effects on the tracking precision, provided that it is suitably assigned to guarantee correct convergence, that is to let the best-fit procedure get the global minimimum. A target trajectory is reconstructed and sampled as a sequence of tracked points. The trajectories reported in this section are obtained using a default guess (see Tab.I) to determine the first point, and then assigning each tracked point as an initial guess for the subsequent one. The latter detail has relevance for the computation time (see Secs.IV and V), but not for the tracking accuracy and precision. A general and throughout study of the possible scenarios is not feasible, while having in mind a specific use lets reduce the number of possible configurations and makes a focused characterization possible.
Our system is designed for eye-tracking and, considering the size of the "lenses like" frame shown in Figure 1, we are interested in cases where the target is located on a given side of the array (in particular z > z 2 , having set z 1 = 0 for the three-sensor PCM and z 2 = 16.6 mm for the five-sensor one), while (x, y) will not go more than some tens of mm away from the sensor axis. The white cylinder in Figure 1 constitutes a reasonable representation of that region of interest (RoI).
Any quantification of the system performance, will depend on the specific positions/trajectories selected. On the other hand, any estimate performed with the target in the mentioned RoI will be a significant example, such to provide a performance evaluation. In this section, we are reporting a set of such significant examples, providing quantitative or qualitative (graphical) information about the precision achieved.

A. Circle
We present a test performed by imposing a circular trajectory, on a plane nearly parallel to the PCBs.
The Figure 3 shows its xy and zy projections, together with best-fitting curves based on an elliptical model. A 8P tracking is applied, where m = | m| is previously estimated as the mean value on the whole trajectory reconstructed by a 9P one ( m = (995 ± 60) µAm 2 ). The 9P result (not reported) is indistinguishable in the xy projection and worse in the zy one. The latter is a typical behavior, and there is evidence that a less accurate tracking is obtained -particularly with 9P-along the direction perpendicular to the dipole (z in the present case, the dipole being radially oriented). The elliptic fit enables an estimate of the major axis (19.9mm), which matches the cylinder diameter within a 0.1 mm accuracy.
The data analysis that produces these spatial trackings let also determine the dipole components and quantify the uncertainty δθ affecting the angular estimate of the dipole orientation. The measurement and data elaboration performed to this end are as follows. The angle describing the dipole orientation around the rotation axis (which is nearly parallel to z) is estimated as θ = arctan(m y /m x ). After a phase unwrapping procedure, the angles θ n = θ(t n ) are modeled and fitted with a linear function, which correspond to consider a constant angular velocity ω of the magnet driver. The residual of this linear regression provides the mean squared deviation between the estimated (ωt n + θ 0 ) and the measured θ n values of the dipole orientation. This evaluation gives δθ 8P = 0.93 • and δθ 9P = 0.78 • , with the 8P and 9P algorithms, respectively. It is worth mentioning that in the eye tracking application the eye orientation can be retrieved both directly from the orientation of m and indirectly from r, assuming that the magnet is constrained to move on a spherical surface. This redundancy could be used to improve the angular resolution.

B. Helix
A more complex trajectory with 3D reconstruction permits performance evaluations that are qualitative, but -nevertheless-significant. To this aim, we apply 3D trajectories to the target magnet. In this case, the magnet holder is mounted on a screw-axis, with a 1 mm pitch thread. The trajectory has consequently an helix shape, 20 mm in diameter and 1mm in pitch. The sample 3D trackings shown in the Figure 4 represent the reconstructed trajectories obtained on the basis of a 9P and 8P, respectively. Also in this case, the dipole is radially oriented. The 9P produces evident distortions, particularly due to undesired fluctuations of the z co-ordinate. Remarkably, these z distortions occur simultaneously with unexpected variations of the m estimates. This feature is likely due to the imperfections mentioned in the Sec.II B. The 8P greatly helps improve the reconstructed trajectory in this respect.

C. Tuning the 8-parameter fit
The better performance of the 8P comes at the expense of a computationally heavier model formula (it includes several trigonometric functions, which partially compensates the reduction of the parameter space dimensions) and the need of providing the procedure with an accurate estimate of the modulus | m|. To this end, it is possible to start with a 9P evaluation of the mean value of m over a trajectory, and subsequently use that estimate of m for 8P tracking. The Figure 5 shows the effects of providing 8P with wrong estimations of m. We report xy projections of five trackings obtained with correct (9P estimated), overestimated and underestimated m values, respectively: evident trajectory distortions occur, which go rapidly in excess of 1 mm.

IV. TIME PERFORMANCE
The algorithm speed becomes a critical feature whenever a real-time output or large data-sets analysis are required. Assigning an appropriate guess not only plays a role in guaranteeing convergence to the right solution, but helps reduce the convergence time. The Figure 6 provides an example of time-performance estimation as a function of the guess accuracy. The plots represent the algorithm iteration number necessary to track points of a circular trajectory (same data as for Figure 3) sampled in N = 670 points, as a function of the guess accuracy. To this end, for the jth tracking point, we used as starting guess the tracking output j − q (or N + j − q, when q > j), with q ranging from 1 (guess coming from the previous point in the tracking list) to N − 1 (guess from the following point). In other terms, setting q = N/2 corresponds to assign as a guess the diametrically opposite point, that is a 20 mm displaced position and reversed dipole orientation. Using both 8P and 9P, a correct convergence occurs in all the cases, and for both 8P and 9P the average iteration number increases by about 50% in the worst case (q = N/2). 9P requires less iterations than 8P (20-35 instead of 30-55), for comparison, the average iteration number is 48 (for 8P) and 25 (for 9P) when default guesses are assigned. The number of iterations n i is approximately proportional to the computation burden. The number of function calls n c depends on n i according to n c = (n i + 2)(2n p + 1). The number n c is the quantity that, together with the complexity of the model formula, mainly determines the best-fit computing time. The conversion factor from calls to time is machine-dependent. In our case, with an Intel-I7 2.4 GHz CPU we obtain about 14 and 13 µs/call for the 8P and 9P respectively. The consequent time performance is summarized in Tab.II, which (with the exception of the 8P worst cases) shows that both 8P and 9P require less than 10ms/tracking, as to enable a real-time 100 Sa/s acquisition. Further analyses of the convergence speed are provided at the end of next section, after some considerations about the conditions under which a correct convergence is obtained.  Table II. Time performances of 8P and 9P, in the case of nextneighbor guess, in case of diametrically opposite guess and in case of default values assigned programmatically (see Tab-I)

V. GUESS CRITICALITY
In this section we study the criticality of providing an appropriate initial guess to make the algorithm converge to the correct solution and we give some additional information about the convergence speed.
For each given configuration ( r, B g , m) of the target, there exists a volume surrounding that configuration, which corresponds to guesses that will guarantee a correct convergence. Guesses chosen out of that volume will produce wrong solutions. We have verified that the convergence condition is weakly affected by the initial values assigned to B g and m, while the good-convergence volume V G in the subspace of the geometrical x, y, z coordinates presents a large variety of shapes.
Intersecting of the guess volumes with planes parallel  to the co-ordinate planes xy, xz or yz provides a 2D visualization of sections of the convergence volume V G and of its complement V R , corresponding to the spatial guesses that lead to wrong convergence. The figures here presented are 2D maps obtained using 9P to identify the mentioned sections: two spatial parameters of the initial guess are varied while the remaining 7 are kept at fixed values. The good-guess regions V G are represented in green and the bad-guess regions V R are represented in red. A color scale is used to represent the iteration numbers: bright colors denote fast convergence and dark colors denote slow convergence (the iteration Figure 6. Average iteration number as a function of the guess accuracy for the 8P (blue) and 9P (red) cases. The cases with q=1 and q=670 correspond to using one of the nearest neighbors as an initial guess, while q=335 corresponds to using diametrically opposite points.
numbers and the corresponding color scales are reported in the bottom rules of each map). The target position is represented by a white dot, and the sensors are represented in colors: blue dots for the three on the z = 0 PCB and orange dots for the five ones on the z = 16.6 mm PCB. All the maps refer to 300 mm × 300 mm areas on the intersecting planes, such to be significantly larger than the RoI for the eye-tracking application. The table III reports the co-ordinates of the sensors and of two analyzed positions of the target, both selected in our RoI, the first one in the vicinity of the sensor array axis and the second one in a more peripheral location.
The Figure 7 represents convergence maps obtained The target (white dot) is in a nearly axial position, at z = 31 mm. Unexpectedly, using wrong guesses for Bg and m and wrong (larger) z makes the (x, y) convergence area larger than using exact values. All these maps describe a 300 mm×300 mm area, the yellow circle in (c) corresponds to a sphere (26 mm in diameter) that is the typical size of human eye bulb. when the dipole is located in r c , i.e. proximally to the sensor axis. The four maps correspond to xy and xz sections, obtained when assigning the fixed 7 parameters with their correct values or with default values (details provided in the caption). The sections of V G are quite regular and symmetric. There is a convex volume, out of which the convergence is wrong and fast, and inside of which the V G part leads to homogeneously fast convergence, while the V R contains guesses that lead to slow convergence (to a wrong solution). The Figure 8 represents convergence maps obtained when the dipole is located more peripherally, in r p . Again xy and xz sections are shown. They are obtained by assigning the fixed 7 parameters either their correct values or default guesses (details provided in the caption). Now, the shapes have more variegated aspects; however, also in this case, guesses with nearly axial (x, y) coordinates lead systematically to good convergence, provided that z is assigned in the correct interval, above z 2 and not too far from the sensors.
A hint for an appropriate selection of z, is suggested by the maps represented in Figure 9. This figure represents a xy convergence maps obtained when the dipole is located peripherally (the same as for Figure 8), the B g and m guesses are assigned their default values, while z co-ordinate is varied (details provided in the caption). As Figs.7 c-d and 8 c-d suggest, excessive z values may lead to bad convergence, however intermediate values (e.g. z=60 mm to 80 mm) produce -with a larger number of iterations-a wider convergence area in the xy section. In contrast, wrong z (Figure 9-a) and small z (Figure 9-b) may reduce dramatically the convergence region.
Despite the complexity of the possible scenarios (intensity and orientation of the dipole and of the environmental field, accessible dipole positions with respect to the sensors, etc.) some general hints can be derived from the analysis of results shown in this section and in Sec.III, IV, which can be summarized as follows: • the initial guess of m is not critical (just assign reasonable values); • the initial guess of B g is not critical (just assign reasonable values); • the initial guess of r is critical, but whenever it is known that the target is on one side of the array (a given sign of z), and is not too displaced from the array axis, an axial guess for (x, y) together with a reasonable guess for z will work; • the larger is the z guess, the less critical is the (x, y) choice, but large values make the convergence slower, and too large values will prevent convergence; • in case of correct guess, the iteration number depends weakly of the termination conditions and on the selected guess; • good guesses bring to convergence within few tens of iterations; • bad guesses with too large |r| bring to (wrong) convergence within a few iteration steps; • some wrong guesses with more reasonable |r| bring to (wrong) convergence quite slowly, with many iteration steps (setting a limited number of iteration steps will help avoid wasting time with useless calculations); • wrong convergence is easily detected, because the (local) minimum found is orders of magnitude larger than the absolute one; • in case of a wrong convergence detected, trying other initial guesses having different r will help; • in the considered application of eye-tracking, the limited RoI size makes a certainly-good guess possible; • the accuracy in reconstructing trajectories is generally good, but the best performance is obtained when the target moves on a surface nearly parallel to m: in eye-tracking application, a radial orientation of m will be a favorite choice.

VI. CONCLUSION
We have tested a new concept of an eye-motion tracker based upon a 8-sensor magnetic tracker and a small magnet. The performance in terms of accuracy, precision and speed has been analyzed, under different operating conditions. In particular, we have empirically studied the criticality (in terms of correctness and speed of the convergence) of assigning an appropriate starting guess to the numerical algorithm that infers the tracking parameters from the magnetometric measurements. The feasibility of a reliable sub-millimetric, 100Sa/s real-time tracking within a volume large enough to contain the RoI of eye-tracking experiments has been demonstrated.  Figure 7, at z = 31mm. It is confirmed that using wrong guesses for Bg and m and wrong (larger) z makes the (x, y) convergence area larger than using the exact values.
The new technique described for eye movements recording seems have the possibility to reach a spatial and temporal resolution close to the magnetic search coils system in a portable and inexpensive device. Furthermore, the system will have the ability to record also head movements and 3D eye movements without a bulky and strongly tightened head mask. The major limit of the presented device may be associated with the comfort of wearing a contact lens with a millimetric magnet embedded. Eye movement recording and tracking has many important medical applications in diagnosis of neurological and vestibular disorders as well as in improving commu-nication in severe neurological disorders. This highlights the importance of developing a tracking instrumentation that is reliable, inexpensive, fast and accurate.

PATENTS
The accuracy and speed analyses at the focus of this work constitute a performance assessment of the hardware described in Ref. [12]. A patent [15] is pending about inventions related to this research.