Error message

  • Warning: count(): Parameter must be an array or an object that implements Countable in theme_table() (line 1998 of /data/sigrok.org/apache/blog/includes/theme.inc).
  • Warning: count(): Parameter must be an array or an object that implements Countable in theme_table() (line 2061 of /data/sigrok.org/apache/blog/includes/theme.inc).
  • Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /data/sigrok.org/apache/blog/includes/common.inc).

Windows support and installers

For a long time Windows support in sigrok was somewhat lacking and/or in the TODO state, but things have improved quite a bit recently.

While there have been both a working cross-compile setup based on MinGW (additionally based on the MXE suite of scripts) as well as working NSIS-based installer executables for sigrok-cli and for PulseView for quite a while, they weren't really all that useful.

Only very few devices used to actually work in practice due to portability issues and due to certain limitations in the way libsigrok was talking to USB-based hardware devices (e.g. various logic analyzers) and serial port based devices.

All of this has changed though. A major part of the solution and fixing was done by Martin Ling (thanks a lot!) by writing specific thread-/Event-based code for the Windows platform for allowing libsigrok drivers based on libusb to properly work on Windows (transparently, i.e. without requiring changes to the drivers).

The other part of the puzzle is the new LGPL3+ libserialport shared library, also written by Martin Ling (thanks again!), which is a portable, cross-platform C libary (that is completely independent of libsigrok, i.e. it can be used by various other open-source projects without any problems, too). So far, it supports Linux, Windows, Mac OS X, and some BSDs. More on libserialport in another blog post.

With all the above-mentioned improvements we're now providing daily-built, self-contained Windows installers for sigrok-cli and PulseView, that ship with everything you need (the executables and libraries, the protocol decoders, some firmware files, some example files you can use for testing decoders and UIs, the Windows Python 3 installer you need for running protocol decoders, the Zadig tool you need for switching devices to use the libusb driver, etc. etc.).

Downloads:

Please make sure to read the Windows wiki page, it contains some more information related to drivers, firmware files, current device status, and so on.

We've tested the basic functionality on Windows XP and Windows 7 (and we don't expect any issues on Windows Vista or Windows 8 either), but we're happy to hear any feedback you may have and/or issues you might encounter.