The Saleae software now includes a feature to suppress short digital pulses in the recorded data. It is designed to help remove noise picked up in the digital recording.
There are several sources of noise in digital captures, and you can learn more about them here: Why am I seeing single sample wide spikes or noise in the digital capture that should not be there?
In particular, the Logic Pro devices have narrow hysteresis thresholds, which can cause noise around transitions in some cases. When using lower voltage thresholds with larger swing signals, noise on the signal while it is in the low state can easily be picked up by the Saleae devices even when the normal receiver of the signal rejects it.
The glitch filter is purely a software filter on top of the recorded data. Using the glitch filter does not actually change the data that is recorded - instead, it sits between the recorded data set and all software components that access it. This lets the user change the trigger settings and even remove it, restoring the originally recorded data, including any noise.
If the glitch filter is enabled before the capture starts, the trigger will also use the filtered signal, which is especially useful to reject false trigger conditions. Even in this case the original noisy data is recorded in the back end, and can be viewed by removing the glitch filter.
The glitch filter can be set for any individual digital channel, and we recommend only adding the filter to channels where noise is already a problem. This simplifies working with the filter later.
The glitch filter rejects all pulses narrower than a specific width. That width can be specified either by a number of samples, or a specific maximum time.
We recommend using the glitch filter in sample width mode, with the sample width specified as a small number (2-10). This is particularly useful because most noise around signal edges is only 1 or 2 samples wide.
We recommend using the glitch filter with time specified instead of samples only when the noise in question is significantly larger than 1 sample wide. This is because single sample wide noise is usually actually much smaller than 1 sample, so specifying a time width is not useful as the sample rate changes. However, when dealing with macro sized noise (several samples or larger) the device is recording a real phenomena that won't change in duration when the sample rate changes.
Configuring the glitch filter
Step 1: Identify channel with noise, and measure noise
Step 2: Open the channel settings menu for that channel, and select "Enable Glitch Filter"
Step 3: Select units for glitch filter width. (in this case, samples)
Step 4: Enter the duration for the largest glitch to suppress. In this case, 3 samples.
Step 5: Click outside of the popover to close the popover. The glitch filter is now active. Note that the glitch originally pictured is gone, and that the channel label now shows "(filtered)" to indicate that the filter is active.
The filter can be removed at any time by opening the channel settings menu again and selecting "Disable glitch filter." All noise originally in the capture will re-appear.
The glitch filter modifies the digital channel displays, the behavior of the trigger, the protocol decoders, the measurements, and the raw data export - basically everything the software does that accesses the data.
When you save a capture to disk, the original unfiltered data is saved along with the glitch filter settings, so that when the file is re-opened, the data is in the same state, but the glitch filter can still be removed.
Reporting a problem with the glitch filter
The glitch filter is a new feature recently released. Internally, it passes all of our unit tests and QA tests. If you suspect you have found a problem with the glitch filter, please report it! Please include the following:
- A copy of the saved capture, so we can load it here. You can save the capture from the main options menu.
- The type of device used to make the recording, and all of the sample rate and channel settings used to make the capture.
- If you observe anything else required to repeat the problem, please let us know.
trello ID: 5628391f86a6bc55696355f0