Search...
Menu

D-90AI Pod User Manual

Product precautions

  1. Please put the device into the D-90 packing box properly after use. It is recommended that the relative humidity of the storage environment be less than 40% and the temperature be 20±5 ° C. If the lens fogs, the water vapor can usually dissipate after a period of time.
  2. Do not point the thermal camera lens at a strong energy source, such as the sun, lava, laser, etc. The temperature of the object observed by the lens should be less than 600℃, otherwise it will cause irreparable damage to the camera.
  3. Do not place the pod in direct sunlight, poor ventilation, or near heat sources such as heaters and heaters.
  4. Do not start or close the pod frequently. Restart the device after shutdown at least 30 seconds. Otherwise, the service life of the device will be affected.
  5. Ensure that the port and surface of the pod are clean and dry before installing the pod.
  6. Before use, make sure that the pod is securely installed on the loading platform, and that the miscroSD card protection cover is clean and closed.
  7. Wipe the surface of the miscroSD card before opening the cover.
  8. Do not insert or remove the miscroSD card while it is in use.
  9. Do not touch the camera lens with your hands or scratch it with hard objects. Otherwise, the image of the pod will be blurred and the image quality will be affected.
  10. When cleaning the pod lens, be sure to wipe the lens surface with a soft, dry cleaning cloth. Do not use alkaline cleaning agents for cleaning.
  11. When the inertial data of the carrier is not received, the yaw axis of the pod will drift by about 15° per hour due to the influence of Earth rotation. In order to ensure the accurate attitude of the pod without drift, it is necessary to transmit the effective carrier inertial data to the pod. Generally, the carrier GNSS positioning is required to be effective.
  12. When the platform tilts more than 45°, the pod will trigger the protection mode and return to the center. (except in FPV mode)

 

Product overview

intro

The D-90 AI pod is equipped with a high-precision three-axis non-orthogonal head, and is equipped with a 30x zoom camera and a long-wave uncooled thermal imaging camera, which can simultaneously capture visible and thermal images, providing more detailed images. At the same time, the pod is equipped with a laser rangefinder, which can provide the distance and position coordinates of the observation target, assist in fast and accurate positioning, and improve the operation efficiency.

D-90AI pod with AI multi-target detection and tracking function. The pod can intelligently identify pedestrians and vehicles in the captured footage, and continuously lock and track either target.

The D-90AI pod supports upright and inverted installation, and can be quickly installed to various unmanned aerial vehicles or other aircraft carrying platforms without tools. With GCU and Dragonfly display and control software, it can display the picture on the computer in real time, and realize the control of the pod, supporting photography and video.

Main feature

  • With AI multi-target detection and tracking function, it can intelligently identify pedestrians and vehicles in the shot picture, and continuously lock and track any of the targets.
  • The 30x zoom camera, thermal imaging camera and laser rangefinder are integrated to revolutionize the 24/7 working experience.
  • Small size spherical shape and non-orthogonal three-axis mechanical stability increase structure are adopted to minimize the turning radius and wind resistance. The yaw axis can rotate continuously at 360°×N.
  • With GCU support network, serial port and S.US control, compatible with private protocol and MAVlink protocol, convenient for secondary development.
  • The image stabilization accuracy can reach ±0.01° by using dual IMU complementing algorithm with IMU temperature control and inertial data fusion, and the pod can still maintain stability when the carrier maneuveres violently.
  • It supports upright and inverted installation, and can be quickly installed on various loading platforms.
  • With GCU and Dragonfly display and control software, you can display the picture on the computer in real time without docking protocol, and realize the control of the pod.
  • The screen supports superimposing OSD information such as latitude and longitude and height, and the photo supports writing EXIF information of shooting point coordinates. Video streaming supports SEI overlay.
  • 14~53VDC wide voltage input.

 

Component introduction

 

Install

  1. Remove pod port protection cover.
  2. Insert the four positioning pins on the damping platform into the positioning holes on the mounting platform and press down the latch to secure the pod. The pod can also be secured using screws through mounting holes in the damping platform.
  3. Plug the pod control cable into the pod control interface. Remove the interface protection cover.

 

⚠ When the pod is used upside down or installed on a loading platform with large vibration/impact, screws should be used to secure the pod. Quick release locks should not be used.

⚠ Do not pull or insert the cable forcibly.

⚠ Do not squeeze the cable when you fasten back the protection cover.

⚠ Cover the SD card protection cover during use or storage to prevent liquid or dust from entering.

