Protocol decoders

From sigrok
Revision as of 00:08, 1 March 2019 by Stephan Thiele (talk | contribs) (CAN-PD)
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, and Protocol decoder HOWTO for a quick introduction about how to write your own decoders.

Supported protocol decoders

Number of currently supported protocol decoders: 98.

Protocol Category Input IDs Output IDs Status Full name Description
AC '97 Audio ac97 supported Audio Codec '97 Audio and modem control for PC systems.
ADE77xx Sensors spi ade77xx supported Analog Devices ADE77xx Poly phase multifunction energy metering IC protocol.
ADF435x RF spi adf435x supported Analog Devices ADF4350/1 Wideband synthesizer with integrated VCO.
ADNS-5020 Sensors spi adns5020 supported Avago ADNS-5020 optical mouse sensor Bidirectional command and data over an SPI-like protocol.
AM230x/DHTxx/RHTxx Sensors am230x supported Aosong AM230x/DHTxx Aosong AM230x/DHTxx/RHTxx humidity/temperature sensor protocol.
ARM ETMv3 Flash/debug uart arm_etmv3 supported ARM Embedded Trace Macroblock Decode ETM instruction trace packets.
ARM ITM Flash/debug uart arm_itm supported ARM Instrumentation Trace Macroblock Trace data from Cortex-M / ARMv7m ITM module.
ARM TPIU Flash/debug uart uart supported ARM Trace Port Interface Unit Filter TPIU formatted trace data into separate streams.
ATSHA204A Memory i2c atsha204a supported Microchip ATSHA204A Microchip ATSHA204A CryptoAuthentication device.
AUD Flash/debug aud supported Advanced User Debugger Renesas/Hitachi Advanced User Debugger (AUD) protocol.
AVR ISP Flash/debug spi avr_isp supported AVR in-system programming Protocol for in-system programming Atmel AVR MCUs.
AVR PDI Flash/debug avr_pdi supported Atmel Program and Debug Interface Atmel proprietary interface for the ATxmega MCU.
CAN Automotive can supported Controller Area Network Field bus protocol for distributed realtime control.
CEC PC cec supported HDMI-CEC HDMI Consumer Electronics Control (CEC) protocol.
CFP Networking mdio supported 100 Gigabit C form-factor pluggable 100 Gigabit C form-factor pluggable (CFP) protocol.
Counter Misc supported Edge counter Count number of edges.
DALI Lighting dali supported Digital Addressable Lighting Interface DALI lighting control protocol.
DCF77 Time signal dcf77 supported DCF77 time protocol European longwave time signal (77.5kHz carrier signal).
DMX512 Lighting dmx512 supported Digital MultipleX 512 Professional lighting control protocol.
DS1307 RTC i2c ds1307 supported Dallas DS1307 Realtime clock module protocol.
DS243x Memory onewire_network ds243x supported Maxim DS2432/DS2433 Maxim DS243x series 1-Wire EEPROM protocol.
DSI Lighting dsi supported Digital Serial Interface DSI lighting control protocol.
EDID PC i2c edid supported Extended Display Identification Data Data structure describing display device capabilities.
24xx EEPROM Memory i2c eeprom24xx supported 24xx I²C EEPROM 24xx series I²C EEPROM protocol.
93Cxx EEPROM Memory microwire eeprom93cxx supported 93Cxx Microwire EEPROM 93Cxx series Microwire EEPROM protocol.
EM4100 RFID em4100 supported RFID EM4100 EM4100 100-150kHz RFID protocol.
EM4305 RFID em4305 supported RFID EM4205/EM4305 EM4205/EM4305 100-150kHz RFID protocol.
GPIB Other gpib supported General Purpose Interface Bus IEEE-488 GPIB / HPIB protocol.
Gray code Misc graycode supported Gray code and rotary encoder Accumulate rotary encoder increments, provide timing statistics.
Guess bitrate Other guess_bitrate supported Guess bitrate/baudrate Guess the bitrate/baudrate of a UART (or other) protocol.
I2C Embedded i2c supported Inter-Integrated Circuit Two-wire, multi-master, serial bus.
I2C demux Embedded i2c runtime decision supported I2C demultiplexer Demux I2C packets into per-slave-address streams.
I2C filter Embedded i2c i2c supported I2C filter Filter out addresses/directions in an I2C stream.
I2S Audio i2s supported Integrated Interchip Sound Serial bus for connecting digital audio devices.
IEC Other gpib supported Commodore bus Commodore serial IEEE-488 (IEC) bus protocol.
IR NEC IR ir_nec supported IR NEC NEC infrared remote control protocol.
IR RC-5 IR ir_rc5 supported IR RC-5 RC-5 infrared remote control protocol.
Jitter Misc jitter supported Timing jitter calculation Retrieves the timing jitter between two digital signals.
JTAG Flash/debug jtag supported Joint Test Action Group (IEEE 1149.1) Protocol for testing, debugging, and flashing ICs.
JTAG / STM32 Flash/debug jtag jtag_stm32 supported Joint Test Action Group / ST STM32 ST STM32-specific JTAG protocol.
JTAG / EJTAG (MIPS) Flash/debug jtag jtag_ejtag supported Joint Test Action Group / EJTAG (MIPS) MIPS EJTAG protocol.
LIN Automotive uart lin supported Local Interconnect Network Local Interconnect Network (LIN) protocol.
LM75 Sensors i2c lm75 supported National LM75 National LM75 (and compatibles) temperature sensor protocol.
LPC PC lpc supported Low-Pin-Count Protocol for low-bandwidth devices on PC mainboards.
Maple bus Misc maple_bus supported SEGA Maple bus Maple bus peripheral protocol for SEGA Dreamcast.
MAX7219 Display spi max7219 supported Maxim MAX7219/MAX7221 8-digit LED display driver.
DS28EA00 Sensors onewire_network maxim_ds28ea00 supported Maxim DS28EA00 1-Wire digital thermometer 1-Wire digital thermometer with Sequence Detect and PIO.
MCS-48 CPU mcs48 supported Intel MCS-48 Intel MCS-48 external memory protocol.
MDIO Networking mdio supported Management Data Input/Output Half-duplex sync serial bus for MII management between MAC and PHY.
Microwire Embedded microwire supported Microwire 3-wire, half-duplex, synchronous serial bus.
MIDI Music uart midi supported Musical Instrument Digital Interface Musical Instrument Digital Interface (MIDI) protocol.
Miller Misc miller supported Miller encoding Miller encoding protocol.
MLX90614 Sensors i2c mlx90614 supported Melexis MLX90614 Infrared Thermometer protocol.
Modbus Misc uart modbus supported Modbus RTU over RS232/RS485 Modbus RTU protocol for industrial applications.
Morse Misc morse supported Morse code Demodulated morse code protocol.
MRF24J40 RF spi mf24j40 supported Microchip MRF24J40 IEEE 802.15.4 2.4 GHz RF tranceiver chip.
MXC6225XU Sensors i2c mxc6225xu supported MEMSIC MXC6225XU Digital Thermal Orientation Sensor (DTOS) protocol.
nRF24L01(+) Wireless spi nrf24l01 supported Nordic Semiconductor nRF24L01/nRF24L01+ 2.4GHz transceiver chip.
Nunchuk Other i2c nunchuk supported Nintendo Wii Nunchuk Nintendo Wii Nunchuk controller protocol.
1-Wire link layer Embedded onewire_link supported 1-Wire serial communication bus (link layer) Bidirectional, half-duplex, asynchronous serial bus.
1-Wire network layer Embedded onewire_link onewire_network supported 1-Wire serial communication bus (network layer) Bidirectional, half-duplex, asynchronous serial bus.
OOK Misc ook supported On-off keying On-off keying protocol.
Oregon Misc ook supported Oregon Scientific Oregon Scientific weather sensor protocol.
OOK visualisation Misc ook ook supported On-off keying visualisation OOK visualisation in various formats.
PAN1321 Bluetooth uart pan1321 supported Panasonic PAN1321 Bluetooth RF module with Serial Port Profile (SPP).
Parallel Misc parallel supported Parallel sync bus Generic parallel synchronous bus.
PS/2 PC ps2 supported PS/2 PS/2 keyboard/mouse interface.
PWM Misc pwm supported Pulse-width modulation Analog level encoded in duty cycle percentage.
Qi Misc qi supported Qi charger protocol Async serial protocol for Qi charger receivers.
RC encode Wireless supported Remote control encoder PT2262/HX2262/SC5262 remote control encoder protocol.
RFM12 Wireless spi rfm12 supported RFM12 control protocol HopeRF RFM12 wireless transceivers control protocol.
RGB LED (SPI) LED spi rgb_led_spi supported RGB LED string decoder (SPI) RGB LED string protocol (RGB values clocked over SPI).
RGB LED (WS281x) LED rgb_led_ws281x supported RGB LED string decoder (WS281x) RGB LED string protocol (WS281x).
RTC-8564 RTC i2c rtc8564 supported Epson RTC-8564 JE/NB Realtime clock module protocol.
SDA2506 Memory sda2506 supported Siemens SDA 2506-5 Serial nonvolatile 1-Kbit EEPROM.
SD card (SD mode) Memory sdcard_sd supported Secure Digital card (SD mode) Secure Digital card (SD mode) low-level protocol.
SD card (SPI mode) Memory spi sdcard_spi supported Secure Digital card (SPI mode) Secure Digital card (SPI mode) low-level protocol.
S/PDIF Audio spdif supported Sony/Philips Digital Interface Format Serial bus for connecting digital audio devices.
SPI Embedded spi supported Serial Peripheral Interface Full-duplex, synchronous, serial bus.
SPI flash SPI flash spi spiflash supported SPI flash chips xx25 series SPI (NOR) flash chip protocol.
SSI32 Misc spi ssi32 supported Synchronous Serial Interface (32bit) Synchronous Serial Interface (32bit) protocol.
ST7735 Display st7735 supported Sitronix ST7735 Sitronix ST7735 TFT controller protocol.
Stepper motor Motors stepper_motor supported Stepper motor position / speed Absolute position and movement speed from step/dir.
SWD Flash/debug swd supported Serial Wire Debug Two-wire protocol for debug access to ARM CPUs.
SWIM Flash/debug swim supported STM8 SWIM bus STM8 Single Wire Interface Module (SWIM) protocol.
T55xx RFID t55xx supported RFID T5xx T55xx 100-150kHz RFID protocol.
TI TCA6408A I/O expander i2c tca6408a supported Texas Instruments TCA6408A Texas Instruments TCA6408A 8-bit I²C I/O expander.
Timing Misc timing supported Timing calculation Calculate time between edges.
TI TLC5620 DAC tlc5620 supported Texas Instruments TLC5620 Texas Instruments TLC5620 8-bit quad DAC.
UART Embedded uart supported Universal Asynchronous Receiver/Transmitter Asynchronous, serial bus.
USB packet USB usb_signalling usb_packet supported Universal Serial Bus (LS/FS) packet USB (low-speed and full-speed) packet protocol.
USB PD USB usb_pd supported USB Power Delivery USB Power Delivery protocol.
USB request USB usb_packet usb_request supported Universal Serial Bus (LS/FS) transaction/request USB (low-speed and full-speed) transaction/request protocol.
USB signalling USB usb_signalling supported Universal Serial Bus (LS/FS) signalling USB (low-speed and full-speed) signalling protocol.
Wiegand RFID wiegand supported Wiegand interface Wiegand interface for electronic entry systems.
X2444M/P Memory spi x2444m supported Xicor X2444M/P Xicor X2444M/P nonvolatile static RAM protocol.
XFP Networking i2c xfp supported 10 Gigabit Small Form Factor Pluggable Module (XFP) Data structure describing device capabilities.
Z80 CPU z80 supported Zilog Z80 CPU Zilog Z80 microprocessor disassembly.

