The firmware implementation for these devices is different from the "usual" firmware for FX2-based logic analyzers. It was originally written by Jochen Hoenicke (thanks a lot!) for another project and was included into sigrok-firmware-fx2lafw mostly for convenience reasons; see the sigrok-firmware-fx2lafw README for details.

Finally, this release also adds initial support for analog channels on FX2-based logic analyzers, such as the CWAV USBee AX (and various clones).

The new firmware files require the soon-to-be-released libsigrok >= 0.4.1 (or current git HEAD). The Windows sigrok-cli installer and PulseView installer (nightly builds) we provide already include these firmware files and a libsigrok version that is new enough.

libsigrokdecode now supports another protocol decoder: timing. This has been supported for a while already actually (and is part of libsigrokdecode 0.4.0), but hasn't seen an official announce yet, so here goes.

The PD works on a single logic channel and shows (for all transitions) the time between a transition and the next one.

As usual we have a few test-cases in our sigrok-test repo to ensure there are no regressions later on as the backend code and/or PD change.

One of the bigger new features are the language bindings for libsigrok (based on Doxygen + SWIG): You can now use libsigrok functionality in C++, Python, Ruby, and Java. The C++ bindings are already used by PulseView (see below), and the Python bindings are used by the (still in development) sigrok-meter frontend. Let us know if you're using some of the bindings for your own projects!

There have also been an unusually huge set of random new features and facilities, bugfixes, documentation fixes, portability fixes, build system improvements, and so on.

The API has changed quite a bit since the last major release, you can read up all the details in the API docs.

See the NEWS file for a much more detailed list of changes, or browse the git history for even more details.

And with that, we now support a total of 60 different protocol decoders. There are some more in the pipeline for the next releases, and we get contributed decoders on a pretty regular basis these days, which is awesome! If you're working on additional PDs, please send patches our way!

Apart from new decoders, there have also been a number of improvements and bugfixes for existing PDs as well.

The usb_request PD is especially noteworthy, since it not only allows you to decode higher-level USB requests, but it can also export the decoded data in the PCAP format, which you can further process/analyze in other tools such as Wireshark. See this blog post for details.

There have also been the usual set of random new features, bugfixes, documentation fixes, portability fixes, build system improvements, and so on. Only minor API changes have gone into this release, though.

See the NEWS file for a much more detailed list of changes, or browse the git history for even more details.

sigrok-cli

The sigrok-cli command-line utility hasn't seen too many new features in this release. There have been various bugfixes and fixes for memory leaks and compiler warnings and such, as well as some command-line option parsing robustness improvements.

The new --get and -T|--transform-module options have been added.

See the NEWS file for a more detailed list of changes, or browse the git history for even more details.

PulseView

The PulseView GUI has seen a pretty large set of improvements compared to the last release.

It is now based on the new libsigrokcxx C++ library (the libsigrok C++ bindings), supports Qt4 or Qt5, and is written in C++11 now (obsoleting some of the Boost functionality used previously in favor of std:: equivalents).

Various new or improved features have been added:

Support for vertical scaling of analog or logic traces

A "Save selection range as..." feature

Some settings now survive a restart (last open/save directory location, window size/position, last used device)

There are also a bunch of regressions and/or known bugs and missing features we'll be working on for the next minor bugfix release. If you notice any issues that haven't been reported yet, please file a bug.

We also have a number of larger tasks on our list, such as a new protocol decoder backend which will improve the performance of most PDs by quite a bit (10x or 20x speedup is easily possible for some PDs). We're also investigating a more generic flow-graph based framework which will tie all "blocks" we currently have (and others we'll add) more tightly together in a flexible manner, e.g. hardware drivers, input modules, output modules, transform modules, protocol decoders, etc.

Thanks a lot to everyone who has contributed to any of the sigrok projects to make these releases happen! This wouldn't have been possible without the help of the numerous contributors!

These are all 1-channel lab power supplies with various different max. voltage and current properties.

Velleman also resells them under the name PS3005D and LABPS3005D, as does Farnell/Tenma using their usual model names of 72-xxxx. See the Korad KAxxxxP series wiki page for details. If you know of other vendors who resell these devices, please let us know.

The protocol used by the power supplies is documented on our wiki page, together with various quirks and bugs in the device firmware and/or vendor documentation.

If you own a not-yet-supported device from this series, you can easily add support by telling the libsigrok driver about the "ID" that the power supply returns upon the "*IDN?" command, e.g. like this. Please send us a patch if you do so!