Protocol decoders

From sigrok
Jump to navigation Jump to search

This is a list of supported protocol decoders (PDs) and decoders which we might want to write in the future (or users might want to contribute).

See Protocol decoder API for details on how the decoders work in sigrok.

Low-level protocol decoders

Protocol decoders that only require raw probes/signals as input (and don't require any already decoded data from other PDs).

Protocol Output ID(s) Status Description Comments
Basic / microcontrollers / embedded
SPI spi 80% Serial Peripheral Interface (SPI) protocol. Mostly working, though some details need to be fixed or improved.
I²C i2c 80% Inter-Integrated Circuit (I²C) protocol. Mostly working, though some details need to be fixed or improved.
UART uart 80% Universal Asynchronous Receiver Transmitter (UART) protocol. Mostly working, though some details need to be fixed or improved.
1-Wire 0%
Microwire 0%
UNI/O 0%
Automotive / industrial / embedded
CAN 0%
FlexRay 0% FlexRay is an automotive network communications protocol.
LIN 0% LIN (Local Interconnect Network) is an automotive bus standard.
Embedded
JTAG 0%
SWD 0%
PC
USB (full-speed) usb 80% Universal Serial Bus (USB), full-speed, low-level protocol. Mostly working, though some details need to be fixed or improved.
LPC 40% Low-Pin-Count Work in progress
FWH 0%
ISA 0%
PCI 0%
SMBus 0%
IDE 0%
SCSI 0%
PS/2 0%
Audio
HD Audio 0%
I²S 90% I²S (Inter-IC Sound, Integrated Interchip Sound, or IIS) is a bus for connecting digital audio devices together. Needs more testing and documentation.
Consumer IR
Nokia NRC17 0%
Sony SIRC 0%
Philips RC-5 0%
Philips RC-6 0%
Philips RC-MM 0%
Philips RECS80 0%
Miscellaneous
IrDA 0%
DCF77 dcf77 80% DCF77 time protocol Mostly working, though some details need to be fixed or improved.
DALI 0%
PWM 0%
Serial EEPROMs
AT93C46 0% Atmel AT93C46 serial EEPROM protocol
Displays
HD44780 0% HD44780 character LCD protocol
7-segment display 0%
Other
Transition counter transitioncounter 90% Counts rising and falling edges in the signal. Mostly working.

... and many, many more.

Ideas:

  • Number of clock cycles / rising-edges / falling-edges / transitions / etc. (total or per-signal)
  • Min/Max/Avg distance between two events (rising edge, falling edge, signal lenths, etc.)
  • ...

High-level protocol decoders

Protocol decoders that do not (only) have raw signals/samples as input, but rather also data which was already decoded by one or more low-level PDs.

Protocol Input ID(s) Output ID(s) Status Description Comments
SPI flash chips
Macronix MX25Lxx05D logic, spi mx25lxx05d 60% SPI-attached serial EEPROM. Datasheet: [1]. Partly working.
Displays
SA8807A spi 0% SPI-attached LCD. Datasheet: Sames SA8807A.
EA eDIPTFT43-A i2c 0% I2C-attached LCD. Datasheet: EA eDIPTFT43-A.
ADCs
Analog Devices AD7291 i2c 0% I2C-attached ADC. Datasheet: Analog Devices AD7291.
Analog Devices ADS1258 spi 0% SPI-attached ADC.
Microchip MCP3901 spi 0% Can be controlled via a parallel protocol, or SPI, or I2C.
Temperature sensors
Melexis MLX90614 i2c 30% Partly working.
RTCs
Epson RTC-8564 JE/NB i2c 40% Partly working.
Bluetooth modules
Panasonic PAN1321 uart pan1321 70% Panasonic PAN1321 Bluetooth module protocol.
Other
Wii Nunchuk i2c nunchuk 70% Nintendo Wii Nunchuk I2C-based protocol. Preliminary, untested.
DDC i2c ddc 70% Display Data Channel (DDC) protocol.
I2C Demultiplexer i2c i2c (one or more) 80%
I2C Filter i2c i2c 80%
EDID i2c edid 80%

... and many, many more.

Non-protocol data analysis decoders:

  • How many data bytes are in the data stream?
  • What's the min/max/avg data value?
  • ...