summaryrefslogtreecommitdiff
path: root/decoders
AgeCommit message (Collapse)Author
2019-11-29lin: calculate checksum on two consecutive UART idle framesStephan Thiele
2019-11-29modbus: Ignore unknown/unsupported types.Uwe Hermann
Without this, e.g. the recently added 'IDLE' ptype of the UART decoder would cause issues.
2019-11-29uart: Document the new 'IDLE' ptype for OUTPUT_PYTHON output.Uwe Hermann
2019-11-29uart: communicate periods of idle frames to stacked decodersGerhard Sittig
Detect periods of a frame's length with idle level, and communicate these time spans to stacked decoders by means of PYTHON output. Do *not* display these idle frames in regular annotations, for backwards compat.
2019-11-28signature: Fix license metadata field to match pd.py license header.Uwe Hermann
2019-11-28signature: Use more human-readable option values.Uwe Hermann
2019-11-28signature: Minor consistency fixes.Uwe Hermann
2019-11-28signature: Add self.reset().Uwe Hermann
2019-11-28Add decoder: signature analysissharow
2019-11-24gpib: drop obscure "total number of samples" optionGerhard Sittig
The gpib decoder tried to "flush" input data at a user specified sample number when the input data lacked the respective edge which triggers the processing during regular operation. This is rather obscure a feature, not seen in any other decoder, perhaps a workaround for bug #292, rather unaccessible to users (units of sample numbers not times nor automatic detection of the EOF condition), highly confusing according to user reports, and not covered by existing tests. The mere presence of this option caused severe issues in application code (see bug #1444). While there is no apparent fix that won't affect other decoders. So let's drop this questionable feature. Valid and complete captures should contain all relevent edges and thus decode properly.
2019-11-24tdm_audio: Place each channel on its own annotation row.Uwe Hermann
2019-11-24tdm_audio: Add initial decoderBen Dooks
2019-11-24amulet_ascii: Drop unneeded rxtx_channels.Uwe Hermann
2019-11-24amulet_ascii: Drop a few unneeded parenthesis.Uwe Hermann
2019-11-24Initial Amulet LCD ASCII PDVesa-Pekka Palmu
This is a protocol decoder for the 'ASCII' protocol used by Amulet Technologies LCDs. Currently some commands are not implemented yet. I also lack capture data from a display that will use replies other than ACK and NACK. Reads are untested as I have no suitable captures. The PD copes with bus errors (there is an actual bug in the device I'm reverse engineering) and most of the commands are implemented. The unimplemented commands should generally consume the correct number of bytes from the bus, the exception to this are the drawing commands, because there are actually at least two revisions of them with different payloads, that are really hard to detect in greedy algorithm.
2019-11-23spiflash: lists.py: Use None for unsupported features.Uwe Hermann
2019-11-23spiflash: Minor fixes for Atmel AT25 chips.Uwe Hermann
2019-11-20spiflash: Add support for Atmel AT25xxxSoeren Apel
2019-11-12uart: Add [rx|tx]_packet_len options.Uwe Hermann
Similar to the recently added [rx|tx]_packet_delimiter options, these emit summary annotations ("packets") when a certain number of data values have been decoded. This is a convenience feature which can be useful when a user wants to view data which doesn't have a specified delimiter value (as last data value in the "packet"), but rather fixed-length "packets". This is just an (intentionally very simple) helper/convenience improvement and is NOT meant to replace "proper" stacked decoders for UART-based protocols.
2019-11-12uart: Add [rx|tx]_packet_delimiter options.Uwe Hermann
This is a convenience feature that emits summary annotations ("packets") that comprise all data values that were decoded until a specified delimiter value is seen (as last data value of the "packet"). Example use-cases include ASCII data where it can be convenient to "packetize" whenever a 10/0x0A value (newline) is seen, or some protocols which have a fixed "marker" value (e.g. 0x55) as last value in the "packet". The annotations are affected by the selected 'format' option, i.e. the user can get summaries in ASCII or hex or other formats. This is just an (intentionally very simple) helper/convenience improvement and is NOT meant to replace "proper" stacked decoders for UART-based protocols.
2019-11-09eeprom93xx: Use fixed-width hex output.Uwe Hermann
This improves readability a bit in most cases.
2019-11-09eeprom93xx: Add OUTPUT_BINARY support.Uwe Hermann
2019-11-06seven_segment: Simplify two code snippets.Uwe Hermann
2019-11-06seven_segment: Initial commit.Benedikt Otto
2019-11-05spiflash: Add "EEPROM" to descriptions.Uwe Hermann
There are various different names that these types of memories are being referred to in the wild: SPI flash, flash chip, flash, flash EEPROM, SPI EEPROM, serial flash, serial memory, flash memory, and various others. In order to make UI decoder selection more useful to the user, we add the "EEPROM" string to some of the decoder metadata fields, so the decoder will (for example) show up in PulseView's list of decoders when the user types "eeprom" to narrow down the listed decoders.
2019-11-05can: Mention CAN-FD support in the description.Uwe Hermann
2019-10-06can: Factor out dlc2len().Uwe Hermann
2019-10-06can: Random whitespace and cosmetic fixes.Uwe Hermann
2019-10-06can: introduce fast bitrateStephan Thiele
2019-10-06can: proper annotation on CAN-FD extended framesstephan.thiele
2019-10-06can: add basic CAN-FD handling of non BRS extended framesstephan.thiele
2019-10-06can: make PD temporary compatible to existing testsStephan Thiele
2019-10-06can: correct decoding of CRC-21Stephan Thiele
2019-09-13can: decode CAN-FD DLCStephan Thiele
2019-09-13can: display CRC type + correct decoding of CRC-17Stephan Thiele
2019-09-13can: implement decoding of CAN-FD header when FDF bit is setStephan Thiele
2019-09-13can: implement basic CAN-FD decoding (SRR and FDF bits)Stephan Thiele
2019-08-30eeprom93xx: Add ascii format supportSylvain Pelissier
2019-08-23mrf24j40: Add TX retries/fails and CCAFAIL support.Uwe Hermann
2019-08-06mrf24j40: Add RX/TX frame annotations.Uwe Hermann
2019-07-06pca9571: Shorten names a bit.Uwe Hermann
2019-07-05Add an NXP PCA9571 decoder.Mickael Bosch
2019-07-01modbus: Make the 'framegap' option an integer.Uwe Hermann
2019-06-30modbus: Make C->S and S->C configurable, add framegap option.Andrew Gregory
Change client->server and server->client to be separately configurable, allowing decoding at both the server (where client->server is RX and server->client is TX) and client (where client->server is TX and server->client is RX) ends of the link. It also allows monitoring of the bus on a single channel (where client->server and server->client are both RX (or TX)). When I tried to decode a bus capture, I found that when the transmitter was turned off it generated a false start bit, which in turn resulted in a false trailing byte from the UART decoder. This narrowed the inter-frame gap to the point where the Modbus decoder failed to recognise a new frame. The result was only the first frame of the capture decoded - all the rest of the frames failed to decode. I had to reduce the frame gap to allow subsequent frames to decode, and so made it a configurable option that defaults to the existing gap. Lastly, I fixed a call to puti() that incorrectly included the annotation prefix.
2019-06-30sdcard_spi: Add "Card is busy" annotations for CMD24.Pierre Poulain
This fixes bug #1376.
2019-06-30sdcard_spi: Fix incorrect handling of CMD17.Pierre Poulain
This fixes bug #1377.
2019-06-20usb_request: Allow configuration of BULK IN transfer displayStefan Brüns
From a protocol level, a BULK IN transfer starts when the host starts polling the respective endpoint. For analysis, it is sometimes useful to show when the devices starts to answer the requests. As both are useful for different use cases (the old, default one emphasizes the host behavior, the new one shows the endpoint/device behavior), make the display configurable.
2019-06-20usb_request: Use separate annotation rows for IN, OUT and CONTROLStefan Brüns
E.g. CONTROL and BULK IN transfers may overlap each other, and as a result only one of the two can be seen in pulseview. Partly solves bug #1046. In case a device has multiple IN/OUT endpoints, transfers would still overlap, but many simple devices have just one each.
2019-06-17usb_request: Fix some decoding errorsStefan Brüns
Append OUT data only if it has been ACKed. OUT transfers (BULK OUT or CONTROL transfer DATA stage) are typically NACKed to create backpressure. Always keep IN and OUT transfers separate. On the physical layer, the endpoint number only uses 4 bits, and IN and OUT use separate tokens. In case the transfer is an IN transfer, set the high bit as used in the endpoint descriptors (i.e. 0x81 is IN enpoint 1, 0x01 is OUT endpoint 1).
2019-05-15enc28j60: Rename self.ann to self.out_ann.Uwe Hermann
(for consistency with all other decoders)