ULS-Heli-G2 Interface Control Document

Interface Control Document ULSDC-PBICD210925, version 1.0.1

ULSDC-PBICD210925 · version 1.0.1 · issued September 22, 2025
The numbered PDF is the controlled copy: download it from the portal.

Introduction

Purpose

This document outlines the interfaces between the ULS-Heli-G2 system components, including the transmitter, receiver, and autopilot systems (Ardupilot and PX4 and similar).

Scope

This document is intended for use by system engineers, integrators, and developers working with ULS-Heli-G2 systems. It provides detailed information on the interfaces between the system components, ensuring seamless integration and operation.

System Components

Transmitter (Ground Unit)

ULS-Heli-G2 Transmitter

Figure: ULS-Heli-G2 Transmitter A transmitter is a device placed on the ground (platform, moving object). It emits a signal in the Infrared range and serves as a kind of beacon. Transmitter marks position for drone landing. The primary function of the transmitter is to continuously send out a coded signal that can be detected and interpreted by the receiver unit onboard the XCopter. This signal contains critical information needed for the operation of the system, such as positional data, commands, and status.

Receiver (Onboard Unit)

ULS-Heli-G2 Receiver

Figure: ULS-Heli-G2 Receiver A receiver is a device that is placed on board an aircraft. The receiver decodes this signal to derive flight information such as positional coordinates, real-time transmitter status updates, and landing guidance. It interprets the data to navigate accurately and ensure drone follows the intended flight path. It provides feedback to the autopilot systems, such as Ardupilot and PX4, to adjust the flight parameters as needed for optimal and safety landing or hovering above.

Interface Overview

System Interfaces Overview

Figure: ULS-Heli-G2 System Interfaces Overview

Transmitter to Control PC Interface (External Sensors)

The transmitter can be connected to a control PC or external equipment for configuration, status monitoring, and data exchange.

Data Types

  • Status information
  • Control signals
  • Transmitter configuration
  • External IMU/COMPASS data

Connection Types

  • CAN Bus - For network communication
  • USB - For configuration and firmware updates
  • RS422 - For serial communication with external sensors

Transmitter Pinout

10 pin connector
PinFunction
1Vin +18V – +28V
2RS422A
3RS422B
4RS422Y
5RS422Z
6CAN-L
7CAN-H
8USB-D-
9USB-D+
10GND

Table: Transmitter 10 Pin Connector Pinout

Please DO NOT "HOT-PLUG" Transmitter cable. Apply power on transmitter only when connector connected to transmitter. Please check pin numbers on connector. Incorrect wiring or connection under voltage can damage the device and USB interface of connected PC !

Transmitter to Receiver Interface

The transmitter and receiver use an optical interface to exchange data. Transmission uses IR emission at 940 nanometers. Data transmission is only in the direction from the transmitter to the receiver.

Data Types

  • Position encoded
  • Status encoded data (Transmitter orientation and instructions)

Connection Type

  • Optical IR 940nm - Infrared optical link

Receiver to Autopilot and Receiver to PC Interfaces

Data Types

  • MAVLink messages
  • ULS-Blitz frames
  • ASCII protocol

Connection Types

  • UART - Serial communication with autopilot
  • CAN - Network communication
  • USB - Direct PC connection

Receiver Pinout

Receiver pin connectors
PinFunction
1Vin (+5V)
2CANH
3CANL
4GND

Table: 4 Pin Connector Pinout

PinFunction
1Vin (+5V)
2CANH
3CANL
4UART_TX (OUT)
5UART_RX(IN)
6USB_D-
7USB_D+
8GND

Table: 8 Pin Connector Pinout

Powering Interfaces

Powering Interfaces

Figure: Power Distribution and Connections

Transmitter Electrical Characteristics

ParameterValueUnitNotes
Supply Voltage22.0 - 26.0VNominal 24V
Supply Current4APeak
Power Consumption18.1WTypical

Table: Transmitter Electrical Specifications

Receiver Electrical Characteristics

ParameterValueUnitNotes
Supply Voltage5.0VFrom flight controller
Supply Current1APeak
Power Consumption3WTypical

