[WIP] System Monitoring MCU

We have reserved several pins for the system monitoring MCU on the panel, including 1x RS232, 1x isolated CAN, 1x isolated DO, and 1x ignition input. Please refer to the pinout details on this page [link].

The purpose of each I/O is as follows:

  • MCU_RS232 – An interactive interface for sending commands and querying results once the MCU is powered up.

  • MCU_STATUS – Indicates the CPU status based on heartbeat checks and continuous handshakes.

  • MCU_CAN – A one-way interface that continuously sends onboard voltage, current, and thermal sensor information. This CAN bus is only functional after the sustain power is ready.

  • MCU_IGNITION – The ignition input for ignition power control.


Installation

We have prepared a sample program to demonstrate the system monitoring MCU on Ubuntu 24.04. Please use the following commands to download and install the sample code.

...

Remote Control via MCU RS232

The RGS-9805GC uses an MCU-based approach to provide a remote control feature. You can send the following command to the MCU via RS232 for power management. The RS232 settings are 115200 8E1 (please double-check the even parity setting).

Remote Power Control

Ignition Power Control

Boot Log

Check MCU Version

Check Sensor Info

The example sensor log shows timestamps in milliseconds after the onboard MCU powers on, with updates every second.


Sensor Monitoring Port vis MCU Isolated CAN 2.0

The MCU will send the sensor information (as shown in the MCU RS232 section) every second after decoding.

An decoding example could be found here (TBD).


System Status via MCU Isolated DO

SYSTEM_STATUS reflects the host computer’s proper operation within 10 ms, based on one CPU heartbeat and two MCU-to-CPU handshakes.

SYSTEM_STATUS remains high if:

  • The MCU receives at least 95% of CPU heartbeats within an 8 ms window. (app)

  • The OS-level handshake service (e.g., acpid) responds to the MCU’s rising edge within 5 ms. The MCU sends a handshake every 3 ms.

  • The app-level handshake service responds to the MCU’s rising edge within 5 ms. The MCU sends a handshake every 3 ms.

Otherwise, SYSTEM_STATUS becomes low.

Last updated