How does IOMCU communicate with FMU?

Hi everyone! I have some questions that I hope you can make me clear.
I’m using Cube Orange and carrier board Pixhawk

- MY GOAL:

  • I would like to understand more about how IOMCU work and communicate with FMU
    because maybe I will custom or change config IOMCU to be suitable for my future project (like changing function of some pins in MAIN OUT).

- MY QUESTION:

Q1: Does IOMCU and FMU talk to each other by using UART? Because I saw hwdef.dat file of Cube Orange and IOMCU, they definde one port for that.

Q2: If communication between of them fail (IO and FMU cannot transfer data). Can we use RC to control motors?

Q3: I saw some page said that new firmware will load into FMU first, when it finish , iofirmware load to IOMCU, is it that right?

The Pixhawk schematics are available. I think they communicate by PC6&PC7 on FMU and PA2&PA3 on IOMCU:
image

Being internal signals they should not fail. However perhaps you can find in the source code what happens if communication fails. Main/aux pins can also be studied in the schematics.