What is the message processing pipeline on the Crazyflie firmware?
Posted: Mon Dec 05, 2016 1:14 pm
Hello!
I'm a PhD student in Engineering working on implementing an onboard sliding mode controller using Crazyflie 2.
On the server side, I'm using Whoenig's Crazyflie ROS package, and I'm looking to modify the official firmware.
Here are the details:
I couldn't find other forum posts regarding people who had issues with a similar situation. (Many people had already modified the firmware and were having other trouble...) I have no experience in coding beyond basic projects and assignments, so I feel out of my depth here. Please let me know if there's any extra information you need.
I'm a PhD student in Engineering working on implementing an onboard sliding mode controller using Crazyflie 2.
On the server side, I'm using Whoenig's Crazyflie ROS package, and I'm looking to modify the official firmware.
Here are the details:
- I have figured out what data the ROS code sents, and where. (Specifically, it sends a crtpSetpointRequest using roll, pitch, yawrate, and thrust; packs it; and sends it step by step.)
- For the sliding mode controller to work, it needs an extra 6 or 9 variables (obtained from motion capture and derived), depending on the amount of calculation done locally.
- I should be able to modify creating the data on the ROS side on my own.
- I have no idea where the Crazyflie firmware access the data that is sent by ROS, and what process it goes through in order for the controller to be able to read it.
I couldn't find other forum posts regarding people who had issues with a similar situation. (Many people had already modified the firmware and were having other trouble...) I have no experience in coding beyond basic projects and assignments, so I feel out of my depth here. Please let me know if there's any extra information you need.