@arnaud
My end goal is to fly the crazyflie autonomously over a desired track (trajectory tracking). I am trying to understand the logic behind the PID controller algorithm being used (for eg, how is the error being reduced, how is feedback being obtained etc.)
What is the need to check that the list of log-block topic names has the same length as the list of logging frequency?
This code has nothing to do with the PID and the control of the quadcopter, it is just a tool to fetch data from the quadcopter. If you look at the laucnch-file link I sent, there is a list of log block name and log block frequency. This test is essentially syntax check for the configuration: there should be one frequency per log bock.
There is a position PID loop implemented in the Crazyflie itself, this is most likely what you want to use. Are you using the stock Crazyflie firmware or the crazyswarm?
Thanks a tonne for the information. I am actually trying to use a package "crazyflie_ros" and trying to understand the various files written in it. The code I pasted was one of them and I was curious to know what it actually meant. I would soon try to use crazyswarm as well!