Skip to content
mefistotelis edited this page Dec 11, 2022 · 7 revisions

Welcome to the dji-firmware-tools wiki!

Table of Contents

Introduction

DJI Hardware catalogue

DJI Firmwares catalogue

Introduction

Dji drones consist of many modules, connected together via serial communication interfaces. A specific Printed Circuit Board often contains several modules; PCB configurations tend to change in various Dji products, but module identifiers and their purpose are kept similar, though evolving a bit over generations of products.

A module is usually equivalent to one programmable device - a processor, micro-controller, or FPGA. Modules can talk to each other via serial interfaces - most of the time UART is used for that, though in some cases CAN bus is introduced. Communication takes place in binary packets, unified across all products. Within Dji code, the communication protocol is called DUML. Modules which are not suited to support packet I/O (ie. FPGAs) or configurable but non-programmable devices (ie. RF transceivers), are receiving instructions via SPI, and a nearby DUML-capable module is taking the role of middleman in the communication.

To learn more about PCB boards within Dji products, see hardware section above.

To learn specifics about modules and their programming, see firmwares section above.

To learn more about DUML protocol and packets, see Wireshark dissectors within the tools repository.

Clone this wiki locally