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.

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.