Uwe Hermann's blog

New protocol decoders: ad5626, ad79x0, adxl345, ltc242x, ltc26x7

libsigrokdecode now supports a few additional protocol decoders: ad5626, ad79x0, adxl345, ltc242x, and ltc26x7.

This is a set of decoders (that stack upon the SPI or I²C decoders) that were contributed by Analog Devices Inc.:

  • ad5626: Analog Devices AD5626 12-bit nanoDAC
  • ad79x0: Analog Devices AD7910/AD7920 12-bit ADC
  • adxl345: Analog Devices ADXL345 3-axis accelerometer
  • ltc242x: Linear Technology LTC2421/LTC2422 1-/2-channel 20-bit ADC
  • ltc26x7: Linear Technology LTC26x7 16-/14-/12-bit rail-to-rail DACs

Some example traces are available in the sigrok-dumps repo and some test-cases in the sigrok-test repo, as usual.

The decoders were contributed by Teo Perisanu of Analog Devices, thanks a lot!

PulseView 0.4.2 released!

We're happy to announce the new PulseView 0.4.2 release!

This is quite a major release with loads of new features and bugfixes.

We provide various binary builds for Linux (AppImage), Windows (.exe installer) and Mac OS X (DMG) for the release version over at the Downloads page (in addition to the usual nightly builds).

Major new features and improvements:

  • PulseView session setups can now be saved/restored to and from *.pvs files.
  • Translation support was added to the GUI elements (and a first translation, German, is available). Please check the wiki for details on how you can contribute further translations.
  • There's a new protocol decoder selection subwindow with filtering capabilities, browing by decoder tags, auto-stacking of decoders where required, and more.
  • A new decoder "binary" output subwindow can show/save "OUTPUT_BINARY" type decoder data in various (decoder-specific) formats (WAV, PCAP, PNG, and many others). This also features a simple "hex view" for the data.
  • It is now possible to show/hide individual decoder annotation rows, and individual annotation classes. This is very handy when you're debugging a specific issue and only want to see certain classes of decoder annotations, e.g. "show me only CRC errors", "show me only parity errors and frame errors", or "show me only I²C NACKs" etc. etc.
  • Lots of UI and functionality improvements regarding cursors and markers.
  • Various new handy key shortcuts for zooming, moving around in the data, placing cursors, etc.
  • Various drawing and decoder/annotation performance improvements.

For further information about some of the new features please also check out these recent blog posts:

And of course, as usual, there are also quite a number of bugfixes and other minor improvements all over the place.

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

libsigrok 0.5.2 released!

We're happy to announce the release of libsigrok 0.5.2. Tarballs are available from the Downloads page, as usual.

This is a "minor" release that doesn't add, change or remove any public API functions, so all existing clients will continue to work (without even the need to recompile).

The following hardware is now (additionally) supported:

  • Logic analyzers: Microchip PICkit2, Sysclk SLA5032
  • Multimeters: Agilent 34405A, Agilent U127x, HP 34401A, Keysight 34465A, MASTECH MS2115B, Mooshimeter
  • Programmable power supplies: BK Precision 9130, HP 661xC, HP 66312A, HP 663xA, Korad KA3005P/KD6005P, Manson HCS-330x, RND 320-KD3005P, Stamos S-LS-31, TENMA 72-2535 V2.1, Voltcraft DPPS-32-15
  • Oscilloscopes: Agilent DSO1000B series, Hameg HMO3522, Rigol MSO5000 series, R&S HMO1000/RTA4000/RTB2000/RTC1000/RTM3000 series, YiXingDianZi MDSO
  • LCR meters: MASTECH MS5308, PeakTech 2165, UNI-T UT612, Voltcraft 4080
  • Thermometers: MASTECH MS6514

Various existing hardware drivers have also received numerous fixes and improvements.

This release also includes improved (and portable) USB HID support via HIDAPI, and Bluetooth/BLE support (currently Linux-only via BlueZ).

There have also been quite a few bugfixes, documentation fixes, portability fixes, build system improvements, performance improvements, and so on.

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

MASTECH MS6514 support

libsigrok now supports the MASTECH MS6514 digital thermometer.

