X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=NEWS;h=f61727f8c75edf52e1f306983070a5eda629fd2e;hb=cebf5db0d181381417ba7908c1180f956b264fb6;hp=f278991b0d5f7f1ff1172b76d78a5a875e84f388;hpb=168e5fbe5a776d33750c0df9b12cee06d55d8c1c;p=libsigrokdecode.git diff --git a/NEWS b/NEWS index f278991..f61727f 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,236 @@ +0.5.3 (2019-12-11) +------------------ + +Note: This release does NOT change the libsigrokdecode public C API in +incompatible ways. This means existing frontends should not require any +changes. However, individual PDs and their output changed, which may +require some adaptations on the user's side in some cases. + + * New supported protocol decoders: + - lin Local Interconnect Network (LIN) protocol + - x2444m Xicor X2444M/P nonvolatile static RAM protocol + - ds2408 1-Wire 8-channel addressable switch + - cc1101 Low-power sub-1GHz RF transceiver chip + - enc28j60 Microchip ENC28J60 10Base-T Ethernet controller protocol + - pca9571 NXP PCA9571 8-bit I²C output expander + - seven_segment 7-segment display protocol + - amulet_ascii Amulet Technologies LCD controller ASCII protocol + - tdm_audio TDM multi-channel audio protocol + - signature Annotate signature of logic patterns + - nes_gamepad NES gamepad button states + - flexray Automotive network communications protocol + - ir_rc6 RC-6 infrared remote control protocol + - ieee488 IEEE-488 General Purpose Interface Bus (GPIB/HPIB or IEC) + - hdcp HDCP protocol over HDMI + * All decoders must implement a reset() method now. It should reset all + PD-internal state and will be called when the decoder is restarted from + scratch (by frontends) with new data. + * Fix various memory leaks and bad memory accesses (e.g. bug #1374). + * Build system: Add support for Python 3.8 (bug #1438). + * Various compiler warning fixes. + * Slightly more detailed and easier to read log messages in some places. + * Fix incorrect decoder 'output' metadata. + * Improve annotation row ordering in various PDs. + * ook: + - Fix two typos causing decode issues. + * uart: + - Add support for break condition detection. + - Add 'FRAME' Python output type that communicates frame validity. + - Add '[rx|tx]_packet_delimiter' options. + - Add '[rx|tx]_packet_len' options. + - Communicate periods of idle frames to stacked decoders. + - Add 'ignore' parity type, remove unsupported 'check_parity' option. + - Shorten/rename various decoder option names. + * spiflash: + - Add support for Winbond W25Q80DV and Atmel AT25xxx. + - Add support for the chip erase commands (CE, CE2). + - Add support for write enable state tracking. + - Remember write protection latch from status registers. + - Fix WRSR incorrectly using MISO for register decodes. + - Add "EEPROM" to descriptions to increase discoverability in UIs. + * i2s: + - Fix incorrect channel assignment. + - Fix usage of the incorrect edge for the data sampling. + * ds1307: + - Fix incorrect unit for frequencies above 1Hz. + - Fix incorrect AM/PM flag handling. + * ir_rc5: + - Fix an incorrect command value. + - Massively improve performance via proper self.wait() usage. + * onewire_network: + - Add support for the 'Resume ROM' command. + - Add a 'Disable Test Mode' command for DS2408. + * sdcard_spi: + - Add support for CMD24 including payload data (bug #1365). + - Fix duplicated 'End bit' annotation emission. + - Fix incorrect handling of CMD17 (bug #1377). + - Add "Card is busy" annotations for CMD24 (bug #1376). + * spi: + - Add support for "transfer" annotations. + * atsha204a: + - Add support for ATECC508A. + - Display OtherData parameter correctly when Verify command is executed + in Validate mode. + - Only call output_tx_bytes() when the bytes buffer is not empty. + * usb_request: + - Append OUT data only if it has been ACK'd. + - Always keep IN and OUT transfers separate. 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). + - Use separate annotation rows for IN, OUT and CONTROL (bug #1046). + - Allow configuration of BULK IN transfer display via an option. + * modbus: + - Make C->S and S->C configurable via options. + - Add a 'framegap' option. + * mrf24j40: + - Add RX/TX frame annotations. + - Add TX retries/fails and CCAFAIL support. + * eeprom93xx: + - Add ASCII format support. + - Add OUTPUT_BINARY support. + * can: + - Add CAN-FD support. + - Add new 'fast_bitrate' option. + - More robust sample point position for low sample rates. + * gpib, iec: + - Removed in favor of the new ieee488 decoder. + * ir_nec: + - Fix decoder when running it multiple times (bug #1243). + +0.5.2 (2018-09-12) +------------------ + +Note: This release does NOT change the libsigrokdecode public C API in +incompatible ways. This means existing frontends should not require any +changes. However, individual PDs and their output changed, which may +require some adaptations on the user's side in some cases. + + * New supported protocol decoders: + - mcs48 Intel MCS-48 external memory access protocol + - st7735 Sitronix ST7735 TFT controller protocol + - atsha204a Microchip ATSHA204A CryptoAuthentication device + - cfp 100 Gigabit C form-factor pluggable (CFP) protocol + - jtag_ejtag MIPS EJTAG protocol + - swim STM8 Single Wire Interface Module (SWIM) protocol + - cec HDMI Consumer Electronics Control (CEC) protocol + - miller Miller encoding protocol + - ook On-off keying protocol + - ook_oregon Oregon Scientific weather sensor protocol + - ook_vis OOK visualisation in various formats + * Various minor performance improvements in the backend. + * Fix an issue causing decoder termination to take a long time. + * Fix multiple self.put() memory leaks (bug #329). + * Fix multiple memory leaks reported by scan-build. + * Show a backtrace when the decode aborts due to an error (bug #1158). + * Perform the log level check for non-default handlers as well (bug #698). + * Fix multiple compiler warnings. + * Compiler: Add -Wshadow -Wformat=2 -Wno-format-nonliteral -Wfloat-equal. + * Build system: Add Python 3.7 support. + * Fix a 'make install' issue that happens with Python >= 3.7. + * Add two missing Python GIL release operations. + * libsigrokdecode API changes: + - Add the srd_log_callback_get() API call. + - Add the SRD_ERR_TERM_REQ error code. + * dcf77: + - Annotate invalid dow and month fields, do not abort execution (bug #1173). + - Annotate unexpected bit numbers and values, do not abort execution. + * spiflash: + - Add basic Adesto AT45DBxx support (WRITE1/2, STATUS). + - Add Adesto AT45DB161E metadata. + * jtag: + - Fix shifting of registers (bug #1066). + * jtag_stm32: + - Fix handling of boundary scan TAP and incorrect state transitions. + * eeprom24xx: + - Add ON Semi CAT24C256 and CAT24M01 support. + * counter: + - Emit wider annotations to improve readability in UIs (bug #1210). + - Add support for user specified initial counter values (bug #1229). + - Add an option to ignore a certain number of edges. + - Let the user decide how to handle the initial dead_cycles state. + * mdio: + - Accept MDIO READ without previous ADDRESS command (bug #1258). + * edid: + - Add support for extension blocks. + - Various annotation improvements. + * spi: + - Fix an issue causing an AttributeError during certain decodes. + * usb_power_delivery: + - Emit more details in annotations (power, PDO type, RDO info). + - Add PPS support. + - Add better USB Power Delivery 3.0 support. + +0.5.1 (2018-04-12) +------------------ + +Note: This release does NOT change the libsigrokdecode public C API in +incompatible ways. This means existing frontends should not require any +changes. However, individual PDs and their output changed, which may +require some adaptations on the user's side in some cases. + + * New supported protocol decoders: + - ac97 Audio and modem control for PC systems + - ds243x Maxim DS243x series 1-Wire EEPROM protocol + - maple_bus Maple bus peripheral protocol for SEGA Dreamcast + - morse Demodulated morse code protocol + - graycode Accumulate rotary encoder increments, timing statistics + - counter Count number of edges + - sda2506 Serial nonvolatile 1-Kbit EEPROM + - rc_encode PT2262/HX2262/SC5262 remote control encoder protocol + * Updated build requirements: + - libglib >= 2.34 + * New API calls: + - srd_searchpaths_get(): Retrieve PD search paths. + - srd_session_terminate_reset(): Terminate currently executing decoders + in a session, reset internal state. Allows re-using a session. + * can: + - Introduce clock synchronization (bug #990). + - Fix incorrect stuff bit handling (bug #1085). + * i2c: + - Don't drop the first sample of input data. + - Make input samplerate optional (bug #1076). + * i2s: + - Binary output: Make 32-bit WAV files, set file size to 4GB. + - Fix unportable use of struct.pack(). + - Make samplerate meta data optional. + * stepper_motor: + - Make samplerate meta data optional. + * pwm: + - Fixup sample numbers for binary output. + * onewire_network: + - Fixup start samplenumber for annotations. + * lpc: + - Improve robustness when decoding unexpected input data. + * ir_nec: + - Make timing margin relative. + - Optionally accept input signals that include the carrier. + * usb_request: + - Handle CONTROL transfer protocol stalls. + * usb_power_delivery: + - Enforce numerical order of RDO/PDO flag annotations, enforce check + order for start-of-packet sequences (bug #1090). + * parallel: + - Cope with sparse input maps, assume zero for unconnected pins (bug #1088). + - Unbreak and improve "word" de-multiplexing. + - Implement consistent number formatting. + - Expand 'wordsize' description (bits vs cycles). + * spi: + - Cope when a sample rate of 0 was configured (bug #1118). + * Acquire/release the Python GIL where needed to avoid threading issues. + This allows frontends to call libsigrokdecode API functions from different + threads without running into issues. + * Convert all protocol decoders to PD API version 3. + * Support for the old PD API version 2 has been removed. + * Unbreak the execution of Decoder.wait() with empty condition. + * self.wait(): Accept more forms of "unconditional wait" (None, no args). + * Fix a compiler warning on Mac OS X. + * configure.ac: Add missing PKG_PROG_PKG_CONFIG and AC_C_BIGENDIAN. + * Add a reset() method to all PDs which resets internal variable state. + * Clarify and improve channel mapping debug output. + * Print decoder and system search paths in debug output. + * Drop overly verbose log messages about (un)loading PDs. + * HACKING: Prefer git pull requests over mailing list patches. + 0.5.0 (2017-06-12) ------------------ @@ -175,7 +408,7 @@ means it is NOT backwards-compatible and frontends will need updates. * jitter: - Avoid Unicode string literals (bug #569). * jtag: - - Fix/enable OUT_PYTHON output. + - Fix/enable OUTPUT_PYTHON output. - Add more annotations, fix a SHIFT-IR/-DR issue. * jtag_stm32: - Fix incorrect handling of registers. @@ -197,7 +430,7 @@ means it is NOT backwards-compatible and frontends will need updates. * pwm: - Avoid Unicode string literals (bug #569). * spi: - - OUT_PYTHON docs: Fix order of MISO/MOSI data items. + - OUTPUT_PYTHON docs: Fix order of MISO/MOSI data items. - Tell stacked decoders about missing CS# signal. - Add binary output facilities for MISO/MOSI (bug #424). - Don't decode data lines if CS# isn't asserted (bug #559).