Smartgloves
The documentation below applies both to the Smartgloves and the Smartgloves II, unless otherwise noted.
Each glove is fitted with five finger sensors, an arm sensor, and a central hub. The finger sensors sit on the back of the fingers, on the middle segment of each of the four fingers and on the proximal segment of the thumb. The hub is the central unit on the back of the hand (centered at the circular Rokoko logo) and contains the EMF transmitter. The arm sensor is located on the forearm near the wrist.

Datasheets
Section titled “Datasheets”- Smartgloves Technical Specifications (PDF)
- Smartgloves II Technical Specifications (PDF)
- Smartgloves I / II Comparison (PDF)
Feature support
Section titled “Feature support”Availability of key SDK features across the two Smartgloves generations:
| Feature | Smartgloves I | Smartgloves II |
|---|---|---|
| Button press | ✗ | ✓ |
| Customizable LED | ✗ | ✓ |
| USB data streaming | ✗ | ✓ |
| Wi-Fi streaming | ✓ | ✓ |
| Magnetometer support | ✗ | ✓ |
| EMF coil range | Medium range | Long range |
Reference frames
Section titled “Reference frames”The reference frames are defined such that when the glove is lying flat, all coordinate axes are aligned.

The Coil Pro reference frames are defined in the images below. Note, the direction of the positive X/Y axes are ambiguous in the tracking data; the two possibilities differ by a 180 degree rotation around the Z-axis.


The table below lists all reference frames used in the Smartgloves data streams.
| Frame Name | Description |
|---|---|
hub | The central frame of the Smartgloves, centered at the circular Rokoko logo. |
thumb_finger_sensor | The frame of the sensor located on the thumb. |
index_finger_sensor | The frame of the sensor located on the index finger. |
middle_finger_sensor | The frame of the sensor located on the middle finger. |
ring_finger_sensor | The frame of the sensor located on the ring finger. |
little_finger_sensor | The frame of the sensor located on the little finger. |
arm_sensor | The frame of the sensor located on the forearm, near the wrist. |
coil_pro | The frame located at the center of the Coil Pro. |
Status flags
Section titled “Status flags”The Smartgloves data streams include status flags that indicate the tracking status of each sensor. The meaning of each flag is elaborated in the table below.
| Flag Name | Description |
|---|---|
is_magnetometer_saturated | Smartgloves II only. Whether at least one axis of the magnetometer is saturated. |
is_accelerometer_saturated | Whether at least one axis of the accelerometer is saturated. |
is_gyroscope_saturated | Whether at least one axis of the gyroscope is saturated. |
is_emf_saturated | Whether at least one axis of the electromagnetic field sensor (EMF) is saturated. |
not_is_accelerometer_used | Whether the accelerometer is not being used in the sensor fusion. |
not_is_magnetometer_used | Smartgloves II only. Whether the magnetometer is not being used in the sensor fusion. |
is_coil_pro_present | For Coil Pro tracking. Indicates whether the Coil Pro has been detected. When this is false, the given pose relative to the Coil Pro is not reliable. |
emf_flip_decided | For Coil Pro tracking. Indicates whether the system has decided on the ambiguity in EMF initialization |
is_heading_reliable | Smartgloves II only. For the provided hub orientation, which is relative to the local tangent plane (LTP). Indicates whether the heading (yaw) component of the orientation is reliable. This is false when the system has not yet converged on the heading estimate. |
Calibration & Initialization
Section titled “Calibration & Initialization”While there is no calibration command for the Smartgloves, there are initialization procedures that run automatically and these are important to understand for optimal use of the device.
Hub magnetometer initialization (Smartgloves II only)
Section titled “Hub magnetometer initialization (Smartgloves II only)”When the Smartgloves II connects to the Rokoko SDK, the hub’s magnetometer undergoes an initialization procedure to determine the orientation relative to the local magnetic field. This is a critical step for accurate heading estimation. During this initialization, the hub orientation estimate is available, but the flag is_heading_reliable (see table above) will be false until the initialization is complete and the heading estimate has converged. For best results, ensure that the hub is not close to any large metal objects or sources of magnetic interference during this initialization, as these can distort the magnetic field and lead to inaccurate orientation estimates. The initialization requires rotation of the hub.
This initialization is not always required, as the magnetometer parameters are persisted in the Rokoko SDK. If the persisted parameters are valid, the initialization will be skipped and the heading estimate will be reliable immediately upon connection.
Coil Pro initialization
Section titled “Coil Pro initialization”When the Smartgloves arm EMF-sensor detects the Coil Pro for the first time, an automatic initialization procedure is triggered. This initialization resolves an ambiguity in the EMF sensor data to determine the correct initial pose of the gloves relative to the Coil Pro. To resolve the ambiguity, some linear acceleration is required. Before such movement has been performed, the emf_flip_decided flag will be false, and the vertical (z-axis) position may be inverted. Once the initialization is complete, the emf_flip_decided flag will be true, and the pose relative to the Coil Pro will be stable. For best results, perform a deliberate linear movement of the gloves (e.g. a quick shake) after the first detection of the Coil Pro to expedite this initialization.
IMPORTANT
If the arm EMF-sensor saturates or comes outside of Coil Pro range, this initialization will reset and the ambiguity will be unresolved again. Therefore, for best results, stay in the operating range of the Coil Pro. See the EMF section of the technology overview guide for more details.
Re-initialization
Section titled “Re-initialization”The sensor fusion algorithms can be re-initialized at any time by calling the ReinitAlgo command in RCSP.