Skip to content

SDK & Algorithm

Version Release

Latest Version

Version Release Date Key Updates Forum Link
v2.9.8 2026-06-05 carina_console add mac support; fix usb driver problem on Windows; fix console FT66 support; console add caliration part View

Previous Version

Version Release Date Key Updates Forum Link
v2.7.7 2026-06-01 Add Carina Console GUI; Fix FT68 initialization bug View
v2.5.13 2026-04-16 Ubuntu 22.04 support; JCX_DRIVER_TYPE_A1088_4_VGA fix; All MD modules support View
v2.3.2 2026-03-02 macOS support, 2088 chip, mono initialization fix View
v1.40.404 2025-12-12 FT68 module support, filter optimization View
v1.39.292 2025-08-04 Hot-plug optimization View
v1.0.16 2024-11-25 VST toggle View

Supported Platforms

  • Windows (X64)
  • Ubuntu 18.04 / 20.04 / 22.04 (X86_64, aarch64)
  • Android (arm64-v8a, armeabi-v7a)
  • macOS (since v2.3.2)
  • Module solutions: MD_FT68, MD_FT63, MD_FT62, MD_FT66, MD_FT70, Mesiontech AR Glasses

Carina Console GUI Instruction

Carina Console provides GUI for exploring device data and trajectory:

📄 Download Carina Console Instruction 

API Reference Doc

📄 A1088 API Reference (PDF)

Configuration (custom_config.yaml)

Basic Config

slam_off: false
is_6dof: true
histogram_method: none
orb_database_path: ./database.bin
video_see_through: off
mapping_mode: false

Local Map Config

# create && save local map
mapping_mode: true
save_map: true
load_map: false
rtc_mode: on
map_save_path: D:\\dataset\\wh\\yyss_map

# use local map
mapping_mode: true
save_map: false
load_map: true
rtc_mode: on
map_save_path: D:\\dataset\\wh\\yyss_map

Frame Rate Settings

open_camera: on
ChipPoint.fps: 30      # 15/20/25/30/40/50/60
Camera.fps: 30
Imu.fps: 1000          # 200/250/500/1000

Exposure Settings

auto_exposure: false
exposure_time: 5       # 0.01-8ms (manual)
exposure_gain: 2       # 1-5x (manual)

Data Recording

save_data: true
save_trajectory: true
data_saved_path: ./output

Prediction Settings

imu_predict_max_ts: 0.02
predict_only_rotation: 0
predict_position_scale: 0.5

SDK Data Collection

save_data: true
save_trajectory: true
data_saved_path: ./output

Mapping Mode

Local Mapping

std::string custom_config =
    "mapping_mode: true\n"
    "rtc_mode: on\n"
    "save_map: true\n"
    "map_save_path: /home/***/map\n";
carina_a1088_init(const_cast<char *>(custom_config.c_str()), "./database.bin");

Cloud Mapping

std::string custom_config =
    "mapping_mode: true\n"
    "cloud_mapping: true\n"
    "server.address: 192.168.0.126:50080\n";
carina_a1088_init(const_cast<char *>(custom_config.c_str()), "./database.bin");

6DoF Pose Data Structure

Index Description
0-2 Rotation matrix col0
3-5 Rotation matrix col1
6-8 Rotation matrix col2
3,7,11,15 Unused
12,13,14 Translation x, y, z

ROS Node

Platform: Ubuntu 20.04 / ROS / OpenCV 4.2

roscore
source carina_ros_demo/setup.bash
# a1088
roslaunch carina_ros_demo carina_a1088_demo.launch

Topics:

  • a1088/left/image_raw
  • a1088/right/image_raw
  • slam/path
  • slam/pose

Coordinate System

  • IMU coordinate system as the main reference
  • Z-axis aligned with gravity upward
  • X, Y axes determined via Gram-Schmidt orthogonalization
  • World coordinate system initialized at startup

Calibration Process

  1. Collect 6-face IMU static data (2+ seconds each)
  2. Send imu0.csv for IMU calibration
  3. Camera model: pinhole-fov / radtan / equi (FOV recommended)
  4. Resolution 640x480 @ 30Hz, IMU @ 1000Hz
  5. Write calibration data using the verification tool

Data Verification Tool

  • Before calibration: verify IMU and image data
  • After calibration: check image, IMU, pose frame rate, A1088 feature points