Difference between revisions of "Protocol decoders"
Jump to navigation
Jump to search
Uwe Hermann (talk | contribs) m |
Uwe Hermann (talk | contribs) (Put existing/supported PDs in one table (can be generated later).) |
||
Line 3: | Line 3: | ||
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. | 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 == | ||
{| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable" | {| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable" | ||
Line 25: | Line 23: | ||
| Serial Peripheral Interface (SPI) protocol. | | Serial Peripheral Interface (SPI) protocol. | ||
| Mostly working. | | Mostly working. | ||
|- | |- | ||
| [[Protocol decoder:i2c|I²C]] | | [[Protocol decoder:i2c|I²C]] | ||
Line 33: | Line 32: | ||
| Inter-Integrated Circuit (I²C) protocol. | | Inter-Integrated Circuit (I²C) protocol. | ||
| Mostly working. | | Mostly working. | ||
|- | |- | ||
| [[Protocol decoder:uart|UART]] | | [[Protocol decoder:uart|UART]] | ||
Line 41: | Line 41: | ||
| Universal Asynchronous Receiver Transmitter (UART) protocol. | | Universal Asynchronous Receiver Transmitter (UART) protocol. | ||
| Mostly working. | | Mostly working. | ||
|- | |- | ||
| 1-Wire (link layer) | | 1-Wire (link layer) | ||
Line 49: | Line 50: | ||
| | | | ||
| Mostly working. | | Mostly working. | ||
|- | |||
| SD card (SPI mode) | |||
| Memory | |||
| — | |||
| sdcard_spi | |||
| bgcolor="orange" | 10% | |||
| | |||
| Work in progress (Uwe Hermann). | |||
|- | |||
| CAN | |||
| Automotive | |||
| — | |||
| | |||
| bgcolor="orange" | 10% | |||
| | |||
| Work in progress (Uwe Hermann). | |||
|- | |||
| JTAG | |||
| Flash/debug | |||
| — | |||
| jtag | |||
| bgcolor="lime" | 80% | |||
| Joint Test Action Group (IEEE 1149.1) | |||
| Mostly working. | |||
|- | |||
| USB signalling (LS/FS) | |||
| PC | |||
| — | |||
| usb_signalling | |||
| bgcolor="lime" | 80% | |||
| Universal Serial Bus (USB), low-/full-speed signalling. | |||
| Mostly working. | |||
|- | |||
| LPC | |||
| PC | |||
| — | |||
| lpc | |||
| bgcolor="yellow" | 40% | |||
| Low-Pin-Count | |||
| Work in progress, untested (Uwe Hermann). | |||
|- | |||
| I2S | |||
| Audio | |||
| — | |||
| i2s | |||
| bgcolor="lime" | 90% | |||
| [http://en.wikipedia.org/wiki/I%C2%B2S I2S] is a bus for connecting digital audio devices together. | |||
| Needs more testing and documentation. | |||
|- | |||
| [[Protocol decoder:dcf77|DCF77]] | |||
| Misc | |||
| — | |||
| dcf77 | |||
| bgcolor="lime" | 80% | |||
| [http://en.wikipedia.org/wiki/DCF77 DCF77] time protocol | |||
| Mostly working. | |||
|- | |||
| [[Protocol decoder:tlc5620|Texas Instruments TLC5620]] | |||
| DAC | |||
| — | |||
| tlc5620 | |||
| bgcolor="lime" | 80% | |||
| Texas Instruments TLC5620 8-bit quad DAC. | |||
| Mostly working. | |||
|- | |||
| Transition counter | |||
| Other | |||
| — | |||
| transitioncounter | |||
| bgcolor="lime" | 90% | |||
| Counts rising and falling edges in the signal. | |||
| Mostly working. | |||
|- | |||
| 1-Wire (network layer) | |||
| Embedded | |||
| onewire_link | |||
| onewire_network | |||
| bgcolor="lime" | 80% | |||
| | |||
| Mostly working. | |||
|- | |||
| [[Protocol decoder:mx25lxx05d|Macronix MX25Lxx05D]] | |||
| SPI flash | |||
| logic, spi | |||
| mx25lxx05d | |||
| bgcolor="lime" | 80% | |||
| SPI-attached serial EEPROM. Datasheet: [http://www.macronix.com/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/3F21BAC2E121E17848257639003A3146/$File/MX25L1605D-3205D-6405D-1.5.pdf]. | |||
| Mostly working. Not all commands are decoded yet, though. | |||
|- | |||
| Melexis MLX90614 | |||
| Sensors | |||
| i2c | |||
| | |||
| bgcolor="yellow" | 30% | |||
| | |||
| Partly working. | |||
|- | |||
| MEMSIC MXC6225XU | |||
| Sensors | |||
| i2c | |||
| | |||
| bgcolor="yellow" | 30% | |||
| Digital Thermal Orientation Sensor (DTOS). | |||
| Partly working. | |||
|- | |||
| National LM75 | |||
| Sensors | |||
| i2c | |||
| | |||
| bgcolor="lime" | 80% | |||
| Digital temperature sensor. | |||
| Mostly working. | |||
|- | |||
| Maxim DS28EA00 | |||
| Sensors | |||
| onewire_network | |||
| | |||
| bgcolor="orange" | 20% | |||
| 1-Wire digital thermometer with Sequence Detect and PIO. | |||
| Work in progress (Iztok Jeras). | |||
|- | |||
| Epson RTC-8564 JE/NB | |||
| RTC | |||
| i2c | |||
| | |||
| bgcolor="yellow" | 40% | |||
| | |||
| Partly working. | |||
|- | |||
| [[Protocol decoder:pan1321|Panasonic PAN1321]] | |||
| Bluetooth | |||
| uart | |||
| pan1321 | |||
| bgcolor="yellow" | 70% | |||
| Panasonic PAN1321 Bluetooth module protocol. | |||
| | |||
|- | |||
| JTAG / STM32 | |||
| Flash/debug | |||
| jtag | |||
| jtag_stm32 | |||
| bgcolor="orange" | 50% | |||
| ST STM32-specific JTAG protocol details. | |||
| Work in progress. | |||
|- | |||
| AVR ISP | |||
| Flash/debug | |||
| spi | |||
| avr_isp | |||
| bgcolor="lime" | 80% | |||
| Atmel AVR In-system programming (ISP) protocol. | |||
| Mostly working. | |||
|- | |||
| USB / Protocol | |||
| USB | |||
| usb_signalling | |||
| usb_protocol | |||
| bgcolor="lime" | 80% | |||
| Decodes USB signalling protocol info into USB packets. | |||
| Mostly working. | |||
|- | |||
| [[Protocol decoder:nunchuk|Nintendo Wii Nunchuk]] | |||
| Other | |||
| i2c | |||
| nunchuk | |||
| bgcolor="lime" | 80% | |||
| Nintendo Wii Nunchuk I2C-based protocol. | |||
| Mostly working. | |||
|- | |||
| DDC | |||
| Other | |||
| i2c | |||
| ddc | |||
| bgcolor="yellow" | 70% | |||
| [http://en.wikipedia.org/wiki/Display_Data_Channel Display Data Channel] (DDC) protocol. | |||
| | |||
|- | |||
| I2C Demultiplexer | |||
| Other | |||
| i2c | |||
| i2c (one or more) | |||
| bgcolor="lime" | 80% | |||
| | |||
| Mostly working. | |||
|- | |||
| I2C Filter | |||
| Other | |||
| i2c | |||
| i2c | |||
| bgcolor="lime" | 80% | |||
| | |||
| Mostly working. | |||
|- | |||
| EDID | |||
| Other | |||
| i2c | |||
| edid | |||
| bgcolor="lime" | 80% | |||
| | |||
| Mostly working. | |||
|- | |||
| UART dump | |||
| Other | |||
| uart | |||
| — | |||
| bgcolor="lime" | 80% | |||
| Dumps UART protocol decoder output as plain-text to stdout/file. | |||
| Mostly working. | |||
|} | |||
== Possible candidates for future protocol decoders == | |||
{| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable" | |||
|- | |||
!Protocol | |||
!Category | |||
!Input ID(s) | |||
!Output ID(s) | |||
!Status | |||
!Description | |||
!Comments | |||
|- | |||
| SA8807A | |||
| Displays | |||
| spi | |||
| | |||
| bgcolor="red" | 0% | |||
| SPI-attached LCD. Datasheet: [http://pdf1.alldatasheet.com/datasheet-pdf/view/36922/SAMES/SA8807A.html Sames SA8807A]. | |||
| | |||
|- | |||
| EA eDIPTFT43-A | |||
| Displays | |||
| i2c | |||
| | |||
| bgcolor="red" | 0% | |||
| I2C-attached LCD. Datasheet: [http://www.lcd-module.de/pdf/grafik/ediptft43-a.pdf EA eDIPTFT43-A]. | |||
| | |||
|- | |||
| Analog Devices AD7291 | |||
| ADC | |||
| i2c | |||
| | |||
| bgcolor="red" | 0% | |||
| I2C-attached ADC. Datasheet: [http://pdf1.alldatasheet.com/datasheet-pdf/view/318172/AD/AD7291.html Analog Devices AD7291]. | |||
| | |||
|- | |||
| Analog Devices ADS1258 | |||
| ADC | |||
| spi | |||
| ads1258 | |||
| bgcolor="orange" | 10% | |||
| SPI-attached ADC. | |||
| Work in progress (Uwe Hermann). | |||
|- | |||
| Microchip MCP3901 | |||
| ADC | |||
| spi | |||
| mcp3901 | |||
| bgcolor="orange" | 10% | |||
| Can be controlled via a parallel protocol, or SPI, or I2C. | |||
| Work in progress (Uwe Hermann). | |||
|- | |||
| JTAG / TMPA9xx | |||
| Flash/debug | |||
| jtag | |||
| jtag_tmpa9xx | |||
| bgcolor="red" | 0% | |||
| Toshiba TMPA9xx specific JTAG protocol details. | |||
| | |||
|- | |||
| USB / HID | |||
| USB | |||
| usb_protocol | |||
| usb_hid | |||
| bgcolor="red" | 0% | |||
| | |||
| | |||
|- | |||
| USB / USBTMC | |||
| USB | |||
| usb_protocol | |||
| usb_usbtmc | |||
| bgcolor="red" | 0% | |||
| | |||
| | |||
|- | |||
| Dallas DS1985 | |||
| Other | |||
| onewire_network | |||
| | |||
| bgcolor="orange" | 10% | |||
| Dallas DS1985 iButton (1-Wire) device. | |||
| Work in progress (Uwe Hermann). | |||
|- | |- | ||
| Microwire | | Microwire | ||
Line 57: | Line 388: | ||
| | | | ||
| | | | ||
|- | |- | ||
| UNI/O | | UNI/O | ||
Line 74: | Line 406: | ||
| | | | ||
| | | | ||
|- | |- | ||
| MMC | | MMC | ||
Line 82: | Line 415: | ||
| | | | ||
| | | | ||
|- | |- | ||
| Memory Stick | | Memory Stick | ||
Line 90: | Line 424: | ||
| | | | ||
| | | | ||
|- | |- | ||
| SmartMedia | | SmartMedia | ||
Line 98: | Line 433: | ||
| | | | ||
| | | | ||
|- | |- | ||
| xD-Picture Card | | xD-Picture Card | ||
Line 106: | Line 442: | ||
| | | | ||
| | | | ||
|- | |- | ||
| SD card (SD mode) | | SD card (SD mode) | ||
Line 113: | Line 450: | ||
| bgcolor="orange" | 10% | | bgcolor="orange" | 10% | ||
| | | | ||
| Work in progress (Uwe Hermann). | |||
| Work in progress (Uwe Hermann). | |||
|- | |- | ||
Line 132: | Line 461: | ||
| | | | ||
|- | |- | ||
| FlexRay | | FlexRay | ||
Line 148: | Line 469: | ||
| [http://en.wikipedia.org/wiki/Flexray FlexRay] is an automotive network communications protocol. | | [http://en.wikipedia.org/wiki/Flexray FlexRay] is an automotive network communications protocol. | ||
| | | | ||
|- | |- | ||
| LIN | | LIN | ||
Line 157: | Line 479: | ||
| | | | ||
|- | |- | ||
| SWD | | SWD | ||
Line 173: | Line 487: | ||
| [https://en.wikipedia.org/wiki/Joint_Test_Action_Group#Serial_Wire_Debug Serial Wire Debug] | | [https://en.wikipedia.org/wiki/Joint_Test_Action_Group#Serial_Wire_Debug Serial Wire Debug] | ||
| | | | ||
|- | |- | ||
| AVR PDI | | AVR PDI | ||
Line 181: | Line 496: | ||
| Atmel Program and Debug Interface (PDI) protocol. | | Atmel Program and Debug Interface (PDI) protocol. | ||
| | | | ||
|- | |- | ||
| AVR TPI | | AVR TPI | ||
Line 190: | Line 506: | ||
| | | | ||
|- | |- | ||
| FWH | | FWH | ||
Line 214: | Line 514: | ||
| | | | ||
| | | | ||
|- | |- | ||
| ISA | | ISA | ||
Line 222: | Line 523: | ||
| | | | ||
| | | | ||
|- | |- | ||
| PCI | | PCI | ||
Line 230: | Line 532: | ||
| | | | ||
| | | | ||
|- | |- | ||
| SMBus | | SMBus | ||
Line 238: | Line 541: | ||
| | | | ||
| | | | ||
|- | |- | ||
| IDE | | IDE | ||
Line 246: | Line 550: | ||
| | | | ||
| | | | ||
|- | |- | ||
| SCSI | | SCSI | ||
Line 254: | Line 559: | ||
| | | | ||
| | | | ||
|- | |- | ||
| PS/2 | | PS/2 | ||
Line 270: | Line 576: | ||
| bgcolor="orange" | 10% | | bgcolor="orange" | 10% | ||
| | | | ||
| Work in progress (Uwe Hermann). | | Work in progress (Uwe Hermann). | ||
|- | |- | ||
| HD Audio | | HD Audio | ||
Line 279: | Line 586: | ||
| | | | ||
| | | | ||
|- | |- | ||
Line 296: | Line 595: | ||
| | | | ||
| | | | ||
|- | |- | ||
| Sony SIRC | | Sony SIRC | ||
Line 304: | Line 604: | ||
| | | | ||
| | | | ||
|- | |- | ||
| Philips RC-5 | | Philips RC-5 | ||
Line 312: | Line 613: | ||
| | | | ||
| | | | ||
|- | |- | ||
| Philips RC-6 | | Philips RC-6 | ||
Line 320: | Line 622: | ||
| | | | ||
| | | | ||
|- | |- | ||
| Philips RC-MM | | Philips RC-MM | ||
Line 328: | Line 631: | ||
| | | | ||
| | | | ||
|- | |- | ||
| Philips RECS80 | | Philips RECS80 | ||
Line 345: | Line 649: | ||
| | | | ||
| | | | ||
|- | |- | ||
| [http://en.wikipedia.org/wiki/Digital_Addressable_Lighting_Interface DALI] | | [http://en.wikipedia.org/wiki/Digital_Addressable_Lighting_Interface DALI] | ||
Line 361: | Line 658: | ||
| | | | ||
| | | | ||
|- | |- | ||
| PWM | | PWM | ||
Line 369: | Line 667: | ||
| | | | ||
| | | | ||
|- | |- | ||
Line 396: | Line 685: | ||
| [http://en.wikipedia.org/wiki/HD44780_Character_LCD HD44780 character LCD] protocol | | [http://en.wikipedia.org/wiki/HD44780_Character_LCD HD44780 character LCD] protocol | ||
| | | | ||
|- | |- | ||
| 7-segment display | | 7-segment display | ||
Line 405: | Line 695: | ||
| | | | ||
|- | |- | ||
| GPIB | | GPIB | ||
Line 421: | Line 703: | ||
| [https://en.wikipedia.org/wiki/IEEE-488 General purpose interface bus] (GPIB), a.k.a. IEEE-488.1. | | [https://en.wikipedia.org/wiki/IEEE-488 General purpose interface bus] (GPIB), a.k.a. IEEE-488.1. | ||
| Work in progress (Uwe Hermann). | | Work in progress (Uwe Hermann). | ||
|} | |} | ||
__FORCETOC__ | __FORCETOC__ |
Revision as of 16:15, 22 December 2012
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
Protocol | Category | Input ID(s) | Output ID(s) | Status | Description | Comments |
---|---|---|---|---|---|---|
SPI | Embedded | — | spi | 80% | Serial Peripheral Interface (SPI) protocol. | Mostly working. |
I²C | Embedded | — | i2c | 80% | Inter-Integrated Circuit (I²C) protocol. | Mostly working. |
UART | Embedded | — | uart | 80% | Universal Asynchronous Receiver Transmitter (UART) protocol. | Mostly working. |
1-Wire (link layer) | Embedded | — | onewire_link | 80% | Mostly working. | |
SD card (SPI mode) | Memory | — | sdcard_spi | 10% | Work in progress (Uwe Hermann). | |
CAN | Automotive | — | 10% | Work in progress (Uwe Hermann). | ||
JTAG | Flash/debug | — | jtag | 80% | Joint Test Action Group (IEEE 1149.1) | Mostly working. |
USB signalling (LS/FS) | PC | — | usb_signalling | 80% | Universal Serial Bus (USB), low-/full-speed signalling. | Mostly working. |
LPC | PC | — | lpc | 40% | Low-Pin-Count | Work in progress, untested (Uwe Hermann). |
I2S | Audio | — | i2s | 90% | I2S is a bus for connecting digital audio devices together. | Needs more testing and documentation. |
DCF77 | Misc | — | dcf77 | 80% | DCF77 time protocol | Mostly working. |
Texas Instruments TLC5620 | DAC | — | tlc5620 | 80% | Texas Instruments TLC5620 8-bit quad DAC. | Mostly working. |
Transition counter | Other | — | transitioncounter | 90% | Counts rising and falling edges in the signal. | Mostly working. |
1-Wire (network layer) | Embedded | onewire_link | onewire_network | 80% | Mostly working. | |
Macronix MX25Lxx05D | SPI flash | logic, spi | mx25lxx05d | 80% | SPI-attached serial EEPROM. Datasheet: [1]. | Mostly working. Not all commands are decoded yet, though. |
Melexis MLX90614 | Sensors | i2c | 30% | Partly working. | ||
MEMSIC MXC6225XU | Sensors | i2c | 30% | Digital Thermal Orientation Sensor (DTOS). | Partly working. | |
National LM75 | Sensors | i2c | 80% | Digital temperature sensor. | Mostly working. | |
Maxim DS28EA00 | Sensors | onewire_network | 20% | 1-Wire digital thermometer with Sequence Detect and PIO. | Work in progress (Iztok Jeras). | |
Epson RTC-8564 JE/NB | RTC | i2c | 40% | Partly working. | ||
Panasonic PAN1321 | Bluetooth | uart | pan1321 | 70% | Panasonic PAN1321 Bluetooth module protocol. | |
JTAG / STM32 | Flash/debug | jtag | jtag_stm32 | 50% | ST STM32-specific JTAG protocol details. | Work in progress. |
AVR ISP | Flash/debug | spi | avr_isp | 80% | Atmel AVR In-system programming (ISP) protocol. | Mostly working. |
USB / Protocol | USB | usb_signalling | usb_protocol | 80% | Decodes USB signalling protocol info into USB packets. | Mostly working. |
Nintendo Wii Nunchuk | Other | i2c | nunchuk | 80% | Nintendo Wii Nunchuk I2C-based protocol. | Mostly working. |
DDC | Other | i2c | ddc | 70% | Display Data Channel (DDC) protocol. | |
I2C Demultiplexer | Other | i2c | i2c (one or more) | 80% | Mostly working. | |
I2C Filter | Other | i2c | i2c | 80% | Mostly working. | |
EDID | Other | i2c | edid | 80% | Mostly working. | |
UART dump | Other | uart | — | 80% | Dumps UART protocol decoder output as plain-text to stdout/file. | Mostly working. |
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 | 10% | SPI-attached ADC. | Work in progress (Uwe Hermann). |
Microchip MCP3901 | ADC | spi | mcp3901 | 10% | Can be controlled via a parallel protocol, or SPI, or I2C. | Work in progress (Uwe Hermann). |
JTAG / TMPA9xx | Flash/debug | jtag | jtag_tmpa9xx | 0% | Toshiba TMPA9xx specific JTAG protocol details. | |
USB / HID | USB | usb_protocol | usb_hid | 0% | ||
USB / USBTMC | USB | usb_protocol | usb_usbtmc | 0% | ||
Dallas DS1985 | Other | onewire_network | 10% | Dallas DS1985 iButton (1-Wire) device. | Work in progress (Uwe Hermann). | |
Microwire | Embedded | — | 0% | |||
UNI/O | Embedded | — | 0% | |||
CompactFlash | Memory | — | 0% | |||
MMC | Memory | — | 0% | |||
Memory Stick | Memory | — | 0% | |||
SmartMedia | Memory | — | 0% | |||
xD-Picture Card | Memory | — | 0% | |||
SD card (SD mode) | Memory | — | sdcard_sd | 10% | Work in progress (Uwe Hermann). | |
Smartcards | Security | — | 0% | |||
FlexRay | Automotive | — | 0% | FlexRay is an automotive network communications protocol. | ||
LIN | Automotive | — | 0% | LIN (Local Interconnect Network) is an automotive bus standard. | ||
SWD | Flash/debug | — | 0% | Serial Wire Debug | ||
AVR PDI | Flash/debug | — | 0% | Atmel Program and Debug Interface (PDI) protocol. | ||
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% | |||
PS/2 | PC | — | 10% | Work in progress (Uwe Hermann). | ||
AC'97 | Audio | — | 10% | Work in progress (Uwe Hermann). | ||
HD Audio | Audio | — | 0% | |||
Nokia NRC17 | IR | — | 0% | |||
Sony SIRC | IR | — | 0% | |||
Philips RC-5 | IR | — | 0% | |||
Philips RC-6 | IR | — | 0% | |||
Philips RC-MM | IR | — | 0% | |||
Philips RECS80 | IR | — | 0% | |||
IrDA | Misc | — | 0% | |||
DALI | Misc | — | 0% | |||
PWM | Misc | — | 0% | |||
AT93C46 | EEPROM | — | 0% | Atmel AT93C46 serial EEPROM protocol | ||
HD44780 | Displays | — | 0% | HD44780 character LCD protocol | ||
7-segment display | Displays | — | 0% | |||
GPIB | Other | — | gpib | 10% | General purpose interface bus (GPIB), a.k.a. IEEE-488.1. | Work in progress (Uwe Hermann). |