Table: Receiver Electrical Specifications

Functional Interfaces

Functional Interfaces Diagram

Figure: Data Flow and Functional Interfaces

Data Exchange

The ULS-Heli-G2 system implements several data exchange mechanisms:

Control PC Functions:

  • Configure and view status of transmitter
  • Set configuration of receivers
  • Send control signals (On/off, compass override information)

External Equipment:

  • External IMU/Compass equipment can be used to override internal IMU/compass information

Receiver Functions:

  • Accept data from transmitter over IR signal (position field information and ground unit IMU data)
  • Accept NED and Attitude information from autopilot to convert coordinate system
  • Multiple receivers can communicate to calculate vehicle orientation (YAW)
  • Send position offset data to autopilot

Mechanical Interfaces

uls-hl-rxs dimensions

Figure: Slave receiver Mechanical Dimensions

uls-hl-rxm dimensions

Figure: Master receiver Mechanical Dimensions

Transmitter dimensions

Figure: Transmitter Mechanical Dimensions

Transmitter Mounting

Use 16 mounting holes to mount transmitter to panel. 3D model of the transmitter can be provided upon request.

Receiver Mounting

Both master and slave receivers have mounting provisions for secure installation. 3D models of the receivers can be provided upon request.

Communication Protocols

Overview

The protocol used by devices for configuration is proprietary and is described in other documents. However, the protocol implements the possibility of transmitting messages (Blitz messages) that can be used by the user to control the device and obtain information. These messages are universal, and the format describes the data that is transmitted by various devices in our system connected to a single network.

Use CMD=6 to send Blitz messages.

In this document, the CAN protocol is specified. RS485 is used to implement custom protocols that can be defined in the future.

CAN Bus Protocol Frame Format

flowchart LR
  A[Sender Device] --> B[GLOBAL]
  B --> C[CMD = 6]
  C --> D[ID]
  D --> E[dsn_lid]
  E --> F[msg_id]
  F --> G[Blitz Payload data <= 8 bytes]
  G --> H[Receiver Device]

The CAN protocol uses the following frame structure:

FieldDescription
GLOBALFlag used to send packets over several local networks
CMDCommand field (Use CMD=6 to send Blitz messages)
IDPacket sender ID (local id src_lid for local packets and device id for global packets src_did)
dsn_lidDestination local ID address
msg_idMessage ID used to identify Blitz packet types

Table: CAN Protocol Frame Fields

Status Bit Definitions

Most messages include a status byte with the following bit definitions:

BitFlagDescription
0ULS_STATUS_RX_CARRIER_OKIR signal detected
1ULS_STATUS_RX_SQ_OKSignal quality OK
2ULS_STATUS_RX_POS_OKPosition estimated
3ULS_STATUS_RX_VEL_OKVelocity estimated
4ULS_STATUS_RX_GU_IMU_OKGround Unit IMU OK
5ULS_STATUS_RX_MRX_OKMRX message received (secondary receiver)
6ULS_STATUS_RX_MRXDATA_OKMRX Yaw and Distance calculated OK

Table: Status Bit Definitions

Common Data Structure

Blitz Common Data Structure

Structure: __blitz_common_data_struct

FieldTypeDescription
src_liduint8_tSource logical ID
msg_iduint16_tMessage ID (see message types below)
dataunionMessage-specific data (8 bytes max)

Table: Blitz Common Data Structure The union contains all possible message structures:

  • xcg1_rx_raw_measurmet
  • rx_raw_measurmet
  • rx_pos_in_tx_frame
  • rx_mrx
  • rx_dacs

Usage: Universal container for all ULS Blitz message types.

Implementation Notes

  1. Packed Structures: All structures use __attribute__((packed)) to ensure no padding bytes are added by the compiler.
  2. Endianness: The protocol assumes little-endian byte order for multi-byte fields.
  3. Angular Precision: Angular measurements use 16-bit signed integers with specific scaling factors for different ranges.
  4. Distance Units: Distance measurements may use different units (cm, 10cm increments) depending on the message type.

Message Types

