Skip to content

Commit

Permalink
Update CxPilot-7 to ArduPilot 4.5.7
Browse files Browse the repository at this point in the history
SW-454
  • Loading branch information
robertlong13 authored Nov 21, 2024
2 parents 157dee4 + 0358a9c commit db336dc
Show file tree
Hide file tree
Showing 37 changed files with 1,317 additions and 52 deletions.
69 changes: 69 additions & 0 deletions AntennaTracker/ReleaseNotes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,71 @@ Changes from 4.5.5
------------------------------------------------------------------
Release 4.5.5 1st Aug 2024

No changes from 4.5.5-beta2
------------------------------------------------------------------
Release 4.5.7 08 Oct 2024

Changes from 4.5.7-beta1

1) Reverted Septentrio GPS sat count correctly drops to zero when 255 received
------------------------------------------------------------------
Release 4.5.7-beta1 26 Sep 2024

Changes from 4.5.6

1) Bug fixes and minor enhancements

- VUAV-V7pro support
- CUAV-7-Nano correction for LEDs and battery volt and current scaling
- DroneCAN deadlock and saturation of CAN bus fixed
- DroneCAN DNA server init fix (caused logging issues and spam on bus)
- F4 boards with inverter support correctly uninvert RX/TX
- Nanoradar M72 radar driver fix for object avoidance path planning
- RC support for latest version of GHST
- Septentrio GPS sat count correctly drops to zero when 255 received

2) ROS2/DDS and other developer focused enhancements

- AP quaternions normalised for ROS2 to avoid warnings
- Dependencies fixed for easier installation
- ROS2 SITL launch file enhancements including displaying console and map
- ROS_DOMAIN_ID param added to support multiple vehicles or instances of ROS2
- Python 3.12 support
------------------------------------------------------------------
Release 4.5.6 03 Sep 2024

No changes from 4.5.6-beta1
------------------------------------------------------------------
Release 4.5.6-beta1 20 Aug 2024

Changes from 4.5.5

1) Board specific enhancements and bug fixes

- 3DR Control Zero H7 Rev G support
- CUAV-7-Nano support
- FoxeerF405v2 servo outputs increased from 9 to 11
- Holybro Pixhawk6C hi-power peripheral overcurrent reporting fixed
- iFlight 2RAW H7 support
- MFT-SEMA100 support
- TMotorH743 support BMI270 baro
- ZeroOneX6 support

2) Minor enhancements and bug fixes

- Cameras using MAVLink report vendor and model name correctly
- DroneCAN fix to remove occasional NodeID registration error
- GPS NMEA and GSoF driver ground course corrected (now always 0 ~ 360 deg)
- ICP101XX barometer slowed to avoid I2C communication errors
- IMU temp cal param (INSn_ACCSCAL_Z) stored correctly when bootloader is flashed
- IMU gyro/accel duplicate id registration fixed to avoid possible pre-arm failure
- Logging to flash timestamp fix
- OSD displays ESC temp instead of motor temp
- PID controller error calculation bug fix (was using target from prev iteration)
- Relay on MAIN pins fixed
------------------------------------------------------------------
Release 4.5.5 1st Aug 2024

No changes from 4.5.5-beta2
------------------------------------------------------------------
Release 4.5.5-beta2 27 July 2024
Expand Down Expand Up @@ -241,6 +306,10 @@ No changes from 4.5.0-beta4
------------------------------------------------------------------
Release 4.5.0 2nd April 2024

No changes from 4.5.0-beta4
------------------------------------------------------------------
Release 4.5.0 2nd April 2024

No changes from 4.5.0-beta4
------------------------------------------------------------------
Release 4.5.0-beta4 22nd March 2024
Expand Down
6 changes: 3 additions & 3 deletions AntennaTracker/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@

#include "ap_version.h"

#define THISFIRMWARE "AntennaTracker V4.5.6"
#define THISFIRMWARE "AntennaTracker V4.5.7"

// the following line is parsed by the autotest scripts
#define FIRMWARE_VERSION 4,5,6,FIRMWARE_VERSION_TYPE_OFFICIAL
#define FIRMWARE_VERSION 4,5,7,FIRMWARE_VERSION_TYPE_OFFICIAL

