Hybrid drone : direct motor control

Hello everyone !

I’d like some information about how to correctly control the PWM outputs directly. I’m creating a kind of hybrid drone : in one configuration, it flies like a normal octocopter but when it is switched to the second configuration, it only uses 4 motors directly controlled by the roll stick only (no IMU needed, only the roll value, this is where my custom module starts taking the control and where I need advice).

Here are my 2 questions :

  1. After calculating myself the PWM I need on each motor, how do I directly control the motors with these values ? Through actuator_outputs topic ? Directly with ioctl function ? Does any of these 2 at least work ?
  • While being in that custom mode, I need to make sure that nothing is interfering and trying to take control of the motors. What should I be careful about ? Should I “block” mc_att_control" for example ? Should I create a dedicated flight mode ?

Thanks in advance for your help !