Possible candidates for future protocol decoders

Protocol Category Input ID(s) Output ID(s) Status Description Comments
SA8807A Displays spi 0% SPI-attached LCD. Datasheet: Sames SA8807A.
EA eDIPTFT43-A Displays i2c 0% I2C-attached LCD. Datasheet: EA eDIPTFT43-A.
Analog Devices AD7291 ADC i2c 0% I2C-attached ADC. Datasheet: Analog Devices AD7291.
Analog Devices ADS1258 ADC spi ads1258 0% SPI-attached ADC. Planned (Uwe Hermann).
Microchip MCP3901 ADC spi mcp3901 0% Can be controlled via a parallel protocol, or SPI, or I2C. Planned (Uwe Hermann).
JTAG / TMPA9xx Flash/debug jtag jtag_tmpa9xx 0% Toshiba TMPA9xx specific JTAG protocol details.
USB transfer USB usb_request usb_transfer 0%
USB / HID USB usb_transfer usb_hid 0%
USB / CDC USB usb_transfer usb_cdc 0%
USB / USBTMC USB usb_transfer usb_usbtmc 0%
Dallas DS1985 Other onewire_network 0% Dallas DS1985 iButton (1-Wire) device. Planned (Uwe Hermann).
UNI/O Embedded 0%
SSI Embedded 0% Synchronous Serial Interface
CompactFlash Memory 0%
MMC Memory 0%
Memory Stick Memory 0%
SmartMedia Memory 0%
xD-Picture Card Memory 0%
ISO 7816 Smartcards 0%
FlexRay Automotive 0% FlexRay is an automotive network communications protocol. Planned (Stephan Thiele).
AVR TPI Flash/debug 0% Atmel Tiny Programming Interface (TPI) protocol.
FWH PC 0%
ISA PC 0%
PCI PC 0%
SMBus PC 0%
IDE PC 0%
SCSI PC 0%
PECI PC 0% Platform Environment Control Interface
SVID PC 0% Serial Voltage Identification
MFM PC 90% Floppy disk FM and MFM. Work in progress (David Wiens).
HD Audio Audio 0%
Nokia NRC17 IR 0%
Sony SIRC IR 0%
Philips RC-6 IR 0%
Philips RC-MM IR 0%
Philips RECS80 IR 0%
IrDA Misc 0%
HD44780 Displays 0% HD44780 character LCD protocol
7-segment display Displays 0%
PCF8814 Displays pcf8814 50% Philips PCF8814 65 x 96 pixels matrix LCD driver Work in progress (Uwe Hermann).
PCF8814 LCD Displays pcf8814 pcf8814_lcd 50% Philips PCF8814 65 x 96 pixels matrix LCD driver Work in progress (Uwe Hermann).
RDM Industrial Lighting rdm 0%
NMEA 0183 GPS uart nmea0183 0%
NMEA2000 Marine can nmea2000 0% NMEA 2000 Wikipedia page
DCC Trains dcc 0%
MVB Trains mvb 0% Multifunction Vehicle Bus
WTB Trains wtb 0% Wire Train Bus
C-Bus Home automation cbus 0%
X10 Home automation x10 0%
LonWorks Home automation lonworks 0%
S-Bus Home automation sbus 0%
M-Bus Automation mbus 0%
Modbus ASCII Automation uart modbus 0%
Modbus TCP Automation ip modbus 0%
HART protocol Automation hart 0%
INTERBUS Automation interbus 0%
DirectNET Automation uart directnet 0%
KNX Automation various knx 0%
BACnet Automation bacnet 0%
OpenTherm Automation opentherm 0%
EBUS Automation uart ebus 0%
AUI Networking aui 0% Attachment Unit Interface
MDI Networking mdi 0% Medium Dependent Interface
MII Networking mii 0% Media Independent Interface
GMII Networking gmii 0% Gigabit Media Independent Interface
XGMII Networking xgmii 0% 10 Gigabit Media Independent Interface
ESP8266 Wireless uart esp8266 0% WiFi Serial Transceiver
TI CC1101 Wireless spi cc1101 1% SPI-attached wireless controller for 315/433/868/915 MHz ISM bands. Datasheet Work in progress (rohieb)
TMDS (HDMI / DVI Pixel Data) Display tmds 1% https://github.com/mithro/tmds_encoding Work in progress (mithro)
Easymatic Home automation uart easymatic 10% Work in progress (Platypus)
DDC/CI PC i2c 0%
Kenwood VH Misc 50% SYSTEM CONTROL protocol used by Kenwood's VH HiFi-system In progress: https://github.com/kripton/libsigrokdecode/compare/kenwood_vh
IEC 61131-9 Industrial 0% "Single-drop digital communication interface for small sensors and actuators (SDCI, marketed as IO-Link)" https://en.wikipedia.org/wiki/IEC_61131
NRZ encoding family 0% Non-Return-to-Zero and its variants whoever wants it
Manchester encoding 0% Manchester code whoever wants it
Sony LANC 0% Sony LANC whoever wants it, contact AlexDaniel for more info. You can already decode the raw data by using UART with 9600 baud and no parity, but it'd be better if pulseview displayed the meaning (as in what these commands do)
CAN-FD Automotive can 60% Controller Area Network with Flexible Data Rate Work in progress (Stephan Thiele).