diff --git a/CMakeLists.txt b/CMakeLists.txt index 5978290..539c13a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,10 @@ project(libdcnode VERSION 0.6.0 LANGUAGES C CXX) # # 1. Generate DSDL # -set(DSDL_IN_DIR "${CMAKE_CURRENT_LIST_DIR}/Libs/DSDL/uavcan") +set(DSDL_IN_DIRS + "${CMAKE_CURRENT_LIST_DIR}/Libs/DSDL/uavcan" + "${CMAKE_CURRENT_LIST_DIR}/Libs/DSDL/ardupilot" +) set(DSDL_OUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/generated/libdcnode/serialization") set(DSDL_COMPILER "${CMAKE_CURRENT_LIST_DIR}/Libs/dronecan_dsdlc/dronecan_dsdlc.py") include(${CMAKE_CURRENT_LIST_DIR}/cmake/generate_dsdl.cmake) diff --git a/cmake/generate_dsdl.cmake b/cmake/generate_dsdl.cmake index 3933ee9..89f6e92 100644 --- a/cmake/generate_dsdl.cmake +++ b/cmake/generate_dsdl.cmake @@ -22,7 +22,7 @@ endif() if(_run_dsdlc) message(STATUS "Generating DSDL sources into: ${DSDL_OUT_DIR}") execute_process( - COMMAND ${DSDL_COMPILER} -O ${DSDL_OUT_DIR} ${DSDL_IN_DIR} + COMMAND ${DSDL_COMPILER} -O ${DSDL_OUT_DIR} ${DSDL_IN_DIRS} RESULT_VARIABLE ret ) if(NOT ret EQUAL 0) diff --git a/include/libdcnode/pub.hpp b/include/libdcnode/pub.hpp index 481d340..f5cf60e 100644 --- a/include/libdcnode/pub.hpp +++ b/include/libdcnode/pub.hpp @@ -19,7 +19,7 @@ // Max encoded message size (bytes) for publisher stack buffer. // Override via -DLIBDCNODE_MAX_PUB_MESSAGE_SIZE=... if your DSDL set requires more. #ifndef LIBDCNODE_MAX_PUB_MESSAGE_SIZE -#define LIBDCNODE_MAX_PUB_MESSAGE_SIZE 250U +#define LIBDCNODE_MAX_PUB_MESSAGE_SIZE 600U #endif // Initial delay before first publish after boot/reset (ms). @@ -67,6 +67,7 @@ namespace libdcnode LIBDCNODE_DEFINE_PUB_TRAITS(::uavcan_equipment_actuator_Status, UAVCAN_EQUIPMENT_ACTUATOR_STATUS) LIBDCNODE_DEFINE_PUB_TRAITS(::uavcan_equipment_esc_Status, UAVCAN_EQUIPMENT_ESC_STATUS) LIBDCNODE_DEFINE_PUB_TRAITS(::uavcan_equipment_hardpoint_Status, UAVCAN_EQUIPMENT_HARDPOINT_STATUS) + LIBDCNODE_DEFINE_PUB_TRAITS(::ardupilot_equipment_power_BatteryInfoAux, ARDUPILOT_EQUIPMENT_POWER_BATTERYINFOAUX) LIBDCNODE_DEFINE_PUB_TRAITS(::uavcan_equipment_air_data_StaticPressure, UAVCAN_EQUIPMENT_AIR_DATA_STATICPRESSURE) LIBDCNODE_DEFINE_PUB_TRAITS(::uavcan_equipment_range_sensor_Measurement,