Software, filters & technical
Software, filters & technical

TruePath filter

PDF

Trace conditioning

TruePath

Pressure sensors record events that never happened: a charge fires, a nose cone shifts, a gust hits a vent, and the trace carries a spike that no rocket flew. TruePath finds those excursions in the recorded flight, replaces them with the path the vehicle actually took, and leaves everything else alone. Apogee is preserved to the millimetre.

Runs
At save, after TrueFuse
Operates on
Recorded altitude
Never touches
Launch, apogee height
Original kept
Yes, in the log

Where TruePath runs

TrueFuse works in flight, on live sensor data, deciding whether the barometer can be trusted at this instant. TruePath works afterwards, on the finished recording, where the whole flight is available at once and an excursion can be judged against what came before and after it.

That difference in available information is the reason the two exist separately. A live filter cannot know that the sample it just received is the start of a spike rather than the start of a descent. A filter running at save can look several seconds either side and be certain.

flight recording pressure + inertial TrueFuse window repair TruePath despike + finish written log plus untouched original the recorded pressure altitude is stored alongside, before either filter touched it

Fig. 1Order of operations at save. Because the pre filter altitude is stored in the log as well, every claim on this page can be checked against the same flight's own untouched data.

What counts as a spike

A spike is an excursion from a baseline and back to the same baseline. That definition does the heavy lifting, because it excludes the thing an over eager filter would otherwise destroy: sustained motion. A motor burn is not an excursion, it is the signal. A descent under drogue is not an excursion. A vacuum chamber test that walks the pressure down and holds it there is not an excursion.

Typical genuine spikes in flight data:

  • Ejection transients. The charge pressurises the airframe. Depth ranges from a few metres on a small model to tens of metres on a large competition airframe.
  • Nose cone and payload bay movement. A brief change in the internal volume the port sees.
  • Airflow disturbance. Gusts across a vent, or transonic effects near the port.
  • Single sample sensor faults. A dropped or corrupted reading, which shows as an isolated impulse.

Everything TruePath does follows from separating those from real flight, and the whole design leans toward leaving data alone when the distinction is not clear.

Establishing the real path

To tell an excursion from real motion, TruePath first needs a picture of what the trace was doing without the excursion. It builds that picture with outlier resistant statistics rather than averages, because an average is dragged toward a spike while a robust estimate simply steps over it.

One view of the flight is not enough. A narrow view follows the genuine curvature of the trajectory closely but can be overwhelmed by a long disturbance. A wide view shrugs off long disturbances but blurs real curvature, which matters most around apogee where the flight bends hardest. TruePath therefore builds several views at different scales and prefers the narrowest one that is still trustworthy, escalating to a wider view only when the narrow one shows signs of having been captured by the event it is supposed to be ignoring.

narrow view, follows real curvature medium wide, robust to long events spike Each view ignores the excursion rather than being pulled by it. The narrowest trustworthy view wins, so genuine curvature is preserved wherever possible. altitude

Fig. 2Views of the same flight at three scales, spanning under a second to several seconds. All of them are defined in time rather than in samples, so the filter behaves identically whether the flight was recorded at 32 Hz or 400 Hz.

Flag, expand, repair

With a trustworthy view of the flight established, each sample is compared against it. A sample is flagged when it departs by more than either a fixed floor or a multiple of the flight's own measured noise, whichever is larger. Scaling the threshold to the flight itself matters: a quiet installation gets a tight threshold, and a noisy one is not shredded by a filter tuned for somebody else's airframe.

Flagged samples rarely capture the whole event. The approach and the settle either side sit inside the threshold while still being contaminated, so each flagged region is widened by a short margin at both ends, and by more after the event than before it, because a pressure disturbance ends more slowly than it begins.

The repair itself is deliberately the simplest thing that can work. The altitude is interpolated in a straight line between the last good sample before the region and the first good sample after it. No curve is fitted and no shape is invented, because a fitted curve would be a guess about a period when the sensor told us nothing. A second look then re-examines the edges of each repaired region, since large charges leave a slow tail that the first pass can miss.

1 . COMPARE trace against the view 2 . FLAG beyond threshold 3 . WIDEN contaminated edges included, more after than before 4 . REPAIR straight line across

Fig. 3The repair sequence, shown around an ejection dip. On a chart, a repaired region is the one place where the altitude line is straighter than the flight around it.

What it refuses to touch

The most dangerous thing a despiker can do is decide that a long stretch of real flight is one enormous spike and draw a straight line through it. Several independent limits prevent that, and all of them fail toward leaving the data alone.

  • The opening seconds of flight are never modified. The launch contains the fastest genuine altitude change of the entire flight, so it is protected outright. The protection is enforced when the data is written, not only when it is flagged, so a repair region cannot creep backwards into it.
  • Long events are left raw. A flagged region that runs beyond a duration limit is discarded rather than repaired. How far a region bows away from a straight line is taken into account as well as how long it lasts, so gentle descent motion is protected tightly while an unmistakably deep excursion is given more room to be repaired.
  • Sustained artificial events are excluded. A bench vacuum test does not look like one long spike, it fragments into many short ones that can join up. A separate limit bounds the total extent any group of repairs may cover, so fragments cannot combine into a licence to redraw several seconds of data.
  • Apogee is not a target. The apogee region is only touched if there is a genuine excursion in it, and the finishing stage is symmetric, so the recorded peak stays where the flight put it.
Bench testing. Vacuum chamber runs come through unrepaired. A chamber test that walks the pressure down and holds it is real data as far as the filter is concerned, and it is left exactly as recorded.

Apogee

Between the repair and the finish, TruePath establishes where apogee occurred, which the diagnostics report and the finishing stage respects.

A single descending sample means nothing, so apogee is confirmed by persistence: the trace must be consistently falling across a short interval before the flight is accepted as being over the top. Apogee is then the highest recorded altitude between launch and that point, which is the definition a flyer would use by eye. The test is measured in time rather than samples, so it is unchanged across sample rates and across the rate changes that occur when the recorder switches decimation during descent.

The finish

A last stage removes the small residual roughness that remains: the joints where a repair meets real data, isolated single sample noise, and the general quantisation of the pressure sensor.

The choice of smoother matters more than the amount of smoothing. A moving average, the obvious approach, systematically flattens peaks: at apogee it averages in the lower samples either side and reports a lower maximum than the rocket actually reached. TruePath uses a peak preserving smoother instead, one that fits a local curve rather than levelling the data, so the height and the timing of the peak survive the process. Apogee is preserved to within about a millimetre, and apogee timing exactly.

The smoothing spans a fixed amount of flight time rather than a fixed number of samples, so a 250 Hz flight and a 100 Hz flight are conditioned identically and their traces are directly comparable.

a moving average loses real height here recorded trace moving average, peak flattened TruePath, peak preserved altitude

Fig. 4Why the choice of smoother matters. Averaging pulls a peak down because the samples either side of apogee are lower than the peak itself, and the error is worst on exactly the number flyers care about most. A peak preserving smoother removes the same noise without moving the maximum.

Checking it on your own flight

Nothing here has to be taken on trust. Every flight log carries what is needed to audit the filter's work on that specific flight.

Source Contains
Log header TruePath version, and whether it ran
Recorded altitude column The finished result
Original altitude column The same flight before TrueFuse and TruePath
Diagnostics page Measured noise, how much was repaired, raw and finished apogee, descent noise

Charting the two altitude columns together shows precisely which samples were changed and by how much. On a clean flight the difference is a few centimetres of smoothing and nothing else.