Page 1 of 1

Questions about driver development

Posted: Tue Nov 23, 2021 7:07 am
by HuoHaodong
Hi!

I recently got some DWM3000 chips and am planning to implement the DW3000 driver on the crazyflie platform. I have some development experience on the Loco Deck, but I know little about driver development.

My questions are as follows:
1. What hardware knowledge do I need to know?
2. What are the tools or software I need to learn?
3. What is the general workflow of driver development?

Re: Questions about driver development

Posted: Tue Nov 23, 2021 12:56 pm
by tobias
DWM3000 support would be very welcome! Something we wanted to do for a long time but never get time to do.
1. What hardware knowledge do I need to know?
Your will need to know about the STM32's and how they work. You will most likely need a debugger such as the st-link. The DWM doc will also be important.
2. What are the tools or software I need to learn?
I guess it depends on what OS you want to work with but you can always start with our VM. Check the Getting started with development

effected repositories:
https://github.com/bitcraze/crazyflie-firmware
https://github.com/bitcraze/libdw1000
https://github.com/bitcraze/lps-node-firmware
3. What is the general workflow of driver development?
The DWM library is a bit special with its own repository (shared between CF and Node). If we are lucky it is enough to adapt the library to handle both DWM1000 and DWM3000 and not much has to be done in CF and Node. From what I have understood most of the things are similar between DWM1000 and DWM3000 but there should be some new settings and registers. Hard to know the extent before one digs in. There is the possibility we need a completely new driver to make it feasible.

Re: Questions about driver development

Posted: Tue Nov 23, 2021 2:32 pm
by HuoHaodong
Hey Tobias, now I know what to do next. Thanks for your answer, it helps a lot!😁

Re: Questions about driver development

Posted: Sun Nov 28, 2021 12:54 pm
by shanfeng
Thank you. We will be working on it, and questions may come on the way.
tobias wrote: Tue Nov 23, 2021 12:56 pm DWM3000 support would be very welcome! Something we wanted to do for a long time but never get time to do.
1. What hardware knowledge do I need to know?
Your will need to know about the STM32's and how they work. You will most likely need a debugger such as the st-link. The DWM doc will also be important.
2. What are the tools or software I need to learn?
I guess it depends on what OS you want to work with but you can always start with our VM. Check the Getting started with development

effected repositories:
https://github.com/bitcraze/crazyflie-firmware
https://github.com/bitcraze/libdw1000
https://github.com/bitcraze/lps-node-firmware
3. What is the general workflow of driver development?
The DWM library is a bit special with its own repository (shared between CF and Node). If we are lucky it is enough to adapt the library to handle both DWM1000 and DWM3000 and not much has to be done in CF and Node. From what I have understood most of the things are similar between DWM1000 and DWM3000 but there should be some new settings and registers. Hard to know the extent before one digs in. There is the possibility we need a completely new driver to make it feasible.