Skip to content
Borme ↗︎

XQ20 stereo headset

Head-worn stereo fisheye camera with a 6-axis IMU, recording to a memory card

XQ20 head-worn stereo camera on its strap
Image: the supplier's XQ20 spec sheet
Cameras
2 × 1920×1200, H.265Supplier's sheet
Shutter
Global, not measuredListing ↗︎
Field of view
Calibrated 122° × 91°Measured
160° on the listing, 123.6° on the sheet, axes not statedListing ↗︎
Baseline
60.3 mmMeasured
IMU
6-axis, 300 or 600 HzSupplier's sheet
Output
MP4 on microSD, or UVCSupplier's sheet

Supplier values from their spec sheet, received 2026-10-21 · Borme's listing, read 2026-11-04 · 2 units · Data on Hugging Face

Head-worn stereo fisheye camera with a 6-axis IMU, recording to a memory card. Borme, a brand of Shenzhen Feikasi Industrial Co., Ltd., sells it as the XQ20. Two units were calibrated.

The 3D scene MVIS recovered from unit B.
Reprojection median0.14 px
cam0–cam1 baseline60.3 mm
cam0 td+5.74 ms
cam0 lever arm56.3 mm

No independent reference. These values show what MVIS solved, not how close they are to the truth.

The solved path of the rig around the board. Press Play or drag the bar to follow it, and use the buttons to change the view.

Loading
Board cornersRig path, darker is laterStartCurrent position

The solved rig in 3D, to scale. Tap a sensor for its values. Full screen lets you rotate and zoom. Grid squares are 20 mm.

To scale, from above and the front

From above
xzcam0cam156.3 mm55.3 mmbaseline 60.3 mm20 mm
From the front
xycam0cam120 mm
CameraLever x, y, z (mm)Distance (mm)log(R) (rad)td (ms)Field of view
cam0−31.0, +1.2, +47.056.3[−0.002, −0.005, +0.004]+5.74122° × 91°
cam1+29.4, +1.3, +46.855.3[+0.007, +0.002, +0.004]+5.71122° × 91°

Solved by MVIS. Lever arms are in the IMU frame. Rotation is log(R), camera in the IMU frame.

From the supplier's sheet
Cameras2 × 1920×1200, H.265 MP4
Frame rate30 or 60 fps on the sheet; about 30 Hz in these recordings
Field of view123.6° on the sheet; axis not stated
IMU6-axis, 300 or 600 Hz on the sheet; 300.5 Hz measured
Storage and interfacemicroSD up to 128 GB, or UVC; Type-C
PowerNo battery
Weight180 g with strap
From the seller's listing
Model numberXQ20
Cameras2, dual 1080P, 2 MP, MP4
LensFisheye
Frame rate60 and 30 fps
Field of view160°; axis not stated
ShutterGlobal; not measured in these recordings
IMU300 Hz; stamped at measurement end, 50 ppm, 32-bit µs
Measured in these recordings
Calibrated field of viewcam0 122° × 91° · cam1 122° × 91°
Not published
OpenSensor part numbers
RecordingsUnit A: 158 s, 4,736 frames. Unit B: 119 s, 3,573 frames
FormatMP4 plus per-segment IMU CSV, converted to EuRoC layout
BoardAprilGrid 6×6, tag 35.2 mm, spacing 0.3
LicenceCC BY-NC 4.0; commercial use by request
HostedCalibench community, xq20/ (access by automatic approval)
AprilGrid 6 × 6, 264 × 264 mm. Standard pattern, to scale
Lens Calibrated field of view

Calibrated field of view, horizontal × vertical. cam0: 122° × 91°, corners reach 64° from the axis · cam1: 122° × 91°, corners reach 64° from the axis

0°15°30°45°60°75°90°0.00.40.81.21.6Ray angle from the optical axisImage radius / f

cam0 cam1

Read from the calibrated lens fit at the image edges, through the principal point. ~ marks an axis past the range the corners reached, where the fit is extrapolated. Past the fit means an edge lies beyond where the fit holds, so no value is given.

IMU Gyro-to-accel offset −0.79 ms

Scale as deviation from 1. Model: calyx. Gyro-to-accel time offset t_ga: −0.79 ± 0.73 ms.

Gyro scale x−2.34 %
Gyro scale y+0.12 %
Gyro scale z+0.03 %
Accel scale x+0.49 %
Accel scale y+0.26 %
Accel scale z−7.19 %
−8 %0+8 %
Timing cam0 td +5.74 ms

Offsets to scale, with t_imu = t_cam + td.

-10 ms-5 ms+0 ms+5 ms+10 mscam0 td+5.74cam1 td+5.71t_ga−0.79
Full results Every solved parameter

Rotation is log(R) in rad, camera in the IMU frame.

ParameterMVIS
cam0
fx px601.80
fy px601.71
cx px965.21
cy px632.15
k10.22812
k20.50495
k3−0.48030
k40.17579
Lever x mm−30.96
Lever y mm+1.20
Lever z mm+47.01
log(R) rad[−0.0020, −0.0047, +0.0036]
td ms+5.739
Reprojection px0.184
cam1
fx px601.49
fy px601.48
cx px952.61
cy px563.74
k10.23534
k20.49056
k3−0.46937
k40.17021
Lever x mm+29.38
Lever y mm+1.27
Lever z mm+46.78
log(R) rad[+0.0070, +0.0016, +0.0041]
td ms+5.713
Reprojection px0.173
IMU
t_ga ms−0.79 ± 0.73
  • No independent reference. These values show what MVIS solved, not how close they are to the truth.
  • Unit A lever z sits about 25 mm above unit B, beyond the roughly 10 mm uncertainty for this motion. This is still open.
  • The listing says 1080P and 160°, and the supplier's sheet says 1920×1200 and 123.6°. These recordings are 1920×1200. The listing's shutter value wasn't tested here.
  • Accel z scale stays near 0.93 to 0.94 because z barely sees gravity in this motion, so it isn't a sensor property.
  • cam0 at 30 Hz, cam1 at 10 Hz, t_ga on, camera intrinsics free. Batch of 2026-11-03.