Uwe Hermann's blog

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.

Sysclk SLA5032 support

libsigrok now supports the Sysclk SLA5032 logic analyzer.

This is a 32-channel logic analyzer with up to 500MHz sampling rate. It can be switched into one of three different modes (the current mode is indicated by a green LED on the respective mode text):

  • 32CH 500M: 500MHz sampling rate, 32 channels, max. 64Mbits storage per channel, support for hardware triggers (sysclk-sla5032 driver).
  • Saleae 100M: The device enumerates as a Saleae Logic16, streaming possible like with the Logic16, only software triggers (saleae-logic16 driver).
  • Saleae 500M: Similar to the above, but the max. sampling rate is actually 500MHz.

The device uses a Xilinx Spartan FPGA, DDR2 RAM, 2 SPI flashes, 2 I²C EEPROMs, a Cypress FX2, an Atmel ATmega8A microcontroller and a bunch of other components internally, full details in the wiki.

The libsigrok driver was contributed by Vitaliy Vorobyov, thanks a lot!

100th supported sigrok protocol decoder: cc1101

Once again, libsigrokdecode has gained support for yet another protocol decoder. This time: cc1101.

This PD decodes the SPI-based protocol of the Texas Instruments CC1101 sub-1GHz RF transceiver chip.

As usual, there are a few sample files in our sigrok-dumps repo and a few test-cases in the sigrok-test repo (for catching regressions and such).

The decoder was contributed by Marco Geisler, thanks a lot!

Also, congratulations for contributing the 100th protocol decoder supported by libsigrokdecode!

You can checkout all 100 supported decoders (authored by roughly 50 or so unique contributors) in our wiki. There's also a huge bunch of additional decoders that are on our wishlist and/or are already work-in-progress, i.e. the work towards 200 supported decoders has already begun. Also, your contribution could help us get there faster, hint hint :)

Pages

Subscribe to RSS - Uwe Hermann's blog