mirror of
https://github.com/ArduPilot/ardupilot.git
synced 2026-10-06 19:00:27 +08:00
pre-commit / ci (push) Canceled after 0s
test Renode / cubeorangeplus-quadplane (push) Canceled after 0s
test scripts / build (astyle-cleanliness) (push) Canceled after 0s
test scripts / build (check_autotest_options) (push) Canceled after 0s
test scripts / build (logger_metadata) (push) Canceled after 0s
test scripts / build (param-file-validation) (push) Canceled after 0s
test scripts / build (param_parse) (push) Canceled after 0s
test scripts / build (python-cleanliness) (push) Canceled after 0s
test scripts / build (shellcheck) (push) Canceled after 0s
test scripts / build (validate_board_list) (push) Canceled after 0s
Rather than maintaining copies of the bus and device type tables, decode_devid.py now parses the enums in AP_HAL/Device.h, AP_SerialManager.h and the compass, IMU, baro and airspeed backend headers using logger_metadata/enum_parse.py. A small rename map keeps established display names (DRONECAN, AK0991x), and the retired LIS2MDL ID, which is in no enum, is listed explicitly. Comments on enum entries are shown as warnings when decoding. --dump-json and --dump-json5 write the tables, with a format_version and a content-hash data_version, for tools without a source tree; --json reads such a file back. A copy of the script outside an ArduPilot tree (as synced by MethodicConfigurator) reads devid.json from its own directory. The files are published alongside LogMessages.* by build_log_message_documentation.sh, and CI dumps them in the logger_metadata step so that header changes which break parsing are caught. The tables had drifted from the headers: ACC_LSM9DS1, INS_ZEROONE_FPGA_SCH16T and INS_ICM56686 were missing, MMC5883 is now MMC5983, AK8963/BMM150 had trailing spaces, and several names now follow the headers.