summaryrefslogtreecommitdiff
path: root/decoders
AgeCommit message (Collapse)Author
2015-10-06usb_signalling: Track USB symbol width to compensate frequency errorsStefan Brüns
USB low/full speed allows for frequency tolerance of 1.5%/0.25%. At maximum packet size (sync + PID + data + CRC16) of 12 bytes/1027 bytes this amounts to 1.4 bits/20 bits, so the decoder has to lock to the actual symbol frequency to avoid any symbol misdetections. The signal is sampled twice, once at the symbol center and once at the expected edge position. Comparing the symbol at both positions gives an indication if the current bit width is too low or too high. Adjust accordingly.
2015-10-06usb_packet: calculate and check CRC5/CRC16Stefan Brüns
In case CRC validation fails, an crc5-err/crc16-err annotation is issued, instead of crc5-ok/crc16-ok, and the error is noted in the annotation text.
2015-10-06rfm12: fix small typoRoland Hieber
There is a small typo in the rfm12 protocol decoder that I just noticed:
2015-09-15jitter, pwm: Avoid Unicode string literalsDaniel Elstner
It seems the Python we ship along our Windows binaries does not support u"..." strings, even though it's been a language feature since Python 2. Remove the "u" prefix to avoid a syntax error. Also, consistently use format "%.1f" at all scales. This fixes bug #569.
2015-09-14can: Improve stuff bit annotation placement.Uwe Hermann
2015-09-14can: Emit bit value annotations.Uwe Hermann
2015-09-03jtag_stm32: Decode IDCODE contents as strings (not just hex vals).Uwe Hermann
2015-09-03jtag_stm32: Decode more fields, improve IDCODE handling.Uwe Hermann
2015-09-03jtag_stm32: Cleanups, shorter code.Uwe Hermann
2015-09-03jtag_stm32: Update to reflect change in jtag OUT_PYTHON.Uwe Hermann
2015-09-03jtag: Submit bit samplenumbers together with the bits.Uwe Hermann
2015-09-03jtag_stm32: Fix incorrect handling of registers.Uwe Hermann
The STM32F10xxx has two serially connected JTAG TAPs, the boundary scan tap (5 bits) and the Cortex-M3 TAP (4 bits). See UM 31.5 "STM32F10xxx JTAG TAP connection" for details. Due to this, we need to ignore the last bit of each data shift (and we currently ignore the 5 bits of the boundary scan tap).
2015-09-03jtag: Add more annotations, fix a SHIFT-IR/-DR issue.Uwe Hermann
The code was previously not decoding a bit for the first state change to SHIFT-IR/-DR, which was incorrect.
2015-09-03jtag: Fix/enable OUT_PYTHON output.Uwe Hermann
2015-08-21nunchuk: Fix inverted button press logic.Uwe Hermann
The buttons are pressed if the respective bit is 0.
2015-08-18mrf24j40: Fix a register address typo.Uwe Hermann
2015-08-17tlc5620: Add options for per-DAC Vref, show voltages.Uwe Hermann
Instead of showing raw values in the annotations, calculate the actual voltage (based on raw value, gain, and Vref) and use that.
2015-08-17tlc5620: Handle the case of less than 11 bits in a command.Uwe Hermann
2015-08-17tlc5620: Properly handle LOAD and LDAC based operations.Uwe Hermann
- If LOAD goes low *and* LDAC is already low, the voltage is set immediately. - If LOAD goes low but LDAC is high, the value is only written into an internal register, but the voltage is not changed (yet). - If LDAC goes low, all four DAC voltages (DAC A/B/C/D) are set according to the respective register values at the same time.
2015-08-17tlc5620: Only decode the last 11 bits, ignore the rest.Uwe Hermann
2015-08-17tlc5620: Fix incorrect DAC selection decode, add more annotations.Uwe Hermann
2015-08-14usb_packet: Handle invalid packets more gracefully.Uwe Hermann
Previously the PD was blindly trying to decode any packet, no matter whether it was too short (and/or bogus) or not, causing issues like this: srd: Calling usb_packet decode(): IndexError: list index out of range Such cases of invalid input are now handled better by emitting "UNKNOWN" and "Invalid packet" annotations. This fixes bug #186.
2015-08-14usb_packet: Fix incorrect DATA*/MDATA handling.Uwe Hermann
Thanks to Pavel Sukortsev for the bug report and fix. This fixes bug #623.
2015-08-06Add initial SD card (SD mode) decoder.Uwe Hermann
In the current state the decoder can decode the following commands: CMD0, CMD2, CMD3, CMD6, CMD7, CMD8, CMD9, CMD10, CMD13, CMD16, CMD55, ACMD6, ACMD13, ACMD41, ACMD51. Other commands (and more details for existing commands) will be added later.
2015-07-18Add protocol decoder for Modbus RTU.Bart de Waal
2015-07-10qi: Add Qi charger protocol decoderJosef Gajdusek
2015-07-09Add an MDIO/SMI decoder.Aurelien Jacobs
2015-07-01adns5020: Minor tweak to annotation format.Uwe Hermann
2015-07-01mrf24j40: Factor out register lists to lists.py.Uwe Hermann
2015-07-01Add a Microchip MRF24J40 802.15.4 2.4GHz RF tranceiver decoder.Karl Palsson
No interpretation of register bits, nor attempting to decode packet contents, but all shifted register addresses and long register memory regions are decoded. Signed-off-by: Karl Palsson <karlp@tweak.net.au>
2015-06-22adns5020: Add manufacturer name to description.Uwe Hermann
2015-06-19Add Avago ADNS-5020 optical mouse sensor decoder.Karl Palsson
Decodes reads/writes of registers. Understands resetting on chip select if provided. Does not understand burst mode. Signed-off-by: Karl Palsson <karlp@tweak.net.au>
2015-06-16am23xx: explicitly mention RHTxx devices.Karl Palsson
Include their compatibility in the dropdown options too.
2015-04-26timing: Shorten annotations (time units).Uwe Hermann
2015-04-26Add a decoder that calculates timings between transitions.Baruch Even
2015-04-07spiflash: Add lists.py and a 'chips' PD option.Uwe Hermann
2015-04-07Rename the 'mx25lxx05d' PD to 'spiflash'.Uwe Hermann
This is in preparation of making the PD more generic so it can support a lot more xx25 series SPI (NOR) flash chips.
2015-04-07Fix a bunch of typos.Uwe Hermann
2015-04-03onewire_link: Fix a bug when the samplerate is too low for the PD.Uwe Hermann
The code was trying to emit annotations before self.register(srd.OUTPUT_ANN) was run. This fixes bug #357.
2015-04-03spi: Don't decode data lines if CS isn't assertedAndreas Sandberg
Avoid decoding and outputting data from the SPI bus if the CS pin hasn't been asserted. This avoids confusing both users and stacked decoders which otherwise end up seeing traffic intended for other chips (or just noise). Note: The old behavior of decoding all traffic is still in place if no CS pin has been wired up to the decoder. This fixes bug #559.
2015-04-02Slightly shorten a few PD descriptions.Uwe Hermann
2015-04-02Add a decoder for stepper motor direction/speed signals.Petteri Aimonen
2015-04-02Fix a few decoding bugs with arm_etmv3.Petteri Aimonen
Fixed: - wrong address decoding for some branches - error in annotation lists for exception entry/exit - exception was being thrown for 0E0N p-header packets - fixes to objdump output parsing, better function name & source code matching New features: - added decoding of IRQ names for branch exception info - added support for -C option to objdump to decode C++ symbol names - put branches on the "Exceptions" annotation row when they contain exception info.
2015-04-02pwm: add period annotationMatt Porter
2015-03-25mx25lxx05d: Implement FAST READ command.Uwe Hermann
2015-03-02Fix typo in swd decoderPetteri Aimonen
2015-03-02Add ARM TPIU/ITM/ETMv3 decodersPetteri Aimonen
2015-02-24nrf24l01: Change 'xn297_extensions' option to 'chip'.Uwe Hermann
This allows for easily extending the PD to support other clones or compatibles of the nRF24L01(+) chip as well.
2015-02-24nrf24l01: Add option to support the XN297's extra registersMike
2015-02-17Improve uart decoder sample positions at high data rates.Petteri Aimonen
At 3 samples per bit, the uart decoder took the value at the last sample instead of the middle one. Improve calculations so that sampling is more accurate at odd number of samples per bit.