  OpenIPMC is a free and open source firmware designed to operate as an
Intelligent Platform Management Controller (IPMC). An IPMC is a fundamental
component of electronic boards conformant to the Advanced Telecommunications
Computing Architecture (ATCA) standard, currently being adopted by a number of
high energy physics experiments, and is responsible for monitoring the health
parameters of the board, managing its power states, and providing board
control, debug and recovery functions to remote clients. OpenIPMC is based on
the FreeRTOS real-time operating system and is designed to be
architecture-independent, allowing it to be built for a variety of different
Microcontrollers. Having a fully free and open source code is an innovative
aspect for this kind of firmware, allowing full customization by the user. In
this work we present the features and structure of OpenIPMC and its example
implementations on Xilinx Zynq UltraScale+ (ZynqUS+), Espressif ESP32, and ST
Microelectronics STM32 architectures.
