Skip to content
Get SDK Access

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.

Smartgloves sensor layout, showing the finger sensors, hub, and arm sensor

Smartgloves sensor layout.

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

The reference frames are defined such that when the glove is lying flat, all coordinate axes are aligned.

Smartgloves coordinate frames

Smartgloves reference frames.

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.

Coil Pro coordinate frames, top view

Coil Pro — top view.

Coil Pro coordinate frames, bottom view

Coil Pro — bottom view.

The table below lists all reference frames used in the Smartgloves data streams.

Frame NameDescription
hubThe central frame of the Smartgloves, centered at the circular Rokoko logo.
thumb_finger_sensorThe frame of the sensor located on the thumb.
index_finger_sensorThe frame of the sensor located on the index finger.
middle_finger_sensorThe frame of the sensor located on the middle finger.
ring_finger_sensorThe frame of the sensor located on the ring finger.
little_finger_sensorThe frame of the sensor located on the little finger.
arm_sensorThe frame of the sensor located on the forearm, near the wrist.
coil_proThe frame located at the center of the Coil Pro.

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 NameDescription
is_magnetometer_saturatedSmartgloves II only. Whether at least one axis of the magnetometer is saturated.
is_accelerometer_saturatedWhether at least one axis of the accelerometer is saturated.
is_gyroscope_saturatedWhether at least one axis of the gyroscope is saturated.
is_emf_saturatedWhether at least one axis of the electromagnetic field sensor (EMF) is saturated.
not_is_accelerometer_usedWhether the accelerometer is not being used in the sensor fusion.
not_is_magnetometer_usedSmartgloves II only. Whether the magnetometer is not being used in the sensor fusion.
is_coil_pro_presentFor 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_decidedFor Coil Pro tracking. Indicates whether the system has decided on the ambiguity in EMF initialization
is_heading_reliableSmartgloves 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.

The Smartgloves data stream includes a emf_only stream group which provides additional insight into the hub-based EMF tracking. The group includes the following data points, for each of the five finger sensors and the arm sensor:

measure_typetarget_framereference_framecustom_labelDescription
TRANSFORM<sensor frame name>hub-EMF-only pose for the given sensor.
CUSTOM<sensor frame name>hubrelative_emf_residualRelative EMF residual for the given sensor.

See the RGMPv2 specification for definitions of measure_type, target_frame, reference_frame, and custom_label.

The following sections describe the meaning of the EMF-only pose and the relative EMF residual.

The estimated pose derived only from EMF. This pose is not fused with the IMU data, and is provided for diagnostic purposes. It carries minimum delay, but is more susceptible to noise and interference. There is zero correlation between consecutive EMF-only poses, and the pose may jump around when the EMF signal is weak or noisy.

The EMF pose estimation is based on a model of the EMF field generator by the transmitter (hub or Coil Pro). The residual is the difference between the measured EMF and the expected EMF based on the model. A large residual indicates that the measured EMF does not match the expected EMF, which can be caused by interference or other factors.

We provide the relative EMF residual for each sensor as a percentage, which is the ratio of the residual magnitude to the expected EMF magnitude. A relative EMF residual of 0% indicates a perfect match, while a relative EMF residual of 100% indicates that the residual magnitude is equal to the expected EMF magnitude. Note, the relative EMF residual has no upper bound, and can exceed 100%.

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.

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.

The sensor fusion algorithms can be re-initialized at any time by calling the ReinitAlgo command in RCSP.