#define FW_MAJOR 4
#define FW_MINOR 5
#define FW_PATCH 6
#define FW_PATCH 7
#define FW_TYPE FIRMWARE_VERSION_TYPE_OFFICIAL

#include <AP_Common/AP_FWVersionDefine.h>
30 changes: 30 additions & 0 deletions ArduCopter/ReleaseNotes.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,35 @@
ArduPilot Copter Release Notes:
------------------------------------------------------------------
Release 4.5.7 08 Oct 2024

Changes from 4.5.7-beta1

1) Reverted Septentrio GPS sat count correctly drops to zero when 255 received
------------------------------------------------------------------
Release 4.5.7-beta1 26 Sep 2024

Changes from 4.5.6

1) Bug fixes and minor enhancements

- VUAV-V7pro support
- CUAV-7-Nano correction for LEDs and battery volt and current scaling
- DroneCAN deadlock and saturation of CAN bus fixed
- DroneCAN DNA server init fix (caused logging issues and spam on bus)
- F4 boards with inverter support correctly uninvert RX/TX
- Nanoradar M72 radar driver fix for object avoidance path planning
- RC support for latest version of GHST
- Septentrio GPS sat count correctly drops to zero when 255 received
- TradHeli DDVP tail rotor pitch actuator fixed

2) ROS2/DDS and other developer focused enhancements

- AP quaternions normalised for ROS2 to avoid warnings
- Dependencies fixed for easier installation
- ROS2 SITL launch file enhancements including displaying console and map
- ROS_DOMAIN_ID param added to support multiple vehicles or instances of ROS2
- Python 3.12 support
------------------------------------------------------------------
Release 4.5.6 03 Sep 2024

No changes from 4.5.6-beta1
Expand Down
6 changes: 3 additions & 3 deletions ArduCopter/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@

#include "ap_version.h"

#define THISFIRMWARE "ArduCopter V4.5.6"
#define THISFIRMWARE "ArduCopter V4.5.7"

// the following line is parsed by the autotest scripts
#define FIRMWARE_VERSION 4,5,6,FIRMWARE_VERSION_TYPE_OFFICIAL
#define FIRMWARE_VERSION 4,5,7,FIRMWARE_VERSION_TYPE_OFFICIAL

#define FW_MAJOR 4
#define FW_MINOR 5
#define FW_PATCH 6
#define FW_PATCH 7
#define FW_TYPE FIRMWARE_VERSION_TYPE_OFFICIAL

#include <AP_Common/AP_FWVersionDefine.h>
30 changes: 30 additions & 0 deletions ArduPlane/ReleaseNotes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,36 @@ Technical

ArduPilot Plane Release Notes:
------------------------------------------------------------------
Release 4.5.7 08 Oct 2024

Changes from 4.5.7-beta1

1) Reverted Septentrio GPS sat count correctly drops to zero when 255 received
------------------------------------------------------------------
Release 4.5.7-beta1 26 Sep 2024

Changes from 4.5.6

1) Bug fixes and minor enhancements

- VUAV-V7pro support
- CUAV-7-Nano correction for LEDs and battery volt and current scaling
- DroneCAN deadlock and saturation of CAN bus fixed
- DroneCAN DNA server init fix (caused logging issues and spam on bus)
- F4 boards with inverter support correctly uninvert RX/TX
- Nanoradar M72 radar driver fix for object avoidance path planning
- Plane fix to ability to disable the takeoff atititude checks
- RC support for latest version of GHST
- Septentrio GPS sat count correctly drops to zero when 255 received

2) ROS2/DDS and other developer focused enhancements

- AP quaternions normalised for ROS2 to avoid warnings
- Dependencies fixed for easier installation
- ROS2 SITL launch file enhancements including displaying console and map
- ROS_DOMAIN_ID param added to support multiple vehicles or instances of ROS2
- Python 3.12 support
------------------------------------------------------------------
Release 4.5.6 03 Sep 2024

No changes from 4.5.6-beta1
Expand Down
2 changes: 1 addition & 1 deletion ArduPlane/takeoff.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ bool Plane::auto_takeoff_check(void)
bool do_takeoff_attitude_check = !(flight_option_enabled(FlightOptions::DISABLE_TOFF_ATTITUDE_CHK));
#if HAL_QUADPLANE_ENABLED
// disable attitude check on tailsitters
do_takeoff_attitude_check = !quadplane.tailsitter.enabled();
do_takeoff_attitude_check &= !quadplane.tailsitter.enabled();
#endif