⚠ The pod will heat up to a certain extent during operation. Please ensure that the equipment has good heat dissipation during operation.

⚠ Do not hard-connect the pod to the carrier. Ensure that the pod does not touch the carrier while in use.

🔑 The MicroSD card must be configured in HDD-FAT32 mode.

 

Setup and firmware upgrade

⚠ Before use, ensure that the firmware of GCU and PTZ has been upgraded to the latest version; otherwise, the use may be affected.

⚠ Before setting up or upgrading the firmware, ensure that the firmware driver is installed on the PC.

⚠ Before setting, ensure that the PC is set to a fixed IP address, that the IP address is in the same network segment as the GCU and the camera, and that the IP address does not conflict with each other. The default IP address of the GCU is 192.168.144.121, and the default IP address of the camera is 192.168.144.108.

⚠ Do not power off the device during the firmware upgrade. Otherwise, the device may be damaged. After the upgrade is complete, restart the device.

  1. Connect the computer to the ETH port on the top of the pod using the network port conversion module to power on the pod.
  2. Run the Dragonfly display and control software to confirm that you are connected to the pod.
  3. Open the Settings page to set the current pod.
  4. Click "Save" after setting.
  5. Restart the pod for the changes to take effect.

 

GCU firmware upgrade

  1. Power on the GCU and connect the computer to the UART interface of the GCU using the debug module.
  2. Run the GCU upgrade software FreeFlightIAP and select the COM port corresponding to the debugging module.
  3. Click "browser" to select the firmware file, and then click "download" to wait for GCU to complete the upgrade.

 

PTZ firmware upgrade

  1. Use the pod control cable to connect the GCU to the pod, power the GCU on, and use the debug module to connect the computer to the pod upgrade interface.
  2. Run GimbalConfig, select the COM port corresponding to the debugging mode, click "Open firmware", select the firmware file and click "Start upgrade" to wait for the completion of the upgrade of the pod.

🔑 For some brands of dual-Type-C data cables, the computer may not recognize the debugging module, you can try to replace the data cable with a Type-A to Type-C interface.

 

Real-time video playback

The camera IP address 192.168.144.108, for example: flow address: RTSP: / / 192.168.144.108/554

 

Overall dimension

 

SEI data structure

typedef struct // 64 bytes, small-endian, single-byte alignment {

uint8_t head[2];  // Sync header [0xEE,0x16] struct

{

uint8_t rng_trig:1;  // range trigger marker uint8_t_pip_state:3; // Picture in picture state

0- Zoom camera (main) + thermal imaging camera (sub); 1- Thermal imaging camera; 2- Thermal imaging camera (main) + zoom camera (sub); 3- Zoom camera

uint8_t data_valid:1;  // Carrier coordinates, carrier attitude and pod attitude data validity markers uint8_t tgt_valid:1; // Target coordinate validity flag

uint8_t reserved:2;  // Reserved flag

} flag;

int32_t uav_lon;  // Carrier longitude, [-180°, 180°], resolution 1e-7deg int32_t uav_lat; // Carrier latitude, [-90°, 90°], resolution 1e-7deg

int32_t uav_alt;  // Aircraft altitude, resolution 1mm

int32_t uav_hgt;  // Load relative height, resolution 1mm

int16_t uav_phi;  // Load rolling Angle, [-180°, 180°), resolution 0.01deg

int16_t uav_the;  // Carrier pitch Angle, [-90°, 90°], resolution 0.01deg

uint16_t uav_psi;  // Aircraft yaw Angle, [0°, 360°), resolution 0.01deg int16_t cam_phi; // pod roll Angle, [-90°, 90°], resolution 0.01deg

int16_t cam_the;  // Pod pitch Angle, [-180°,180°), resolution 0.01deg uint16_t cam_psi; // pod pointing Angle, [0°, 360°), resolution 0.01 °

uint16_t cam1_zoom;  // Zoom camera multiple, resolution 0.01x uint16_t cam2_zoom; // Multiple of thermal imaging camera, resolution 0.01x

uint16_t rng_dist;  // Range range, resolution 0.1m (invalid, 0) uint16_t gnss_week; // Number of GNSS weeks

uint32_t gnss_itow;  //GNSS milliseconds per week, resolution 1ms

int32_t tgt_lon;  // Target longitude, [-180°, 180°), resolution 1e-7deg (invalid, 0)

int32_t tgt_lat;  // Target latitude, [-90°, 90°], resolution 1e-7deg (invalid, 0)