XCG1 Raw Measurement (0x0010)

Message ID: ULS_BLITZ_MSG_ID_XCG1_RX_RAW_MEASURMENT (0x0010)

Structure: __uls_blitz_xcg1_rx_raw_measurmet

FieldTypeDescription
statusuint8_tStatus bits (see Status Bit Definitions above)
duint8_tDistance in 10 cm increments
aXint16_tAngular information X-axis, proportional [-30000 = -30°, +30000 = +30°]
aYint16_tAngular information Y-axis, proportional [-30000 = -30°, +30000 = +30°]
oFint8_tSensor offset Forward in cm
oRint8_tSensor offset Right in cm

Table: XCG1 Raw Measurement Message Format Purpose: Legacy raw measurement data for XCG1 systems with limited angular range.

Raw Measurement (0x0011)

Message ID: ULS_BLITZ_MSG_ID_RX_RAW_MEASURMENT (0x0011)

Structure: __uls_blitz_msg_rx_raw_measurmet

FieldTypeDescription
statusuint8_tStatus bits (see Status Bit Definitions above)
counteruint8_tMessage counter for tracking
aXint16_tAngular information X-axis [-180° to +180°]
aYint16_tAngular information Y-axis [-180° to +180°]
distanceuint16_tDistance measurement

Table: Raw Measurement Message Format Angular Conversion Formula:

degrees = (value_int16 * 180.0f) / 32767.0f

Purpose: Standard raw measurement data with full angular range.

Position in TX Frame (0x0012)

Message ID: ULS_BLITZ_MSG_ID_RX_POS_IN_TX_FRAME (0x0012)

Structure: __uls_blitz_msg_rx_pos_in_tx_frame

FieldTypeDescription
statusuint8_tStatus bits (see Status Bit Definitions above)
counteruint8_tMessage counter for tracking
posXint16_tPosition X-coordinate in transmitter frame (cm)
posYint16_tPosition Y-coordinate in transmitter frame (cm)
posZint16_tPosition Z-coordinate in transmitter frame (cm)

Table: Position in TX Frame Message Format Purpose: 3D position data relative to the transmitter coordinate system.

MRX Information (0x0013)

Message ID: ULS_BLITZ_MSG_ID_RX_MRX (0x0013)

Structure: __uls_blitz_msg_rx_mrx

FieldTypeDescription
statusuint8_tStatus bits (see Status Bit Definitions above)
counteruint8_tMessage counter for tracking
yawint16_tYaw angle [-180° to +180°]
distanceuint16_tDistance measurement in cm

Table: MRX Information Message Format Purpose: Multi-receiver (MRX) information for secondary receiver data.

DACS Information (0x0014)

Message ID: ULS_BLITZ_MSG_ID_RX_DACS (0x0014)

Structure: __uls_blitz_msg_rx_dacs

FieldTypeDescription
statusuint8_tStatus bits (see Status Bit Definitions above)
counteruint8_tMessage counter for tracking
yawint16_tYaw angle [-180° to +180°]
distanceuint16_tDistance measurement
yawContinuousint16_tContinuous yaw angle ±32768°

Table: DACS Information Message Format Purpose: DACS (Distance and Azimuth Correction System) data with continuous yaw tracking. Available on VTOL systems only.

Ground IMU Measurement (0x0020)

Message ID: ULS_BLITZ_MSG_ID_GIMU_MEASUREMENT (0x0020)

Structure: __uls_blitz_msg_gimu_data

FieldTypeDescription
statusuint8_tStatus bits (see Status Bit Definitions above)
counteruint8_tMessage counter for tracking
rollint16_tRoll angle [-180° to +180°]
pitchint16_tPitch angle [-180° to +180°]
yawint16_tYaw angle [-180° to +180°]

Table: Ground IMU Measurement Message Format Angular Conversion Formula:

degrees = (value_int16 * 180.0f) / 32767.0f

Purpose: Ground unit IMU (Inertial Measurement Unit) orientation data.

IMU Override (0x0030)

Message ID: ULS_BLITZ_MSG_ID_XX_TXC_IMU_OVERRIDE (0x0030)