if (!takeoff_state.launchTimerStarted && !is_zero(g.takeoff_throttle_min_accel)) {
Expand Down
6 changes: 3 additions & 3 deletions ArduPlane/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@

#include "ap_version.h"

#define THISFIRMWARE "ArduPlane V4.5.6"
#define THISFIRMWARE "ArduPlane V4.5.7"

// the following line is parsed by the autotest scripts
#define FIRMWARE_VERSION 4,5,6,FIRMWARE_VERSION_TYPE_OFFICIAL
#define FIRMWARE_VERSION 4,5,7,FIRMWARE_VERSION_TYPE_OFFICIAL

#define FW_MAJOR 4
#define FW_MINOR 5
#define FW_PATCH 6
#define FW_PATCH 7
#define FW_TYPE FIRMWARE_VERSION_TYPE_OFFICIAL

#include <AP_Common/AP_FWVersionDefine.h>
29 changes: 29 additions & 0 deletions Rover/ReleaseNotes.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,34 @@
Rover Release Notes:
------------------------------------------------------------------
Release 4.5.7 08 Oct 2024

Changes from 4.5.7-beta1

1) Reverted Septentrio GPS sat count correctly drops to zero when 255 received
------------------------------------------------------------------
Release 4.5.7-beta1 26 Sep 2024

Changes from 4.5.6

1) Bug fixes and minor enhancements

- VUAV-V7pro support
- CUAV-7-Nano correction for LEDs and battery volt and current scaling
- DroneCAN deadlock and saturation of CAN bus fixed
- DroneCAN DNA server init fix (caused logging issues and spam on bus)
- F4 boards with inverter support correctly uninvert RX/TX
- Nanoradar M72 radar driver fix for object avoidance path planning
- RC support for latest version of GHST
- Septentrio GPS sat count correctly drops to zero when 255 received

2) ROS2/DDS and other developer focused enhancements

- AP quaternions normalised for ROS2 to avoid warnings
- Dependencies fixed for easier installation
- ROS2 SITL launch file enhancements including displaying console and map
- ROS_DOMAIN_ID param added to support multiple vehicles or instances of ROS2
- Python 3.12 support
------------------------------------------------------------------
Release 4.5.6 03 Sep 2024

No changes from 4.5.6-beta1
Expand Down
6 changes: 3 additions & 3 deletions Rover/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@

#include "ap_version.h"

#define THISFIRMWARE "ArduRover V4.5.6"
#define THISFIRMWARE "ArduRover V4.5.7"

// the following line is parsed by the autotest scripts
#define FIRMWARE_VERSION 4,5,6,FIRMWARE_VERSION_TYPE_OFFICIAL
#define FIRMWARE_VERSION 4,5,7,FIRMWARE_VERSION_TYPE_OFFICIAL

#define FW_MAJOR 4
#define FW_MINOR 5
#define FW_PATCH 6
#define FW_PATCH 7
#define FW_TYPE FIRMWARE_VERSION_TYPE_OFFICIAL

#include <AP_Common/AP_FWVersionDefine.h>
2 changes: 2 additions & 0 deletions Tools/ardupilotwaf/ap_library.py
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,8 @@ def scan(self):

# force dependency scan, if necessary
self.compiled_task.signature()
if not self.compiled_task.uid() in self.generator.bld.node_deps:
return r, []
for n in self.generator.bld.node_deps[self.compiled_task.uid()]:
# using common Node methods doesn't work here
p = n.abspath()
Expand Down
6 changes: 5 additions & 1 deletion Tools/ardupilotwaf/chibios.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,11 @@
_dynamic_env_data = {}
def _load_dynamic_env_data(bld):
bldnode = bld.bldnode.make_node('modules/ChibiOS')
tmp_str = bldnode.find_node('include_dirs').read()
include_dirs_node = bldnode.find_node('include_dirs')
if include_dirs_node is None:
_dynamic_env_data['include_dirs'] = []
return
tmp_str = include_dirs_node.read()
tmp_str = tmp_str.replace(';\n','')
tmp_str = tmp_str.replace('-I','') #remove existing -I flags
# split, coping with separator
Expand Down
4 changes: 2 additions & 2 deletions Tools/ardupilotwaf/git_submodule.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ def runnable_status(self):
else:
r = Task.RUN_ME

