NTSB finding · Aircraft › Aircraft systems › Communications system

Cases
7
In the probable cause
6 (86%)
Fatal cases
2
NTSB code
01022300

NTSB has coded findings and defining events since 2008. Earlier cases used its older occurrence and cause codes, so they aren’t counted here.

When and where

In green, cases where NTSB made it part of the probable cause; in gray, a factor or other finding. Findings are coded with the final report, often a year or more after the event, so the latest years are incomplete.

Cases per year

2008In the probable causeFactor only2026
Cases with Communications system, general per year: 7 cases
20161
20171
20201
20212
20221
20261
Query with SQL
duckdb -csv -c "SELECT year(c.\"eventDate\") AS year, count(DISTINCT f.case_mkey) AS cases,
    count(DISTINCT f.case_mkey) FILTER (WHERE f.\"inProbableCause\") AS in_probable_cause
  FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' f JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c.\"mKey\" = f.case_mkey
  WHERE starts_with(f.\"findingCode\", '01022300') AND c.\"eventDate\" >= DATE '2000-01-01'
  GROUP BY 1
  ORDER BY 1"

Prints the counts as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

In the same cases

Query with SQL
duckdb -csv -c "WITH matched AS (SELECT DISTINCT case_mkey, aircrafts_position FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' WHERE starts_with(\"findingCode\", '01022300'))
  SELECT * FROM (
  SELECT 'Defining event' AS kind, e.\"tier2Number\" AS code, max(e.\"eventTier2Name\") AS name, count(DISTINCT f.case_mkey) AS cases
  FROM matched f JOIN 'https://openairdocs.org/data/latest/ntsb_events.parquet' e ON e.case_mkey = f.case_mkey AND e.aircrafts_position = f.aircrafts_position AND e.\"isDefiningEvent\"
  WHERE e.\"tier2Number\" <> ''
  GROUP BY ALL
  UNION ALL
  SELECT 'Aircraft model', a.aircraft_model_code, any_value(concat_ws(' ', m.manufacturer, m.model)), count(DISTINCT f.case_mkey)
  FROM matched f JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = f.case_mkey AND a.position = f.aircrafts_position
  LEFT JOIN 'https://openairdocs.org/data/latest/faa_aircraft_model.parquet' m ON m.code = a.aircraft_model_code
  WHERE a.aircraft_model_code IS NOT NULL
  GROUP BY ALL
  UNION ALL
  SELECT 'Other finding', left(g.\"findingCode\", 8), max(g.\"tier4Name\"), count(DISTINCT g.case_mkey)
  FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' g
  WHERE g.case_mkey IN (SELECT case_mkey FROM matched) AND NOT starts_with(g.\"findingCode\", '01022300') AND g.\"findingCode\" GLOB '[0-9][0-9]*'
  GROUP BY ALL
  )
  QUALIFY row_number() OVER (PARTITION BY kind ORDER BY cases DESC) <= 10
  ORDER BY kind, cases DESC"

Prints the counts as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.

Newest cases · 7

NTSB WPR26LA083Accident · No injuriesClass 4 · LimitedFinal reportRobinson R44 · Parkman, WYThe pilots’ failure to maintain separation while conducting air work in a common operational area. Contributing to the accident was the pilots’ divided attention associated with the mission activity and unreliable radio communications.Jan 19, 2026 · N996NR · 2 aircraft · Substantial damageNTSB ERA22LA215Accident · Serious injuriesClass 3 · LimitedFinal reportCessna 414 · Connellsville, PAThe pilot/mechanic’s failure to properly secure two airplane avionics units, which resulted in the trays supporting the units to sag downward and become lodged in the movement area of the elevator bellcrank during the accident takeoff.May 2, 2022 · N46TA · Substantial damageNTSB CEN22FA081Accident · 2 fatalClass 3 · FieldFinal reportCessna 208 · Fulshear, TXThe limitations of the see-and-avoid concept as a method for self-separation of aircraft, which resulted in an inflight collision. Contributing to the accident was the absence of collision avoidance technology on both aircraft.Dec 21, 2021 · N1116N · 2 aircraft · DestroyedNTSB WPR21LA348Accident · No injuriesClass 4 · LimitedFinal reportCessna 172N · Grass Valley, CAThe pilot’s failure to attain a proper touchdown point on the runway while landing in gusting wind conditions, which resulted in a runway overrun. Contributing to the accident was the pilot’s distraction due to an electrical issue.Sep 19, 2021 · N4977G · Substantial damageNTSB CEN21LA040Accident · Serious injuriesClass 3 · LimitedFinal reportPiper J3C · Weslaco, TXThe pilot of N87715 inadvertently allowed his airplane to drift right of the runway during the climb after a touch-and-go landing, and the pilot of N6463H did not maintain adequate separation from the other airplane during his go-around. Contributing to the…Nov 3, 2020 · N87715 · 2 aircraft · Substantial damageNTSB ERA18LA034Accident · No injuriesLimited investigationFinal reportAero Commander 112 · Westminister, MDThe student pilot's failure to maintain a proper glidepath during the approach due to his distraction by the failure of an avionics panel, which resulted in a runway undershoot.Nov 29, 2017 · N690RU · Substantial damageNTSB WPR16FA111Accident · 1 fatalField investigationFinal reportCessna R182 · Altadena, CAThe pilot's failure to maintain clearance from rising mountainous terrain while flying in instrument meteorological conditions. Contributing to the accident was the loss of radio communications for a reason that could not be determined because of the…May 15, 2016 · N133BW · Destroyed
Query with SQL
duckdb -csv -c "SELECT c.\"ntsbNumber\", c.\"eventDate\", c.\"eventType\", c.\"eventCity\", c.\"eventStateOrRegion\", a.n_number, a.\"aircraftMake\", a.\"aircraftModel\", c.\"highestInjuryLevel\", c.\"totalFatal\", c.\"completionStatus\", c.report_url
  FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = c.\"mKey\" AND a.position = 1
  WHERE c.\"mKey\" IN (SELECT f.case_mkey FROM 'https://openairdocs.org/data/latest/ntsb_findings.parquet' f WHERE starts_with(f.\"findingCode\", '01022300'))
  ORDER BY c.\"eventDate\" DESC, c.\"ntsbNumber\" DESC"

Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.