this affects boards that share sdcard on the same bus as another SPI
device. In this case it was a QiotekZealotH743 where logging stopped
this issue is that the SPI hooks for MMC SPI did not do a DMA channel
lock before the SPI device lock. So when the RAMTRON driver on the
QiotekZealotH743 which is on the same SPI2 bus as the sdcard did an
operation we had a lock order violation
Add launch module to ardupilot_sitl package
- Move body of launch scripts into package for reuse.
- Add utilities module.
Update launch scripts
- Provide type hints.
- Add arguments to sitl.launch.py.
- Fix formatting bug in sitl.launch.py home argument.
Update micro_ros_agent launch script
- Modify import for lauch_ros.actions.Node.
- Change argument order in node initialiser.
- Add args for UDP transport and set as default.
Update ROS 2 DDS default params
- Add default params for both serial and UDP transports.
- Add DDS_ENABLE.
Rename ROS 2 sitl_dds launch script
- Rename sitl_dds launch script with serial suffix.
- Add launch script for UDP transport.
Update ROS 2 launch test fixtures
- Make common test fixtures more granular.
- Add fixtures and tests for UDP transport.
- Update ROS 2 package.xml dependencies
- Use yield rather than return in test fixtures.
- Use ardupilot_sitl launch module directly.
- Correct return type descriptions.
- Fix flake8 failure.
Update ROS 2 README
- Update launch instructions.
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
if you have a mission item for engine control with delayed start at
height and the engine is already running them it would put the ICE
subsystem into a state where it would no longer start the engine
It was actually 2 bugs:
- an engine control to do a height delayed start should be ignored if
the engine is already running. This prevents an engine control to
start the engine from stopping the engine
- a start_chan high should always try to start the engine
immediately, even if in the wait state