summaryrefslogtreecommitdiff
path: root/decoders
AgeCommit message (Collapse)Author
2016-10-19uart: skip frames with invalid start bitsGerhard Sittig
When the start bit is not low at its sample point, then stop trying to interpret the remaining frame -- it's already known to be invalid, anyway. Wait for the next start bit instead, assuming that either the falling edge which started the inspection of the UART frame and its start bit was a spurious glitch or that the captured signal does not communicate at the decoder's configured bitrate. Signed-off-by: Gerhard Sittig <gerhard.sittig@gmx.net>
2016-10-19uart: rework text formatting of communicated data values, plus nitsGerhard Sittig
Factor out the code which generates a textual representation for the numeric values that were communicated via UART bit patterns. Make the width of the output text depend on the number of bits in the UART frame (five to nine) instead of assuming bytes of exactly eight bits. Fix other minor issues while we are here: Nine bits result in a number range of 0 to 511 (not 512). ASCII codes 30 and 31 are non-printables. The previous implementation skipped a significant leading digit in the octal representation. Signed-off-by: Gerhard Sittig <gerhard.sittig@gmx.net>
2016-10-19uart: minor nit, rename the "databyte" variableGerhard Sittig
Given the generic nature of UART communication and the supported range for the data width, "byte" may be a misleading name for the numeric value that gets communicated in five to nine data bits. Rename the "databyte" variable to "datavalue". Signed-off-by: Gerhard Sittig <gerhard.sittig@gmx.net>
2016-10-12Add an initial GPIB decoder.Rudolf Reuter
2016-09-24midi: Add missing copyright lines.Uwe Hermann
2016-09-24midi: Random cosmetic cleanups.Uwe Hermann
2016-09-24midi: Simplify some boolean tests.Uwe Hermann
2016-09-24midi: Use "is" or "is not" with None.Uwe Hermann
2016-09-24usb_request: Use "is" or "is not" with None.Uwe Hermann
2016-09-24midi: Add support for complex MIDI message formats (inter-related).Chris
- Handle "Running Status" where status byte can be omitted - SysEx message can be terminated by status byte, not just EOX - Handle SysReal messages that interrupt in-progress message transmission - Identify and print garbage / truncated data - Add 2 new annotations: text-sysreal-verbose and text-error
2016-09-24midi: chromatic_notes in list.py was off by 1 octaveChris
(ex: note 60 is middle C which is C4, not C3)
2016-09-24uart: Fix a bug in the output for stacked PDs.Uwe Hermann
The UART bit information was not transmitted correctly to stacked PDs if there was an overlap between RX and TX bytes in the data.
2016-09-04midi: Some annotation consistency changes.Uwe Hermann
2016-09-04Updates each annotation with multiple strings ranging from long, medium, and ↵Chris
short lengths
2016-08-26usb_power_delivery: Drop problematic exception in us2samples().Uwe Hermann
This causes an issue when running the sigrok-test test-cases, so drop it for now (the same check already exists in decode()). This fixes bug #758.
2016-08-23ssi32: Slightly more descriptive naming.Uwe Hermann
2016-08-23midi: Substantially improve decoding of MIDI messages.Chris Dreher
* Decode note names and percussion names (ex: 'G2', 'Tambourine'). * Decode instrument names and drum_kit names (ex: 'Flute', 'GS Orchestra Kit'). * Handle Polyphonic Pressure / Aftertouch (message 0xAn). * Handle Program Change (message 0xCn). * Handle Channel Pressure / Aftertouch (message 0xDn). * Handle Channel Mode (message 0xBn mm where mm is 120 through 127). * Handle System Common messages (message 0xF1 through 0xF6), including full time code decoding. * SysEx decoding now decodes the 1-3 byte manufacturer field, payload is now displayed as hex. * 'undefined' fields now display the value (ex: 'undefined 0xf4'). * Add 'MSB' and 'LSB' to many control_functions entries. * Fix "trapped in state X" bug with handle_channel_msg_generic(), though this might be dead code. * Fix bug in sysex_manufacturer_ids; 1-byte manufacturers were not tuples due to missing comma. * Fix bug in SysEx decoding state machine; 0xF7 now sent to handle_sysex_msg().
2016-08-22ssi32: Minor cosmetics, add full license header (for consistency).Uwe Hermann
2016-08-21Add Bosch SSI32 protocol decoder.Oleksij Rempel
Signed-off-by: Oleksij Rempel <fixed-term.Oleksij.Rempel@de.bosch.com> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
2016-07-06Add a DMX512 protocol decodercbdev
2016-06-28timing: Add frequency and averaging support.Uwe Hermann
This patch was contributed by James Sleeman <james@gogo.co.nz>, thanks!
2016-06-22spiflash: Add a 'format' option.Uwe Hermann
2016-06-22spiflash: Perf tweak: Build handler lookup table once per decoderAngus Gratton
2016-06-22spiflash: Handle "Fast Read Dual I/O"Angus Gratton
2016-06-22spiflash: Handle CS# transitions, allow variable-length transfersAngus Gratton
2016-05-26Consistency renames of {ss,es}_ variables.Uwe Hermann
2016-05-25Move common/ directory into decoders/.Uwe Hermann
This simplifies cross-platform handling of the Python/decoder paths and module installation/dist a bit and also fixes bug #804.
2016-05-18Add decoder for em4305 RFID protocolBenjamin Larsson
2016-05-15Use consistent __init__() format across all PDs.Uwe Hermann
The previous **kwargs some PDs had is not actually ever used, so drop it.
2016-05-11usb_request: Drop hardcoded samplerate.Uwe Hermann
The libsigrokdecode backend now passes metadata (e.g. samplerate) to all PDs, stacked and non-stacked (see bug #664), so this interim solution is no longer needed.
2016-05-11wiegand: Make bitwidth_ms option values integer (not string).Uwe Hermann
2016-05-11Add wiegand decoder.Sean Burford
2016-05-09Consistently use ' instead of " for strings in all PDs.Uwe Hermann
2016-05-09Factor out SD card lists into common/sdcard.Uwe Hermann
These are used by the sdcard_spi and sdcard_sd decoders.
2016-05-05Factor out bcd2int() into common/srdhelper.Uwe Hermann
2016-05-04Move constants out of xfp to common/plugtrx.Bert Vermeulen
2016-05-04mdio: Add 'TURNAROUND' long/full annotation.Uwe Hermann
(useful in GUIs for displaying more useful annotations at certain zoom levels)
2016-05-04mdio: Factor out self.putff().Uwe Hermann
2016-05-04Add an MDIO protocol decoder.Elias Oenal
This new implementation supports all the features of the old decoder, and additionally supports Clause 22 and 45.
2016-04-27Drop mdio decoder (to be replaced with another implementation).Uwe Hermann
2016-04-20pwm: Use self.{ss,es}_block for consistency across PDs.Uwe Hermann
2016-04-20timing: Use self.samplenum for consistency across PDs.Uwe Hermann
2016-03-20Add initial Renesas Advanced User Debugger (AUD) decoder.fenugrec
2016-03-04em4100/t55xx: Fix accidentally broken wording in license header.Uwe Hermann
The word "version" was accidentally replaced by "data" (sed).
2016-03-04Fix various incorrect PD license metadata fields.Uwe Hermann
Have the PD 'license' attribute match what the license header of the respective pd.py file actually says.
2016-03-04Add an rgb_led_ws281x decoder.Uwe Hermann
This decoder handles the WS2812B protocol (and possibly WS2811). Example dump already exists: led/ws281x/ws281x_4ch_5mhz.sr. Signed-off-by: Vladimir Ermakov <vooon341@gmail.com>
2016-03-03Add decoder for the t55xx RFID protocolBenjamin Larsson
2016-01-29uart: Optimize handling of samples when tx and rx are both idleDaniel Thompson
Re-enable the fast path for identical samples but only when both pins are waiting for the start bit. For sparse data sets (I tested UT61E capture log) the optimization results in a >4x decode improvement.
2016-01-29arm_itm: Use objdump instead of addr2line.Petteri Aimonen
This improves speed and fixes bug 564. Code is somewhat of a copypaste from the arm_etm counterpart, but there are enough differences that it is easier to keep separate copy of the objdump parsing in each.
2015-12-25usb_power_delivery: Raise SamplerateError instead of Exception.Uwe Hermann
(for consistency with the other PDs)