Structure: __uls_blitz_msg_xx_txc_imu_override

FieldTypeDescription
controluint8_tControl bits (see Control Bits below)
counteruint8_tMessage counter for tracking
rollint16_tOverride roll angle [-180° to +180°]
pitchint16_tOverride pitch angle [-180° to +180°]
yawint16_tOverride yaw angle [-180° to +180°]

Table: IMU Override Message Format Control Bits:

BitDescription
0SET Roll - Enable roll angle override
1SET Pitch - Enable pitch angle override
2SET Yaw - Enable yaw angle override
3-7Reserved

Table: IMU Override Control Bits Angular Conversion Formula:

degrees = (value_int16 * 180.0f) / 32767.0f

Purpose: Override IMU data on ground unit for external orientation control.

Magnetometer Override (0x0031)

Message ID: ULS_BLITZ_MSG_ID_XX_TXC_MAG_OVERRIDE (0x0031)

Structure: __uls_blitz_msg_xx_txc_mag_override

FieldTypeDescription
controluint8_tControl bits (see Control Bits below)
counteruint8_tMessage counter for tracking
mxint16_tMagnetic field X-component
myint16_tMagnetic field Y-component
mzint16_tMagnetic field Z-component

Table: Magnetometer Override Message Format Control Bits:

BitDescription
0SET override - Enable magnetometer override
1-7Reserved

Table: Magnetometer Override Control Bits Magnetic Field Conversion Formula:

mag_value = (value_int16 * 1.0f) / 32767.0f

Purpose: Override magnetometer data on ground unit for external compass control.

Environmental Conditions

For the Receiver Unit

  • Operating temperature range: -40°C to +85°C
  • Humidity range: Less than 70%
  • Dust and moisture protection: IP67
    • 6 - Complete protection against dust ingress
    • 7 - Protected against temporary immersion in water (up to 1 meter depth for 30 minutes)

For the Transmitter Unit

  • Operating temperature range: -40°C to +85°C
  • Humidity range: Less than 70%
  • Dust and moisture protection: IP67
    • 6 - Complete protection against dust ingress
    • 7 - Protected against temporary immersion in water (up to 1 meter depth for 30 minutes)

Storage Conditions

  • Storage temperature: -40°C to +85°C
  • Relative humidity: Up to 70% (non-condensing)
- The receiver unit does not requires additional protective measures in dusty or moist environments - The transmitter unit can operate in harsh outdoor conditions without additional protection - Extended temperature range (-40°C to +85°C) enables operation in extreme climates

Part Numbering

Part NumberDescription
ULS-HELI-G2System set with 3 receivers.
ULSDV-HL-TX-G2Transmitter unit.
ULSDV-HL-RXM-G2Master receiver unit.
ULSDV-HL-RXS-G2Slave receiver unit.
SA610/P4IB4 Pin Connector for receiver. Manufacturer Weipu.
SA810/P8IIB8 Pin Connector for receiver. Manufacturer Weipu.
SA1610/P10IIB-110 Pin Connector for transmitter. Manufacturer Weipu.

Table: Part Numbering

Specifications

ParameterValue
Distance range m.:50.0
Working angle (deg):60
Data update frequency (Hz):20

Table: Common Specification

ParameterValue
Field of view (deg):90
Dimensions mm :46x26x12
Weight g.:40
Power Consumption (W):3
Voltage supply (V):5
Interfaces:USB, CAN, UART

Table: Receiver (Slave) Specifications

ParameterValue
Field of view (deg):90
Dimensions mm :50x50x14
Weight g. :60
Power Consumption (W):3
Voltage supply (V):5
Interfaces:USB, CAN, UART

Table: Receiver (Master) Specifications

ParameterValue
Field of emitting (deg):60
Dimensions mm. :290x215x48
Weight g.:4100
Power Consumption (W):10
Voltage supply (V):22.0-26.0
Interfaces :USB, CAN, UART

Table: Transmitter (Ground) Specifications

Change Control

All changes to this document must be reviewed and approved by the relevant technical leads and stakeholders