This is a device with two thermocouple inputs and USB connectivity (SiLabs CP2102 based). It supports K,J,T,E,R,S,N thermocouple types.

A teardown and the protocol description are available on the device's wiki page, if you're interested.

The driver was contributed by Dave Buechi, thanks a lot!

Bluetooth and BLE support in libsigrok

libsigrok recently gained support for Bluetooth Classic and BLE based devices.

The libsigrok code contains a generic API that individual drivers can use, as well as OS-specific backend implementations of that API.

Currently only a Linux backend (based on BlueZ) has been implemented, but we're happy about patches to implement backends for other OSes.

So far the following Bluetooth/BLE devices are supported:

  • EEVBlog 121GW (based on Silicon Labs BLE112), contributed by Gerhard Sittig, thanks!
  • Mooshim Engineering Mooshimeter (based on TI CC2540), contributed by Derek Hageman, thanks!
  • Some multimeters with certain Bluetooth Classic based interfaces


More devices can be added later, of course. As always, contributions are welcome!

The Bluetooth/BLE support code was contributed by Gerhard Sittig, thanks a lot!
 

libsigrokdecode 0.5.3 released!

We're happy to announce the release of libsigrokdecode 0.5.3. Tarballs are available from the Downloads page, as usual.

This is a "minor" release that doesn't add, change or remove any existing public API functions, so all existing clients will continue to work (without even the need to recompile).

The following new protocol decoders are now available:

  • 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

In total, we now support 109 different protocol decoders. If you're working on additional PDs, please send patches our way!

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

New protocol decoder: hdcp

libsigrokdecode now supports yet another protocol decoder: hdcp.

This one stacks on top of the i2c decoder and decodes the High-bandwidth Digital Content Protection (HDCP) protocol mapped to HDMI.

Some example traces are available in the sigrok-dumps repo and some test-cases in the sigrok-test repo, as usual.

The decoder was contributed by Dave Craig, thanks a lot!

New protocol decoder: seven_segment

libsigrokdecode now supports yet another protocol decoder: seven_segment.

This one decodes the seven-segment display digits/character.

Some example traces are available in the sigrok-dumps repo and some test-cases in the sigrok-test repo, as usual.

The decoder was contributed by Benedikt Otto, thanks a lot!
 

sigrok-firmware-fx2lafw 0.1.7 released!

YiXingDianZi MDSO

We're happy to announce the sigrok-firmware-fx2lafw 0.1.7 release. This is an open-source firmware that allows you to use almost any of the popular Cypress FX2 based devices as logic analyzers. It also supports a number of FX2 based USB oscilloscopes/MSOs like the Hantek 6022BE/BL or the Sainsmart DDS120.

The source code and pre-built firmware files are available from the usual place:

This release adds support for the YiXingDianZi MDSO device, as well as experimental support for FX2-based logic analyzer devices to sample at 48 MHz (for usually only a very short amount of time, heavily depends on USB bus conditions).

It also fixes a few bugs for the Hantek 6022BE and Sainsmart DDS120 oscilloscope devices, and some sdcc related issues.

The NEWS file contains some more details.

sigrok AppImage updates

As you probably know, we've been providing pre-built Linux binaries for PulseView and sigrok-cli in the form of AppImages for a while now. Those can be useful/convenient if you want to test sigrok without having to build from source, and/or if the packages of your favorite Linux distro are out of date.

You can simply download a single *.AppImage file, make it executable via "chmod+x" and run it (see the wiki for details).

As of today, the AppImages we provide are now being built on Ubuntu 16.04 LTS Xenial Xerus (originally released 2016) instead of the previously used Ubuntu 14.04 LTS Trusty Tahr (originally released 2014, Canonical support ended 04/2019).

This has been done since we're now using a more recent version of Qt for PulseView (that is not easily available in the older Ubuntu version), and also to get more recent versions of various other libraries we use in general.

This change shouldn't affect too many people, the new AppImages should work fine on pretty much any modern Linux distro which is somewhat newer than Ubuntu 16.04 LTS Xenial Xerus from 2016.

Pages

Subscribe to RSS - Uwe Hermann's blog