---
title: Serial Telemetry
slug: microdrive-lp/serial-telemetry
icon: ℹ️
docTags: 
createdAt: 2025-05-27T05:23:05.748Z
---

Serial telemetry has the following operating modes available:

- DShot/BiDirectional DShot: Sends a Serial ESC Telemetry packet on DShot request
- Periodic: Sends a UART packet (legacy format on firmware versions below 3.0.0) at the configured frequency (10 Hz default)
- RPM Output: Sends a pulse per eRPM

When operating with bidirectional DShot signalling the ESC will respond with the standard bidirectional DShot RPM telemetry. Details about bidirectional DShot can be found [here](https://brushlesswhoop.com/dshot-and-bidirectional-dshot/).

## Serial ESC Telemetry Format

This format is supported by most Betaflight and ArduPilot controllers. This format is sometimes referred to as the [KISS Telemetry Format](http://www.rcgroups.com/forums/showatt.php?attachmentid=8524039\&d=1450424877). Betaflight refers to this format as [Serial ESC Telemetry](https://betaflight.com/docs/wiki/guides/current/esc-telemetry#serial-esc-telemetry), ArduPilot refers to this format as [ESC Telemetry](https://ardupilot.org/copter/docs/common-esc-telemetry.html).

### UART Port Settings

The settings applied to the UART connection that supplies the telemetry packet can be found below:

- Baud Rate: 115200 Baud
- Word Length: 8B
- Stop Bits: 1
- Parity: None
- No Flow Control
- Byte Order: Big-Endian

### Packet Structure

The following packet is output at the configured rate (on firmware versions 3.0.0 and greater) or upon DShot request. No partial packets are transmitted.

| Data Field      | Size                    | Comments                                                                                                                |
| --------------- | ----------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| Temperature     | Signed 8-bit Integer    | The temperature of the 3-phase bridge. This is the primary heat source with the ESC.<br />Units are in degrees Celcius. |
| Bus Voltage     | Unsigned 16-bit Integer | The measured input voltage to the ESC. Units are Volts \* 100.                                                          |
| Bus Current     | Unsigned 16-bit Integer | The measured input current to the ESC. Units are Amps \* 100. Negative values are truncated to 0.                       |
| Consumption     | Unsigned 16-bit Integer | Unused. Value fixed at 0.                                                                                               |
| RPM             | Unsigned 16-bit Integer | The electrical rpm of the motor, can be toggled to send mechanical rpm. Units are rpm / 100.                            |
| Checksum (CRC8) | Unsigned 8-bit Integer  | -                                                                                                                       |

