I am developing an autonomous control for a tailsitter/quadcopter vehicle based on PX4 plus an offboard controller working on a raspberry PI and communicating through MAVROS.
I was able to implement and test some simple trajectories (i.e. circular loop, straight lines etc…) and everything went fine.
Then, I started to develop more complex patterns (i.e. eight-shaped loops, reentry trajectories etc…) and all of a sudden I started getting the ‘offboard lost’ message during flights.
I am quite new to this world and I can’t figure it out the reason behind that. The controller works fine in gazebo and our bench tests didn’t show any particular misbehavior.
I was wondering if the root cause could be related to the Raspberry: might it be that, with a more “sophisticated” controller, the use of the CPU becomes more intense and the rate of published messages becomes lagging to the point that the PX4 disconnects the offboard to prevent problems?
I’ve kept track of the CPU usage on the PI and I noticed that when we lose the offboard I register a heavy usage of the CPU (up to about 85-90%)
Could that be a possible cause for this behavior? Is there anybody who experienced a similar ‘offboard lost’ issue?
Thank you for your kind help!