if self.non_fast_forward:
if getattr(self,'non_fast_forward',[]):
r = Task.SKIP_ME

return r
Expand Down Expand Up @@ -148,7 +148,7 @@ def git_submodule(bld, git_submodule, **kw):
def _post_fun(bld):
Logs.info('')
for name, t in _submodules_tasks.items():
if not t.non_fast_forward:
if not getattr(t,'non_fast_forward',[]):
continue
Logs.warn("Submodule %s not updated: non-fastforward" % name)

Expand Down
Binary file added Tools/bootloaders/VUAV-V7pro_bl.bin
Binary file not shown.
24 changes: 20 additions & 4 deletions Tools/ros2/README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,34 @@
# ArduPilot ROS 2 packages

This directory contains ROS 2 packages and configuration files for running
ROS 2 processes and nodes that communicate with the ArduPilot DDS client
library using the microROS agent. It contains the following packages:
This directory contains ROS 2 packages and configuration files for running
ROS 2 processes and nodes that communicate with the ArduPilot DDS client
library using the microROS agent. It contains the following packages:

#### `ardupilot_sitl`

A `colcon` package for building and running ArduPilot SITL using the ROS 2 CLI.
This is a `colcon` package for building and running ArduPilot SITL using the ROS 2 CLI.
For example `ardurover` SITL may be launched with:

```bash
ros2 launch ardupilot_sitl sitl.launch.py command:=ardurover model:=rover
```

Other launch files are included with many arguments.
Some common arguments are exposed and forwarded to the underlying process.

For example, MAVProxy can be launched, and you can enable the `console` and `map`.
```bash
ros2 launch ardupilot_sitl sitl_mavproxy.launch.py map:=True console:=True
```

ArduPilot SITL does not yet expose all arguments from the underlying binary.
See [#27714](https://github.com/ArduPilot/ardupilot/issues/27714) for context.

To see all current options, use the `-s` argument:
```bash
ros2 launch ardupilot_sitl sitl.launch.py -s
```

#### `ardupilot_dds_test`

A `colcon` package for testing communication between `micro_ros_agent` and the
Expand Down
3 changes: 3 additions & 0 deletions Tools/ros2/ardupilot_dds_tests/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,15 @@
<test_depend>ament_lint_auto</test_depend>
<test_depend>ardupilot_msgs</test_depend>
<test_depend>ardupilot_sitl</test_depend>
<test_depend>builtin_interfaces</test_depend>
<test_depend>launch</test_depend>
<test_depend>launch_pytest</test_depend>
<test_depend>launch_ros</test_depend>
<exec_depend>micro_ros_msgs</exec_depend>
<test_depend>python3-pytest</test_depend>
<test_depend>rclpy</test_depend>
<test_depend>sensor_msgs</test_depend>


<export>
<build_type>ament_python</build_type>
Expand Down
6 changes: 6 additions & 0 deletions Tools/ros2/ardupilot_sitl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,12 @@ install(DIRECTORY
DESTINATION share/${PROJECT_NAME}/config/
)

# Install additional autotest model params.
install(DIRECTORY
${ARDUPILOT_ROOT}/Tools/autotest/models
DESTINATION share/${PROJECT_NAME}/config/
)

# Install Python package.
ament_python_install_package(${PROJECT_NAME}
PACKAGE_DIR src/${PROJECT_NAME}
Expand Down
8 changes: 8 additions & 0 deletions Tools/ros2/ardupilot_sitl/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,15 @@
<buildtool_depend>ament_cmake</buildtool_depend>
<buildtool_depend>ament_cmake_python</buildtool_depend>

<exec_depend>ardupilot_msgs</exec_depend>
<exec_depend>builtin_interfaces</exec_depend>
<exec_depend>geographic_msgs</exec_depend>
<exec_depend>geometry_msgs</exec_depend>
<exec_depend>micro_ros_agent</exec_depend>
<exec_depend>rosgraph_msgs</exec_depend>
<exec_depend>sensor_msgs</exec_depend>
<exec_depend>std_msgs</exec_depend>
<exec_depend>tf2_msgs</exec_depend>

<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_cmake_black</test_depend>
Expand Down
Loading

0 comments on commit db336dc

Please sign in to comment.