Skip to content

7.5 System Status Section

System status refers to the state of the software system, which can be referenced in the previous section Software System Overview.

7.5.2 System Status Retrieval RPC Interface

Section titled “7.5.2 System Status Retrieval RPC Interface”
Interface Name pb:/aimdk.protocol.SystemService/GetSystemState
Function Summary Retrieve system status
Interface Type HTTP JSON RPC
URL http://127.0.0.1:51011/rpc/aimdk.protocol.SystemService/GetSystemState
Input Parameters
{}
Output Parameters
{
  "header": {
    "code": "0",
    "msg": "",
    "trace_id": "",
    "domin": ""
  },
  "cur_state": "EStop",
  "cur_status": "SystemStatus_IN_READY"
}
  • cur_state: Current system state

    • Startup: Starting up state
    • Ready: Startup completed state
    • Manual: Manual operation state
    • MotionStream: Remote operation state
    • OTA: Remote upgrade state
    • Estop: Emergency stop state
    • Poweroff: Power off state
    • Reboot: Rebooting state
    • Reset: Resetting state
    • Safe: Safe state
  • cur_status: Current system condition

    • SystemStatus_IN_INITIAL: Initializing
    • SystemStatus_IN_READY: Transition completed
    • SystemStatus_IN_MOVE: Transitioning
    • SystemStatus_IN_ROLLBACK: Rolling back
    • SystemStatus_IN_RECOVERY: Recovering
Example Script examples/status/get_system_status.sh
Notes
Interface Name pb:/aimdk.protocol.HalBmsService/GetBmsState
Function Summary Retrieve system status
Interface Type HTTP JSON RPC
URL http://127.0.0.1:56421/rpc/aimdk.protocol.HalBmsService/GetBmsState
Input Parameters
{}
Output Parameters
{
  "data": {
    "ver": {
      "hardware_major": 49,
      "hardware_minor": 48,
      "hardware_revision": 49,
      "software_major": 55,
      "software_minor": 48,
      "software_revision": 49
    },
    "voltage": 45460,
    "current": -1156,
    "power": 52551,
    "temperature": 289,
    "capacity": 4220,
    "charge": 29,
    "power_supply_health": "PowerSupplyHealth_GOOD",
    "power_supply_status": "PowerSupplyStatus_IDEL",
    "cycles_num": 1,
    "cycles_capacity": 21,
    "abnormal_state": "PowerAbnormalStatus_NORMAL",
    "charger_state": "ChargerNotPulgin",
    "bms_state": "BatteryStatus_Connected",
    "max_current": 0,
    "battery_firmware_type": "BatteryFirmwareType_OLD",
    "battery_key_state": "BatteryKeyStatus_SHORT_CURCUIT",
    "battery_pack_state": "BatteryPackStatus_NORMAL",
    "battery_comm_state": "BatteryCommunication_NORMAL"
  }
}
  • ver: Version information

  • voltage: Current voltage, unit mV

  • current: Current current, unit mA

  • power: Current power, unit mW

  • temperature: Current temperature, unit 0.1 degrees Celsius

  • capacity: Current capacity, unit: mAh

  • charge: Current charge percentage

  • power_supply_health: Not currently available

  • power_supply_status: Charging status

    • PowerSupplyStatus_IDEL
    • PowerSupplyStatus_CHARGING
    • PowerSupplyStatus_FULL
  • cycles_num: Number of cycles

  • cycles_capacity: Cycle capacity (total charge and discharge capacity of the current battery pack), unit: Ah

  • abnormal_state: Abnormal status

    • PowerAbnormalStatus_NORMAL
    • PowerAbnormalStatus_SHORT_CIRCUIT
    • PowerAbnormalStatus_DISCHARGE_OVERCURRENT
    • PowerAbnormalStatus_CHARGING_OVERCURRENT
    • PowerAbnormalStatus_UNDERVOLTAGE
    • PowerAbnormalStatus_OVERVOLTAGE
    • PowerAbnormalStatus_EXCEED_DISCHARGE_TEMP_LIMIT
    • PowerAbnormalStatus_EXCEED_CHARGING_TEMP_LIMIT
  • charger_state: Whether the charger is plugged in

    • ChargerNotPulgin
    • ChargerConnected
  • bms_state: Whether the battery is connected

    • BatteryStatus_NotPulgin
    • BatteryStatus_Connected
  • max_current: Maximum current

  • battery_firmware_type: Battery pack firmware version

    • BatteryFirmwareType_OLD
    • BatteryFirmwareType_NEW
  • battery_key_state: Battery pack key status

    • BatteryKeyStatus_SHORT_CURCUIT
    • BatteryKeyStatus_CONNECTED
  • battery_pack_state: Battery pack abnormal status

    • BatteryPackStatus_NORMAL
    • BatteryPackStatus_ABNORMAL
  • battery_comm_state: Battery pack communication status

    • BatteryCommunication_NORMAL
    • BatteryCommunication_ABNORMAL
