4 Note: This release DOES change the libsigrok API. That means it is NOT
5 backwards-compatible and frontends will need updates.
7 * New supported hardware:
12 - Agilent DSO1000 series (various models)
13 - Hameg HMO compact series (various models)
14 - Rigol DS2000 series (various models)
15 - Rigol VS5000 series (various models)
17 - BBC Goerz Metrawatt M2110
20 - Gossen Metrawatt MetraHIT 1x/2x series (various models)
21 - Tenma 72-7745 (rebadged UNI-T UT60E)
22 - Tenma 72-7750 (rebadged UNI-T UT60G)
31 - Programmable power supplies:
32 - Atten PPS3000 series (various models, tested on PPS3203T-3S).
34 * Add support for channel groups.
35 * Add generic SCPI backend code which can be used via various transports:
39 - TCP/Rigol (Rigol-VS5000 series specific)
42 * udev rules file: Add entries for newly supported hardware.
45 - SR_CONF_CENTER_FREQUENCY
46 - SR_CONF_NUM_LOGIC_CHANNELS
47 - SR_CONF_NUM_ANALOG_CHANNELS
49 - SR_CONF_POWER_SUPPLY
50 - SR_CONF_OUTPUT_VOLTAGE
51 - SR_CONF_OUTPUT_VOLTAGE_MAX
52 - SR_CONF_OUTPUT_CURRENT
53 - SR_CONF_OUTPUT_CURRENT_MAX
54 - SR_CONF_OUTPUT_ENABLED
55 - SR_CONF_OUTPUT_CHANNEL
56 - SR_CONF_OVER_VOLTAGE_PROTECTION
57 - SR_CONF_OVER_CURRENT_PROTECTION
60 * New config info types:
62 * New measurement quantity keys:
64 * New measurement quantity flags:
67 * New device instance types:
70 - SR_ERR_CHANNEL_GROUP
71 ∗ The SR_T_CHAR config type has been renamed to SR_T_STRING.
72 * New build dependencies:
73 - libserialport >= 0.1.0 (optional).
74 - All drivers that talk to serial ports now require libserialport.
75 - If libserialport is not found, those drivers will not be built.
76 - librevisa >= 0.0.20130812 (optional, only used by some drivers).
77 * Dropped build dependecies:
78 - libasound2 is no longer required (only the removed alsa driver used it).
79 - libudev is no longer required (only the removed link-mso19 driver used it).
80 * Serial port handling code:
81 - Add support for 5/6 data bits and non-standard baud rates.
82 - Fix an issue related to nonblocking reads (bug #188).
83 - Fix an 'invalid arguments' condition causing problems (bug #192).
84 * alsa: This driver was removed (also fixes bugs #28, #61, #96, #114).
86 - Publish SR_CONF_CAPTURE_RATIO correctly (bugs #287, #291).
87 - Don't set invalid config options (bug #86).
88 - Various other bugfixes.
89 * cem-dt-885x: Fix a code portability issue (bug #267).
91 - Rename the 'chronovu-la8' driver to 'chronovu-la'.
92 - Add support for the ChronoVu LA16.
93 - Fix a segfault when doing multiple acquisitions on an LA8 (bug #247).
94 - Document that streaming is not possible for LA8/LA16 (bug #261).
96 - Add support for analog channels (bug #11).
97 - Make the number of channels user-configurable.
98 - Add per-channel-group options.
99 - Implement analog sample patterns: sine, triangle, sawtooth.
100 - Fix a samplerate related issue with rates >= 50kHz (bugs #294, #295).
101 - Fix an issue causing data glitches every 40ms (bug #297).
102 - Fix an issue related to channel group handling (bug #262).
103 * digitek-dt4000zc: Fix driver on NetBSD due to missing DTR=1 (bug #189).
105 - Fix incorrect unitsize when a trigger fires (bug #182).
106 - Implement config_get() for SR_CONF_LIMIT_SAMPLES.
107 - Don't send more samples than requested to the session bus.
109 - Add new (sub)driver 'gmc-mh-2x-bd232'.
110 - Add support for the SI232-II interface.
112 - Fix a build issue on Mac OS X (bug #216).
113 - Various fixes related to frame limit, samplerate, options, etc.
114 * link-mso19: Drop unfinished driver for now (until it starts working).
115 * openbench-logic-sniffer:
116 - Fix a serial port related issue/hang, seen on (e.g.) NetBSD.
117 - Fix an SR_CONF_PATTERN_MODE related problem (bugs #184, #190).
118 - Fix a serial (non)blocking mode issue (bug #231).
119 - Temporarily disable the driver on Windows (needs portability fixes).
120 - Fix an endianness issue in the protocol handling (bug #135).
121 - Fix a sampling issue when (samples % 4) != 0 (bug #200).
122 - Fix an issue occuring when all channels were disabled (bugs #316, #347).
123 - Add an option to turn test patterns off again (bug #293).
125 - Rename the 'rigol-ds1xx2' driver to 'rigol-ds'.
126 - Add support for more models and unify the driver code (bug #212).
127 - Add support for RS232 connectivity (previously only USBTMC worked).
128 - Enable the driver on non-Linux platforms since all transports the driver
129 uses are provided by cross-platform code/libs now (e.g. serial, USBTMC).
130 - Add support for 4 channels (required by some models).
131 - Add support for channel groups.
132 - Advertise SR_CONF_LIMIT_FRAMES support.
133 - Fix an issue with SR_DF_END sending.
134 - Enable/disable LA pod when (de)selecting digital channels.
135 - Disable key lock when closing device.
136 - Work around issues due to DS1000 specific protocol changes (bug #283).
137 - Fix incorrect digital channel numbers on some models (bug #269).
138 - Fix an issue with partial data reads (bugs #220, #209, #207).
140 - Fix an issue related to USB device claiming (bug #159).
141 - Don't send more samples than requested to the session bus (bug #350).
142 - Use unitsize 1 (not 2) if none of channels 8-15 are used.
143 * serial-dmm: Fix some parse issues by increasing a timeout.
144 * sysclk-lwla: Fix a sampling issue related to a glib API call (bug #270).
145 * uni-t-ut32x: Fix typo which prevented usage with multiple devices.
146 * victor-dmm: Fix MIN/MAX always being reported (bug #228).
147 * zeroplus-logic-cube:
148 - Add support for 32-channel models and additional memory sizes.
149 - Fix a frontend issue due to missing SR_CONF_CAPTURE_RATIO.
150 - Fix an issue causing pre-trigger garbage data to be sent (bug #222).
151 - Add initial voltage threshold support.
153 - Expose missing SR_CONF_TRIGGER_TYPE.
154 - Report max. possible number of samples (bugs #197, #258, #263).
156 - Skip analog channels in logic-only output formats.
157 - Remove the obolete output module API, add wrapper calls for the new one.
158 - Stop using the obsolete output API (bugs #288, #47, #48).
159 - Properly receive and handle samplerate metadata (bug #46).
160 * input/vcd: Abort with an error upon > 64 channels (bug #194).
162 - Fix output for more than 8 channels.
163 - Output timestamp only once per change.
164 - Minor whitespace changes of output files to make them more readable.
165 - Remove bogus $dumpvars and $dumpoff commands.
166 - Various bugfixes and portability fixes.
168 - Remove a 64-channel limit (bug #193).
169 - Fix an issue resulting in incorrect trailing commas (bug #230).
170 - Fix an issue where all timestamps would be zero (bug #35).
171 * Rename 'probe' to 'channel' in all places, since libsigrok supports a lot
172 of gear where 'channel' fits better (bug #259).
173 * Change TRIGGER_SLOPE from SR_T_UINT64 to SR_T_STRING.
174 * Windows support improvements:
175 - Use libserialport (+other backend code) to fix serial devices (bug #91).
176 - Add serial source addition/removal backend code (bug #206).
177 - Add backend code for properly supporting USB based devices.
178 * Fix various memory leaks in the backend code.
179 * Fix some incorrect parsing of floating point numbers in the strutil code.
180 * Fix various endianness issues in backend code and drivers (bug #266).
181 * Fix a few issues related to incorrect parsing with non-ANSI-C locales
182 (bugs #271, #272, #273, #274).
183 * Fix an issue related to data being sent to the libsigrok session which
184 was not a multiple of the unit/sample size (bugs, #289, #290).
185 * Drop the es51922 DMM parser (replaced by the generic es519xx parser).
186 * libsigrok session files:
187 - The libsigrok session file format (for *.sr files) has changed, and the
188 file format 'version' field is bumped to 2. Older libsigrok versions will
189 not be able to handle version 2 files, but new libsigrok versions can
190 handle both version 1 and version 2 files. New libsigrok versions will
191 always write/output version 2 files.
192 - Fix an issue resulting in left-over temporary files (bug #276).
193 - Fix an issue with analog probes (unsupported) in *.sr files (bug #277).
194 - Fix an issue with missing samplerate from session files (bug #275).
195 * Improved API documentation.
196 * Major API changes (overview):
197 - Change various function/macro names related to the probe->channel rename.
198 - Change various functions due to the new channel group feature.
199 - All enums in the public API now have names (e.g. 'enum sr_mqflag').
200 - The lib no longer defineѕ names with _t suffix (POSIX reserved).
202 - sr_session_dev_list()
203 - sr_session_save_init()
204 - sr_session_append()
209 - Obsoleted and removed API calls:
210 - sr_filter_channels()
211 - 'struct sr_session' is now opaque (contents shouldn't be used directly).
212 - Please see the Doxygen API documentation for further details.
214 - Switch to a non-recursive automake setup (fewer files, faster builds).
215 - configure: Clearly mark required and optional libs.
220 Note: This release does NOT change the libsigrok API. While new config keys,
221 config info types, and unit codes have been added (additional enum
222 entries / numbers), no existing interfaces were added/changed/removed.
223 Frontends should continue to work fine without recompiling or relinking.
225 * New supported hardware:
240 - SR_CONF_VOLTAGE_THRESHOLD
241 - SR_CONF_EXTERNAL_CLOCK
243 - SR_CONF_ENERGYMETER
244 * New config info types:
247 - SR_UNIT_REVOLUTIONS_PER_MINUTE
248 - SR_UNIT_VOLT_AMPERE
252 - csv (comma-separated values)
253 * Bump required libzip version to >= 0.10.
254 * uni-t-dmm: This driver now requires the specification of the USB VID/PID
255 of the cable that is used. Example for sigrok-cli:
256 - Old: sigrok-cli --driver voltcraft-vc820 ...
257 - New: sigrok-cli --driver voltcraft-vc820:conn=1a86.e008 ...
258 * openbench-logic-sniffer:
259 - Initial test pattern support (SR_CONF_PATTERN_MODE).
260 - Initial external clock support (SR_CONF_EXTERNAL_CLOCK).
261 - Initial channel swap support (SR_CONF_SWAP).
262 - Various minor fixes and improvements.
263 * When a frontend adds a device instance to a running session, start
264 acquisition on it. This helps with the collectd use-case where devices
265 can be removed and added dynamically while a session is running.
266 * rigol-ds1xx2: Support newer Linux kernels with USBTMC in /sys/class/usbmisc.
267 * rigol-ds1xx2: Also detect the Rigol DS1152E/DS1152D.
268 * agilent-dmm: Fix a segfault happening in certain cases.
269 * output/analog: Support all currently known MQFLAGs.
270 * Fix a minor compile issue due to an incorrect #include.
271 * Fix two compile issues on FreeBSD (bug #185).
272 * es519xx: New generic parser for various Cyrustek DMM ICs.
273 * es51922/fs9721/fs9922/metex14: Use diode MQFLAG (bug #141).
274 * voltcraft-vc830: Fix diode mode handling (bug #142).
275 * Add the missing HACKING file to the tarball.
276 * README.devices: Updates/notes for newly added devices.
281 Note: This release does NOT change the libsigrok API. While new config keys,
282 config info types, and error codes have been added (additional enum
283 entries / numbers), no existing interfaces were added/changed/removed.
284 Frontends should continue to work fine without recompiling or relinking.
286 * New supported hardware:
288 - IKALOGIC Scanalogic-2
290 - Sound level meters:
298 * Drop the Tecpel DMM-8060 (doesn't have PC connectivity).
300 - SR_CONF_SPL_WEIGHT_FREQ
301 - SR_CONF_SPL_WEIGHT_TIME
302 - SR_CONF_SPL_MEASUREMENT_RANGE
306 - SR_CONF_DATA_SOURCE
307 * New config info types:
311 * Always link against libm, the math library (bug #115).
312 * Fix a bug in sr_si_string_u64() at al (bug #73).
313 * output/csv: Fix incorrect probe order.
314 * alsa: Fix a double-free issue (bug #129).
315 * zeroplus-logic-cube: Fix a bug in the driver cleanup code.
316 * ikalogic-scanalogic2: Use GET_REPORT (bug #130).
317 * uni-t-dmm: Fix a bug breaking the UNI-T UT61E (bug #136).
318 * Various internal consistency fixes and code cleanups.
319 * Improved Doxygen documentation.
320 * Fixed various memory leaks.
325 Note: This release DOES change the libsigrok API. That means it is NOT
326 backwards-compatible and frontends will need updates.
328 * Support for analog sources (oscilloscopes, DMMs, data loggers) was added.
329 * New supported hardware:
332 - ZEROPLUS LAP-16128U
334 - Hantek DSO-2090 (USB scope)
349 - Fluke ScopeMeter 199B
369 - Sound level meters:
372 - Temperature/humidity/CO loggers:
373 - Lascar EL-USB and EL-USB CO series (various models)
376 * The limitation of max. 64 digital probes has been removed in many places.
377 * Added generic DMM protocol parsers usable for various DMMs, over various
378 cables and/or transports (e.g. same protocol over serial or USB/HID):
379 - Cyrustek ES51922 binary protocol.
380 - Fortune Semiconductor FS9721_LP3/FS9721B binary protocol.
381 - Fortune Semiconductor FS9922-DMM3/DMM4 binary protocol.
382 - Metex 14-byte ASCII protocol.
383 - RadioShack 22-812 binary protocol.
384 * zeroplus-logic-cube driver:
385 - Fix acquisition at some specific samplerates. Only report valid ones.
386 - Default to a samplerate of 1MHz.
388 - Add pre-trigger (capture ratio) setting.
389 - Add support for the ZEROPLUS LAP-16128U.
391 - Add support for the CWAV USBee DX. This requires the latest version of
392 the fx2lafw firmware files.
393 - Add support for wide sampling (i.e. 16 probes instead of just 8).
394 - Fix multi-stage (software) triggers.
395 - Fix various memory leaks, firmware upload timeout bugs, and other issues.
396 - Various performance and memory usage improvements in the driver.
397 * chronovu-la8 driver:
398 - Add support for newer LA8 versions with USB VID/PID 0403:8867.
400 - Various bugfixes when setting time/sample limits.
401 * openbench-logic-sniffer driver:
402 - Don't try to scan all available serial ports for OLS devices. Instead,
403 the serial port to use now has to be specified by the user.
404 - Allow disabling RLE.
405 * udev rules file: Add many new entries for additional devices.
406 * New output formats:
407 - analog: Prints analog values and their unit (e.g. from scopes or DMMs).
409 - vcd: Value Change Dump format
410 - wav: Waveform audio file format (for analog data)
411 * 'binary' input format: Add support for a 'samplerate' option.
412 * API related changes:
413 - There is generated Doxygen API documentation now.
414 - The header that frontends should include is: <libsigrok/libsigrok.h>.
415 There are other headers which are installed, but those are not meant to
416 be included directly by the frontends.
417 - There were numerous API changes, additions and removals, too many to list
418 here. Please check the source code or Doxygen API documentation for the
419 current set of API functions.
421 - Various improvements and fixes related to multiple parameters such as
422 directions, baudrate, flow control, and others.
423 - Add support for more baudrates (e.g. very low ones such as 600/1200)
424 that are used in some devices.
425 - Add support for setting DTR/RTS.
426 * gnuplot files: Add sample files for CWAV USBee DX (for 8/16 bit sampling).
427 * Documentation updates:
428 - Add a README.devices file which contains various notes for users of
429 libsigrok about device- and/or driver-specific issues.
430 - Update README, HACKING, and other documents.
431 - Updated build dependencies list.
432 - The following libs are needed in more recent versions now:
433 - glib (required): Now must be >= 2.32.0.
434 - libusb-1.0 (optional): Now must be >= 1.0.9.
435 - The following new libs were added as (optional) dependencies:
436 - libasound / alsa-lib (optional): >= 1.0
437 - check (optional, only needed for unit tests): >= 0.9.4
439 - Various compile fixes for Windows, FreeBSD/NetBSD/OpenBSD, and Mac OS X.
440 - Simplify/allow/fix cross-compilation of libsigrok.
441 - Various bugfixes for 32bit systems.
442 - Various endianness fixes.
444 - Add a --disable-all-drivers option. This can be overridden by
445 additional --enable-<drivername> options to selectively enable only some.
446 - Improve autodetection of libraries, and only enable drivers for which
447 all required libraries were found.
448 * Add a test suite for libsigrok with a few unit tests (the list will grow).
453 Note: This release does NOT change the libsigrok API.
455 * The 'saleae-logic' driver (which depends on the Saleae firmware), has
456 been replaced with the new 'fx2lafw' driver, which uses an open-source
457 firmware for Cypress FX2 chips which is also named 'fx2lafw'.
458 Details: http://sigrok.org/wiki/Fx2lafw
459 This new driver (+ firmware) currently supports the following devices:
461 - Braintechnology USB-LPS
462 - EE Electronics ESLA100
463 - EE Electronics ESLA201A
464 - Robomotic MiniLogic
465 - Robomotic BugLogic 3
469 - All Cypress FX2 eval boards with stock Cypress VID/PID, including:
471 - Braintechnology USB Interface V2.x
472 Only acquisition with 8 probes is supported so far. Support for 16 probes
473 and support for analog signal acquisition (on devices which have these
474 capabilities) will be added later.
476 - Add support for the ASIX SIGMA2. This requires the latest version of
477 the SIGMA/SIGMA2 firmware files.
478 Details: http://sigrok.org/wiki/Firmware
480 * ZEROPLUS Logic Cube LAP-C (16032): Fix a segfault.
481 * udev file: Add entries for Robomotic BugLogic 3, Velleman PCSU1000,
482 Ideofy LA-08, ARMFLY AX-Pro, and Braintechnology USB Interface V2.x.
483 * The zlib dependency has been removed (no longer needed).
484 * Fix compiling with "Homebrew" (Mac OS X).
485 * libsigrok now expects firmware files in $prefix/share/sigrok-firmware by
486 default (was $prefix/share/libsigrok/firmware before).
487 * Fix a Makefile.am bug which caused the generated ChangeLog files being
488 accidentally deleted upon 'make distclean'.
489 * ChronoVu LA8 input file format: Improve autodetection of the file format.
490 We now only accept files of the size 8388613 bytes (all LA8 files have
491 exactly this amount of bytes).