DUAS xx23 - Software Coding?

Initial Report

Note: this originated from AAIB report no 29959

Type of report: Accident

Aircraft Type and Registration: UAS Malloy Aeronautics T005

No & Type of Engines: 4 Electric T-Motor Engines

Year of Manufacture: 2024 (Serial no: 31)

Date & Time (UTC): 2 April 2024 at 1530 hrs

Location: White Waltham Airfield, Berkshire

Type of Flight: Experimental test flight

Persons on Board: Crew – None. Passengers – None

Injuries: Crew – N/A. Passengers – N/A

Nature of Damage: UA damaged beyond economic repair

Commander’s Licence: General line of sight certificate (GVC)

Commander’s Age: 33 years

Commander’s Flying Experience: 177 hours (of which 2 were on type). Last 90 days – 3 hours. Last 28 days – 1 hour

Information Source: Aircraft Accident Report Form submitted by the pilot and further enquiries by the AAIB

Synopsis: During a test flight to validate a flight control software update, the UA climbed and veered left. It then descended and struck two unoccupied General Aviation (GA) aircraft, coming to rest underneath the second. The UA was destroyed. The operator’s investigation identified that the UA lost control due to the software commanding more thrust than needed for level flight. Several technical, process and human performance factors contributed to the accident. The operator has taken thirteen safety actions to prevent reoccurrence.

History of the flight: A test flight was being conducted to validate a software update, which implemented visual tracking and following capability when flown in auto mode. The Remote Pilot (RP) was assisted by Command Unit Operator (CUO) and a Competent Observer (CO). The flight was being operated under the Open A3 Category. The flight was planned to take place at White Waltham Airfield, within the area (shown in white in Figure 1) designated for use as a UA site by the airfield and at least 150 m away from any buildings. After the airfield granted the operator permission for the flight, the operator’s flight team prepared the UA and conducted a team briefing and a set of pre-flight checks.

After being powered on, the UA was unable to acquire a GNSS signal, preventing a geofence, which mirrored the white area shown in Figure 1, from being applied. The RP decided to proceed with the flight on the basis that several means to activate the Flight Termination System (FTS) were available in case of an emergency. The team launched the UA and completed a short flight which validated the stabilised, alt hold and loiter flight modes. The UA was then repositioned. The RP launched the UA and, when he selected the auto mode, the UA climbed and veered left.

The RP was reported to have shouted “kill, kill, kill” and attempted to activate the FTS from his controller, which was not successful. The RP then used the backup controller to activate the FTS, which was successful. The RP and CUO then lost sight of the UA as it descended to the ground, with the CUO and CO both hearing ‘an impact with what they assumed to be one of the unoccupied GA aircraft parked outside a nearby hangar’.

Conclusion: The accident occurred because, when auto mode was activated, excessive throttle was commanded by the flight control software which caused the UA to veer to the left. The operator identified that the software commanded excess throttle because the flight model and feedback loops were inappropriately tuned. The flight team were unable to activate the FTS in a timely manner, in part because the pre-flight briefing did not sufficiently prepare them for enacting the emergency procedures, and because the software was designed to ignore FTS commands from the RP’s primary controller when in auto mode. However, the FTS did successfully activate when invoked from the backup controller. Although the RP initially refused to operate the flight when the geofence could not be applied, his decision was swayed by the fact that the geofencing is not required for Open Category flight, and because a previous T005 flight had taken place where a geofence was not used.

Safety actions: The operator has taken the following technical-related safety action:

 

CHIRP Comment

The CHIRP Advisory Board had several points they thought relevant:

Software Design issues. As a general remark regarding building software to digitise a sequence of actions, the Board observed that whilst there are many very capable coders out there, rare indeed is a coder that can write something from a user’s perspective. This just means that robust testing of “what if” scenarios on the ground needs to be undertaken before it is tested in flight. This includes good practice after a software update has been downloaded – see Safety Notice SN-2025/004. This Safety Notice recommends UAS operators and remote pilots flight test an unmanned aircraft after any [software] update or modification.