Example Script examples/status/get_bms_status.sh
Notes

7.5.4 Emergency Stop Status Retrieval RPC Interface

Section titled “7.5.4 Emergency Stop Status Retrieval RPC Interface”

When an emergency stop is triggered, an alert will also be issued, and the emergency stop status can be obtained through the GetAlertList. This section provides a separate interface to query the emergency stop status.

Interface Name pb:/aimdk.protocol.HalEmergencyService/GetEmergencyState
Function Summary Retrieve emergency stop status
Interface Type HTTP JSON RPC
URL http://127.0.0.1:56421/rpc/aimdk.protocol.HalEmergencyService/GetEmergencyState
Input Parameters
{}
Output Parameters
{
  "data": {
    "active": true,
    "reason": "Reason_WIRELESS_ESTOP",
    "left_front_sensor_alarm": false,
    "right_front_sensor_alarm": false,
    "left_sensor_alarm": false,
    "right_sensor_alarm": false,
    "left_back_sensor_alarm": false,
    "right_back_sensor_alarm": false,
    "lift_upper_limit_alarm": false,
    "lift_lower_limit_alarm": false,
    "tray_limit_alarm": false,
    "front_left_tof_alarm": false,
    "front_right_tof_alarm": false,
    "right_front_tof_alarm": false,
    "right_back_tof_alarm": false,
    "back_tof_alarm": false,
    "left_back_tof_alarm": false,
    "left_front_tof_alarm": false,
    "wired_emergency_stop": false,
    "wireless_emergency_stop": true,
    "software_emergency_stop": false
  }
}
  • active: Whether the emergency stop is triggered
  • reason: Reason for the emergency stop
  • wireless_emergency_stop: Whether the wireless emergency stop is triggered
  • software_emergency_stop: Whether the software emergency stop is triggered
Other fields are not of concern.
Example Script examples/status/get_estop_status.sh
Notes
  • The soft emergency stop interface is not yet open for secondary development, and cannot be triggered via the interface.
  • If an empty JSON body is returned, it indicates that all parameters are at their default values, meaning the emergency stop has not been triggered.

7.5.5 Software Version Retrieval RPC Interface

Section titled “7.5.5 Software Version Retrieval RPC Interface”
Interface Name pb:/aimdk.protocol.OTAService/GetRobotOtaInfo
Function Summary Retrieve software version information
Interface Type HTTP JSON RPC
URL http://127.0.0.1:57900/rpc/aimdk.protocol.OTAService/GetRobotOtaInfo
Input Parameters
{}
Output Parameters
{
  "robot_info": {
    "model": "A2_T3D1_LITE"
  },
  "current_apk_info": {
    "apk_version": "A2_LITE-v1.2.4-0-g17e2f79fe-2510271122",
    "pub_time": "",
    "soc_info": [],
    "mcu_info": [],
    "contents": "",
    "fota_version": ""
  },
  "support_rollback_apk_infos": []
}
  • apk_version: Software version information
Other fields are not of concern.
Example Script examples/status/get_version_info.sh
Notes