• 赏金船长官网

    ELRS接收机协议数据格式介绍

      ELRS(ExpressLRS)接收机协议的数据格式设计围绕其核心目标(低延迟、长距离、高可靠性)展开,主要基于 CRSF(Crossfire Serial Protocol) 协议实现双向通信,同时兼容SBUS、PWM等输出格式。以下从数据帧结构、编码方式、校验机制及版本兼容性四个维度进行系统分析:

      一、数据帧结构

      ELRS的核心数据格式遵循 CRSF协议规范,其帧结构分为通用帧和扩展帧两类,均采用二进制串行传输(UART接口,波特率420kbps)。

      1. 通用帧结构

    字段长度(字节)描述
    设备地址(Device Address)1目标设备地址(如广播地址0x00、飞控地址0xC8等)
    帧长度(Frame Size)1包含类型、载荷及CRC的总字节数(不含地址与长度字段)
    帧类型(Frame Type)1标识数据类型(如0x16=遥控通道,0x1E=链路统计)
    有效载荷(Payload)可变具体数据内容(长度由帧长度决定)
    CRC校验码1基于多项式0xD5的CRC-8校验值,覆盖地址外的所有字段

      示例:遥控通道数据帧(Type=0x16)

      载荷结构:16个通道数据,每通道11位(共22字节),按Big-Endian排列

      [Ch1低8位][Ch1高3位 + Ch2低5位][Ch2高6位 + Ch3低2位]…

      分辨率:前4通道为10位(0-1023),其余可配置为8/10位

      2. 扩展帧结构

      用于传输复杂数据(如GPS、姿态信息),在通用帧基础上增加子协议标识:

      扩展头:1字节标识子类型(如0x02=GPS数据)

      扩展载荷:结构化数据(如GPS帧包含经纬度、速度、海拔)

      二、编码方式与调制技术

      1. 物理层编码

      LoRa调制:采用Semtech SX1280(2.4GHz)或SX127x(915MHz)射频芯片,使用LoRa扩频技术提升抗干扰性与传输距离

      FLRC模式:高速率(500Hz/1000Hz),低延迟但距离较短

      DVDA模式:重复发送数据包(如D250=重复2次),增强复杂环境可靠性

      频率捷变:基于密码短语(Bind Phrase)生成跳频序列,避免信道冲突

      2. 协议层编码

      纠错编码(FEC) :添加冗余比特,允许接收端自动修复少量误码

      多路径传输:关键数据通过多条路径发送,降低丢包率

      三、校验机制

      采用 双重校验策略 确保数据完整性:

      CRC-8校验

      多项式:0xD5(标准CRC-8-D5算法)

      覆盖范围:从帧长度到载荷结束的所有字节

      计算示例(Python):

      def crc8_d5(data):

      crc = 0

      for byte in data:

      crc ^= byte

      for _ in range(8):

      crc = (crc << 1) ^ 0xD5 if (crc & 0x80) else crc << 1

      return crc & 0xFF

      数据包序号验证:每个数据包携带序列号,接收端检测丢包并触发重传

      四、版本兼容性差异

      ELRS协议迭代中,数据格式兼容性主要受固件版本影响:

    版本关键变更与兼容性说明
    ELRS V2.x– 新增SBUS输出(Type=0x00),兼容传统飞控
    – 引入PWM多通道映射(通过WiFi配置)
    ELRS V3.0+– 移除STM32硬件支持,仅保留ESP32/ESP8285平台
    – CRSF帧扩展遥测字段(如电池电压结构优化)
    跨版本兼容– 发射端与接收端固件需严格一致,否则绑定失败
    – 旧版硬件(如STM32)最高支持V3.5

      五、实际应用建议

      配置优化

      通用场景:500Hz刷新率 + 100mW功率,平衡延迟与能耗

      远距离场景:启用DVDA模式(如D250) + LoRa调制

      调试工具

      使用ExpressLRS Configurator解析CRSF数据流

      通过Lua脚本实时调整数据包速率与功率

      ELRS通过紧凑的帧结构(最小帧仅4字节)、高效的纠错编码与严格的版本管理,实现了无人机领域极致的3-7ms端到端延迟。其开源生态持续演进,未来将支持MAVLink等协议扩展应用场景。

    滚动至顶部