int32_t tgt_alt;  // Target altitude, resolution 1mm (invalid, 0)

uint16_t cam1_fl1x;  // Zoom camera 1x focal length, resolution 0.01mm

uint16_t cam2_f1x;  // Thermal imaging camera 1 focal length, resolution 0.01mm

uint8_t reserved[4];  // Reserve

uint8_t check_sum;  // Checksum

}SdSei_t

 

MAVLink configuration Description

ArduPilot

SERIAL1
SERIAL1_BAUD 115
SERIAL1_OPTIONS 1024
SERIAL1_PROTOCOL 2
SR1
SR1_ADSB 0Hz
SR1_EXIT_STAT 0Hz
SR1_EXTRA1 0Hz
SR1_EXTRA2 0Hz
SR1_EXTRA3 0Hz
SR1_PARAMS 0Hz
SR1_POSITION 0Hz
SR1_RAW_CTRL 0Hz
SR1_RAW_SENS 0Hz
SR1_RC_CHAN 0Hz
MNT1
MNT1_TYPE 4(Gremsy)/6(SToRM32 Mavlink)
RC1
RC1_OPTOPN 213(MOUNT1_PITCH)
RC2
RC2_OPTOPN 214(MOUNT1_YAW)
RC3
RC3_OPTOPN 163(MOUNT1_LOCK)
CAM
CAM-TRIGG_TYPE 3(Mount)

🔑MNT1_TYPE The recommended value is 4. In this case, MNT1_ROLL_MAX, MNT1_ROLL_MIN, MNT1_PITCH_MAX, MNT1_PITCH_MIN, MNT1_YAW_MAX, and MNT1_YAW_MIN are automatically set based on the data reported by the pod. When MNT1_TYPE is set to 6, you need to set the Angle limit manually.

🔑RC1 to RC3 are only example channel ids. You can define the channel ids based on actual conditions.

 

PX4

MAVLink
MAV_1CONFIG TELEM2
MAV_1_MODE Custom/Gimbal
MAV_1_RATE 115200B/s
Serial
SER_TEL2_BAUD 115200 8N1
Mount
MNT_MAIN_PITCH AUX1
MNT_MAIN_YAW AUX2
MNT_MODE_IN Auto(RC and Mavlink Gimbal)
MNT_MODE_OUT MAVLink gimbal protocol v2
Camera Setup
Trigger mode Distance based,on command(Survey mode)
Trigger interface MavLink(forward via MAV_CMD_IMAGE_START_CAPTURE)

🔑 MAV_1_MODE Custom is recommended

🔑 AUX1 and AUX2 are only example channel ids. You can define the channel ids based on site requirements. Further use requires corresponding mapping in RC Map.

🔑 The trigger mode is used as an example and can be modified as required.

 

MAVLink communication flow

After GCU receives the flight control heartbeat packet and recognizes the flight control SYSID and COMPID, the following actions are triggered:

  • GCU actively sends MAVLINK_MSG_ID_HEARTBEAT 0 packets at a frequency of 2Hz.
  • GCU requests the following packets in sequence at 1Hz

Flight control fills this data into the MAVLINK_MSG_ID_COMMAND_LONG 76 packet and sends it back until the request is complete:

MAVLINK_MSG_ID_EKF_STATUS_REPORT 193 (PX4 does not have this data packet);

MAVLINK_MSG_ID_GLOBAL_POSITION_INT 33;

MAVLINK_MSG_ID_SCALED_IMU 26;

MAVLINK_MSG_ID_SYSTEM_TIME 2;

MAVLINK_MSG_ID_RC_CHANNELS 65;

MAVLINK_MSG_ID_CAMERA_TRIGGER 112 (This packet is not available on APM).

MAVLINK_MSG_ID_AUTOPILOT_STATE_FOR_GIMBAL_DEVICE 286;

MAVLINK_MSG_ID_GIMBAL_DEVICE_SET_ATTITUDE 284 (this packet is not available in APM);

  • When the above data is received and the pod works normally, GCU will actively send MAVLINK_MSG_ID_GIMBAL_DEVICE_ATTITUDE_STATUS285 packets at a frequency of 100Hz.
  • Generally, the flight controller will actively request MAVLINK_MSG_ID_GIMBAL_DEVICE_INFORMATION 283 packets, which GCU will not send.
Previous
D-90 AI Pod
Next
OneVDLink R17
Last modified: 2025-07-09Powered by