Skip to content

SDK & Algorithm

Version Release

Latest Version

Version Release Date Key Updates Forum Link
v3.4.16 2026-09-18 Add web console; add support for MD_FT70 monocular device; optimize console; fix bugs View

Previous Version

Version Release Date Key Updates Forum Link
v3.3.11 2026-08-31 add status value in imu_pose_callback; update cloud module, fix bugs; optimize console related functions View
v3.0.1 2026-07-02 Fix issue where modifying some configuration parameters in carina_console does not take effect View
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
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

Supported Platforms

  • Windows (X64)
  • Ubuntu 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 

Web Console (new in v3.4.16)

Use part of the Console app features directly in a browser, without installing the desktop app.

Launch

  • Desktop / board: run carina_web_console (on Windows: carina_web_console.exe); the default browser opens automatically
  • macOS: when launched by double-clicking the .app (no terminal), logs go to ~/Library/Logs/carina_web_console.log
  • Android: install webconsole-release.apk — it embeds a WebView, just tap the icon

Command-line options:

Option Description
--port <port> Web page port, default 8080
--serve-port <port> Rerun serve port, default 9876
--no-serve Disable Rerun serve
--no-browser Do not open the browser automatically
--help Show help

Access URLs

  • Local: http://127.0.0.1:8080
  • LAN: http://<device-ip>:8080 (the service listens on 0.0.0.0)

⚠ Security note: the current version of Web Console has no authentication (no token/password). Anyone on the same network can access and operate it (change config, download datasets, etc.), so use it only on trusted networks. A future version plans to bind 127.0.0.1 by default and offer an optional token.

Features

Area Content
Device Device info, connect (single/dual chip), run control (start / pause / resume / stop), right-side display, Rerun Serve, data capture and dataset list/download
Config Config file, common switches, YAML editor
Log Runtime log
Views Cameras (4 grayscale previews), capture RGB dual preview, UVC camera, 3D trajectory, IMU curves (ACC/GYRO), pipeline timing
Top status bar Camera / IMU / Pose / RGB0 / RGB1 / UVC frame rates and timestamps

Platforms: Ubuntu x86_64 / aarch64 (RK3588) / Windows / macOS / Android — all share the same web page.

API Reference Doc

📄 A1088 API Reference (PDF, v3.4.16, 2026-09-17)

ℹ Besides the APIs shipped in the SDK, this document also covers §9 Calibration C API (not shipped with the SDK), §10 carina_vio and §11 carina.h — refer to each section's own notes.

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