← All IP · the catalog
Drone, Robotics & UAV Safety

ESC DShot Controller

escdshot is a synthesizable SystemVerilog soft-IP that generates the DShot digital ESC (Electronic Speed Controller) protocol for brushless drone/UAV…

Request this IP →Browse the catalog
ASIL-B
target
92.50%
SPFM
90.00%
LFM
PASS
FMEDA
1.8K
gates
1.0.0
version
The deliverable

What you’re licensing

escdshot is a synthesizable SystemVerilog soft-IP that generates the DShot digital ESC (Electronic Speed Controller) protocol for brushless drone/UAV… It is delivered as a licensable soft-IP block engineered as an ASIL-B Safety Element out of Context — not just RTL, but the complete functional-safety work package needed to carry it into an ISO 26262 program:

Synthesizable RTL
Portable, vendor-neutral SystemVerilog that drops onto your existing SoC fabric — no foundry or EDA-tool lock-in.
Per-IP FMEDA report
SPFM / LFM / PMHF computed against the ASIL target per ISO 26262-5 — the quantitative analysis your assessor asks for.
Safety manual
Assumptions of use, the safety mechanisms and their diagnostic coverage — written to drop straight into your safety case.
IP-XACT + integration docs
A machine-readable descriptor plus register and integration documentation for fast, low-risk bring-up.
Self-checking testbench
A self-checking (crypto: bit-exact) testbench and a one-command build, so you can reproduce every claim on day one.

What it is

esc_dshot is a synthesizable SystemVerilog soft-IP that generates the DShot digital ESC (Electronic Speed Controller) protocol for brushless drone/UAV motor control, with optional bidirectional DShot eRPM-telemetry decode.

Key Features

Standards & Compliance

DShot150/300/600/1200, bidirectional DShot eRPM

Functional Safety

ASIL-B (SEooC) · SPFM 92.50% · LFM 90.00% · PASS

ISO 26262:2018 · FMEDA available · Safety Manual included

Register Map

OffsetRegisterDescription
0x00CTRL[0]=EN [1]=TLM_EN (request telemetry bit in every frame) [3:2]=RATE (0=DShot150 1=300 2=600 3=1200) [4]=BIDIR_EN
0x04STATUS[0]=BUSY [1]=FRAME_DONE [2]=ARMED_ALL [3]=TLM_VALID (RO)
0x08ARM[NUM_MOTORS-1:0] per-channel arm enable (1=armed)
0x0CDIVCFG[15:0]=clocks-per-bit-period (overrides RATE table if non-zero)
0x10THR0[10:0]=channel-0 throttle (THR1..THRn at 0x14,0x18,… +4)

…3 more registers — see datasheet for the full table.

Getting Started

// Minimal instantiation
esc_dshot #(
  .ADDR_W(6)
) u_esc_dshot (
  .clk       (clk),
  .rst_n     (rst_n),
  // APB4
  .p_paddr   (paddr),
  .p_psel    (psel),
  .p_penable (penable),
  .p_pwrite  (pwrite),
  .p_pwdata  (pwdata),
  .p_prdata  (prdata),
  .p_pready  (pready),
  // Safety
  .err_clear (1'b0),
  .err_valid (err_valid),
  .err_code  (err_code)
);

Configure via the CTRL register after reset to enable the IP and set operating parameters. Monitor err_valid / err_code for any safety faults reported by the built-in safety monitor.

Applications

Where it fits

Typically deployed in UAV flight controllers and robotics platforms operating under a functional-safety mandate.

The case

Why license it, not build it

Skip 12–18 months
The FMEDA and the safety case are already generated. You integrate a finished safety element — you don’t stand up a safety-IP program to originate one.
One vendor, one safety story
Every block in the catalog shares the same safety architecture, fault-reaction model, and FMEDA methodology — so subsystems roll up cleanly.
Verified, not vapor
The RTL builds and passes today; the safety metrics come from analysis and fault injection against real RTL, not a datasheet promise.

Interested in ESC DShot Controller?

Pricing, the per-IP FMEDA, safety manual, and RTL data room are shared under a mutual NDA.

Talk to us →See related IP

Figures are pre-silicon engineering-grade estimates for a Safety Element out of Context (SEooC); final ASIL sign-off is the integrator’s, supported under NDA. FMEDA and Safety Manual available under NDA.

circuit-design.space · +1-971-357-1400 · sales@circuit-design.space