# # Abstract node status information. # # Any UAVCAN node is required to publish this message periodically. # # # Publication period may vary within these limits. # It is NOT recommended to change it at run time. # uint16 MAX_BROADCASTING_PERIOD_MS = 1000 uint16 MIN_BROADCASTING_PERIOD_MS = 2 # # If a node fails to publish this message in this amount of time, it should be considered offline. # uint16 OFFLINE_TIMEOUT_MS = 3000 # # Uptime counter should never overflow. # Other nodes may detect that a remote node has restarted when this value goes backwards. # uint32 uptime_sec # # Abstract node health. # uint2 HEALTH_OK = 0 # The node is functioning properly. uint2 HEALTH_WARNING = 1 # A critical parameter went out of range or the node encountered a minor failure. uint2 HEALTH_ERROR = 2 # The node encountered a major failure. uint2 HEALTH_CRITICAL = 3 # The node suffered a fatal malfunction. uint2 health # # Current mode. # # Mode OFFLINE can be actually reported by the node to explicitly inform other network # participants that the sending node is about to shutdown. In this case other nodes will not # have to wait OFFLINE_TIMEOUT_MS before they detect that the node is no longer available. # # Reserved values can be used in future revisions of the specification. # uint3 MODE_OPERATIONAL = 0 # Normal operating mode. uint3 MODE_INITIALIZATION = 1 # Initialization is in progress; this mode is entered immediately after startup. uint3 MODE_MAINTENANCE = 2 # E.g. calibration, the bootloader is running, etc. uint3 MODE_SOFTWARE_UPDATE = 3 # New software/firmware is being loaded. uint3 MODE_OFFLINE = 7 # The node is no longer available. uint3 mode # # Not used currently, keep zero when publishing, ignore when receiving. # uint3 sub_mode # # Optional, vendor-specific node status code, e.g. a fault code or a status bitmask. # uint16 vendor_specific_status_code