-
Notifications
You must be signed in to change notification settings - Fork 428
Home
Welcome to the dji-firmware-tools wiki!
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.
This page is created by drone enthusiasts for drone enthusiasts.
If you see a mistake, or you know more about specific subject, or you see an area for improvement for the wiki - create an issue in this project and attach your patch (or describe the change you propose).