IOMCU pins configuration

Hi all,

I’m using cube orange with a custom carrier board in my project. I’m testing PWM setup but I’m not getting any output on pwm pins. This is the first time I’m using an iomcu in my project and I really have limited knowledge of how iomcu works/interacts with fmu.
I’ve been looking into cube orange hwdef.dat file but it only has configuration setup for fmu pins and no setup for the iomcu except “IOMCU_UART”. So, I want to know

  1. How are iomcu pins are configured?
  2. Which file is used for configuration of iomcu pins
  3. Is it even possible to update iomcu configurations?

Thankyou.

The IOMCU ports will be setup by parameters SERVO1_ (Main 1 port) up to SERVO8_ (Main 8 port) in Cube Orange.
All ports not addressed as motors should have SERVOX_FUNCTION addressed to 0 or -1 (I don’t remember exactly) as default. You should be able to control these PWM outputs by simply sending commands via Servo/Relay Tab on Mission Planner (since as your SERVO_GPIO_MASK is also correctly set).

Refer to this page for further information on arducopter parameters:
https://ardupilot.org/copter/docs/parameters.html

1 Like

The IOMCU doesnt really come into it I think, except that all IOMCU outputs (MAIN) are PWM only.
The FMU outputs (AUX) can be GPIO (relay for example), or PWM or DSHOT.

These parameters control when outputs are active and which are active when armed or not armed

BRD_SAFETY_MASK,0 ← bitmask of which outputs are active while NOT armed
BRD_SAFETYENABLE,0 ← disables the safety switch
BRD_SAFETYOPTION,0

https://ardupilot.org/copter/docs/parameters.html#brd-safety-mask-outputs-which-ignore-the-safety-switch-state

1 Like

I forgot this detail… thanks for helping @xfacta!