Skip to main content


Below are listed the general peripherals used by the controller. These are selected so that they consist of the peripherals that are available on pins broken out by the MYIR STM32MP1 SoM.

Cortex A7

These peripherals are reserved for the exclusive use of the Cortex A7 side. This runs a full OS, handles networking, expansion connectivity, the user interface, and so forth.


  • I2C2: Front panel / local I²C bus
    • Through PCA9543A bus mux
  • SPI3: Front panel display, CAN controller (through /CS-based mux)
    • Front panel display controller
    • On-board CAN controller
  • UART4: Kernel TTY
  • ETH: Ethernet MAC, in 100Mbps mode
    • PHY connected via RMII
    • STM32 generates 50MHz refclk for PHY
  • USBH/USBOTG: Support for one USB host, one OTG device
    • Device exposes standard load interface
    • Support for boot over USB


  • PB9: Front panel reset
  • PC0: Ethernet PHY reset
  • PC12: I2C2 mux reset
  • PF6: Expansion connector power enable
  • PF7: Expansion CAN termination
  • PF9: Expansion CAN controller reset
  • PZ6: Status LED (bicolor, 0/1/Z mode)

External IRQs

  • PD2: I2C2 mux irq
  • PA5: Ethernet PHY irq
  • PC12: SPI3 irq

Cortex M4

These peripherals are reserved for the exclusive use of the Cortex M4 core, which runs the real-time control loop and a few other tasks better suited to an RTOS environment.


  • I2C1: Analog interface (low speed)
    • Used for IDPROM, fan controller, temperature sensing, etc.
    • Runs at ~400kbps
  • SPI5: Analog interface (high speed) 
    • Runs at up to 20MHz
    • Up to 7 devices (3-bit select code)
  • UART5: Debug console


  • TIM2: Magnetic transducer (beeper)
    • PA3, Ch4 PWM output
  • TIM4: Front LCD backlight
    • PB7, Ch2 PWM output


  • PA12: SPI select bit 1
  • PD8: Analog interface reset
  • PD13: Status LED (green)
  • PE11: SPI select bit 2
  • PF8: Status LED (blue)
  • PG5: Status LED (red)

External IRQs

  • PG3: Analog interface
  • PA4: Front panel encoder “A”
  • PA5: Front panel encoder “B”
  • PG8: External trigger
  • PF10: Zero crossing detect