Recommandation to learn how to implement controller in PX4


Hello everybody,

I would like to learn how to implement a controller in PX4 software.
My knowledge in coding are limited for the moment as the best I can do is to code in Matlab .m file.
So, do you have any recommandation to learn how to code properly ? (book, website, article, video …)

Thank you,



If you want to change the controller in PX4 you probably need to be able to read the existing code. I would suggest to learn the basics of C and C++ first.


As @JulianOes stated.

Start by looking at mc_att_control and mc_pos_control modules under the src/modules folder. Once you understand how those controllers interact, what information they subscribe to and what they publish you can think about how you might implement a different controller.