*3.1. Methodology*

The system's performance was evaluated on a bi-axial test rig. Two linear drives (Indradyn, Bosch Rexroth, Lohr am Main, Germany) were mounted perpendicular to one another. Motion was controlled by a Rexroth MTX 13V programmable open-loop control system. The rig moved a cantilever in the horizontal plane over a base plate. A bracket with four attached sensors was mounted to the cantilever and a patch of liner material placed beneath. In this testing phase, a wiring junction printed circuit board (pcb) was used to connect the sensor units to the Arduino. The described measurement setup is shown in Figure 2.

**Figure 2.** The test rig with linear drives (**1**); cantilever (**2**); test bracket, sensors and liner (**3**); wiring junction pcb (**4**); and Arduino Due (**5**) with USB cable leading to laptop; adapted from [17].

The sampling rate was set to 200 Hz per sensor, which meets the capabilities of commerciallyavailable products for gait analysis (≥50 Hz). Measurements of uni-axial and diagonal motion, each consisting of fifteen motion steps, were conducted for each combination of distance (1, 5, 10, and 40 mm) and velocity (1, 10, and 100 mm/s). Complete measurement data (*x* and *y* movement counts, SQUAL-value, and timestamp) were continuously recorded. Movement counts were converted to displacements and scaled with the chosen calibration factor. The sections of each measurement containing motion were automatically extracted and the total displacement recorded for each step determined. The relative error with respect to the known displacement of the test rig Δ*x* was determined with Δ*d*, as determined in Equation (1):

$$err\_{\rm rel} = \frac{\Delta d - \Delta x}{\Delta x}.\tag{2}$$
