]> sigrok.org Git - libsigrok.git/log
libsigrok.git
9 years agoserial-dmm: Remove SERIAL_NONBLOCK flag.
Martin Ling [Tue, 16 Sep 2014 01:01:27 +0000 (02:01 +0100)]
serial-dmm: Remove SERIAL_NONBLOCK flag.

All serial read/write calls in this driver are now explicitly
nonblocking so there is no need for this flag.

9 years agoserial-dmm: Mark serial read/write calls as nonblocking.
Martin Ling [Tue, 16 Sep 2014 00:58:54 +0000 (01:58 +0100)]
serial-dmm: Mark serial read/write calls as nonblocking.

This driver opens the port with the SERIAL_NONBLOCK flag so these calls were
already non-blocking.

9 years agocolead-slm: Mark serial write call as blocking.
Martin Ling [Tue, 16 Sep 2014 00:52:14 +0000 (01:52 +0100)]
colead-slm: Mark serial write call as blocking.

This driver opens the port without the SERIAL_NONBLOCK flag,
so this call was already blocking.

9 years agomanson-hcs-3xxx: Mark serial read call as blocking.
Martin Ling [Tue, 16 Sep 2014 00:49:53 +0000 (01:49 +0100)]
manson-hcs-3xxx: Mark serial read call as blocking.

This driver opens the port without the SERIAL_NONBLOCK flag, so this call is
already a blocking one.

9 years agoserial_readline: Implement using sp_blocking_read.
Martin Ling [Sun, 21 Sep 2014 18:35:39 +0000 (19:35 +0100)]
serial_readline: Implement using sp_blocking_read.

9 years agoserial_stream_detect: Make read nonblocking.
Martin Ling [Sun, 21 Sep 2014 20:26:36 +0000 (21:26 +0100)]
serial_stream_detect: Make read nonblocking.

This code implements its own waiting based on baudrate, so the read itself
should be nonblocking. In general it will have been already, since drivers
almost universally use the SERIAL_NONBLOCK flag.

9 years agoAdd serial_num and connection_id fields to sr_dev_inst
Soeren Apel [Tue, 23 Sep 2014 15:43:27 +0000 (17:43 +0200)]
Add serial_num and connection_id fields to sr_dev_inst

9 years agoAdd usb_get_port_path() helper function
Soeren Apel [Mon, 22 Sep 2014 21:08:17 +0000 (23:08 +0200)]
Add usb_get_port_path() helper function

There is currently no way to uniquely identify USB devices in
libsigrok. It uses the "bus.address" scheme which is only
constant as long as the device remains attached to the bus.
In order to allow USB device persistence in PulseView, devices
need to provide a unique identifier even in absence of a
serial number. This function is the first step as it provides
the ability to query the physical location of a USB device.

9 years agodemo: Fix pattern mode and amplitude option publishing.
Bert Vermeulen [Tue, 23 Sep 2014 20:40:47 +0000 (22:40 +0200)]
demo: Fix pattern mode and amplitude option publishing.

9 years agocolead-slm: Properly check acquisition sample limit.
Bert Vermeulen [Tue, 23 Sep 2014 20:27:34 +0000 (22:27 +0200)]
colead-slm: Properly check acquisition sample limit.

9 years agosession: Don't try to send packets if no session has been set.
Bert Vermeulen [Thu, 18 Sep 2014 22:21:30 +0000 (00:21 +0200)]
session: Don't try to send packets if no session has been set.

This indicates a bug, but let's not segfault if it happens.

9 years agoinput/chronovu_la8: Fix broken I/O loop.
Bert Vermeulen [Wed, 17 Sep 2014 20:04:22 +0000 (22:04 +0200)]
input/chronovu_la8: Fix broken I/O loop.

9 years agoTypos and consistency fixes.
Uwe Hermann [Thu, 18 Sep 2014 23:03:32 +0000 (01:03 +0200)]
Typos and consistency fixes.

9 years agoyokogawa-dlm: Don't implement dummy scan options.
Bert Vermeulen [Wed, 17 Sep 2014 15:41:41 +0000 (17:41 +0200)]
yokogawa-dlm: Don't implement dummy scan options.

9 years agoPublish config key capabilities.
Bert Vermeulen [Wed, 17 Sep 2014 13:28:29 +0000 (15:28 +0200)]
Publish config key capabilities.

Every driver now publishes its device option config keys, i.e. the
list fetched with sr_config_list(SR_CONF_DEVICE_OPTIONS), with a
set of flags indicating which methods are implemented by the driver
for that key.

The config keys are OR'ed with any combination of SR_CONF_GET,
SR_CONF_SET and SR_CONF_LIST. These are defined as the high bits
of the uint32_t config key. Clients can OR config keys with
SR_CONF_MASK to strip out these bits. This mask will be kept up to
date if other bits are added to the capabilities list; clients MUST
therefore use SR_CONF_MASK for this.

Some keys don't have capability bits added, such as the informative
device type keys (SR_CONF_MULTIMETER, SR_CONF_OSCILLOSCOPE, ...) and
SR_CONF_CONTINUOUS.

Scan options do not have capabilities bits.

9 years agobeaglelogic: Add missing scan options, and cleanup.
Bert Vermeulen [Tue, 16 Sep 2014 21:51:38 +0000 (23:51 +0200)]
beaglelogic: Add missing scan options, and cleanup.

9 years agoConsistently use 'scanopts' variable across all drivers.
Bert Vermeulen [Tue, 16 Sep 2014 20:19:02 +0000 (22:19 +0200)]
Consistently use 'scanopts' variable across all drivers.

9 years agoConsistently use 'devopts' variable across all drivers.
Bert Vermeulen [Tue, 16 Sep 2014 20:11:39 +0000 (22:11 +0200)]
Consistently use 'devopts' variable across all drivers.

9 years agoChange type of SR_CONF keys to uint32_t.
Bert Vermeulen [Tue, 16 Sep 2014 15:49:20 +0000 (17:49 +0200)]
Change type of SR_CONF keys to uint32_t.

9 years agoC++: Make hardware device instances user owned.
Martin Ling [Sun, 14 Sep 2014 04:33:24 +0000 (05:33 +0100)]
C++: Make hardware device instances user owned.

9 years agobindings: Make documentation script work under python 3.x.
Martin Ling [Sun, 14 Sep 2014 04:32:00 +0000 (05:32 +0100)]
bindings: Make documentation script work under python 3.x.

9 years agopython: fix conversion to string variants.
Martin Ling [Sun, 14 Sep 2014 03:53:06 +0000 (04:53 +0100)]
python: fix conversion to string variants.

9 years agohwdriver: Validate types of GVariants passed by user.
Martin Ling [Sun, 14 Sep 2014 03:47:12 +0000 (04:47 +0100)]
hwdriver: Validate types of GVariants passed by user.

9 years agoUse AM_PATH_PYTHON macro to find Python binary.
Martin Ling [Sun, 14 Sep 2014 01:31:10 +0000 (02:31 +0100)]
Use AM_PATH_PYTHON macro to find Python binary.

A specific interpreter can now be passed to configure e.g:

./configure PYTHON=python3

9 years agoC++: use constructors for default argument declarations.
Martin Ling [Sat, 13 Sep 2014 19:23:46 +0000 (20:23 +0100)]
C++: use constructors for default argument declarations.

9 years agoC++: include <cmath> for NAN.
Martin Ling [Sat, 13 Sep 2014 19:23:23 +0000 (20:23 +0100)]
C++: include <cmath> for NAN.

9 years agobindings: Remove 'get_' prefix from all accessors.
Martin Ling [Thu, 11 Sep 2014 20:25:52 +0000 (21:25 +0100)]
bindings: Remove 'get_' prefix from all accessors.

9 years agoscpi: Remove trailing carriage returns.
Martin Ling [Thu, 11 Sep 2014 15:16:04 +0000 (16:16 +0100)]
scpi: Remove trailing carriage returns.

9 years agotests: Fix binary input test.
Uwe Hermann [Wed, 10 Sep 2014 21:55:15 +0000 (23:55 +0200)]
tests: Fix binary input test.

9 years agoinput: Add debug output.
Bert Vermeulen [Wed, 10 Sep 2014 20:55:50 +0000 (22:55 +0200)]
input: Add debug output.

9 years agoinput/binary: Fix broken I/O loop.
Bert Vermeulen [Wed, 10 Sep 2014 20:53:28 +0000 (22:53 +0200)]
input/binary: Fix broken I/O loop.

9 years agoDon't start session with 0-channel devices.
Bert Vermeulen [Wed, 10 Sep 2014 16:21:51 +0000 (18:21 +0200)]
Don't start session with 0-channel devices.

Drivers aren't really able to deal with that in some cases, and it
denotes a frontend bug.

9 years agoscpi: Don't return NULL device from unsuccessful scan.
Bert Vermeulen [Tue, 9 Sep 2014 17:53:55 +0000 (19:53 +0200)]
scpi: Don't return NULL device from unsuccessful scan.

9 years agoscpi-pps: Clean up HP 6632B profile.
Bert Vermeulen [Tue, 9 Sep 2014 11:22:24 +0000 (13:22 +0200)]
scpi-pps: Clean up HP 6632B profile.

9 years agoconfigure.ac: Add and use DRIVER2() to shorten file.
Uwe Hermann [Mon, 8 Sep 2014 21:23:51 +0000 (23:23 +0200)]
configure.ac: Add and use DRIVER2() to shorten file.

9 years agoconfigure.ac: Shorten per-driver lines a bit.
Uwe Hermann [Mon, 8 Sep 2014 21:13:12 +0000 (23:13 +0200)]
configure.ac: Shorten per-driver lines a bit.

9 years agoconfigure.ac: Don't duplicate driver name.
Uwe Hermann [Mon, 8 Sep 2014 21:09:05 +0000 (23:09 +0200)]
configure.ac: Don't duplicate driver name.

The AC_DEFINEs don't need any driver names really, those only end up
as code comments in config.h and are otherwise useless. Thus, don't
duplicate them, we already have the driver names in DRIVER().

9 years agoscpi-pps: Fix compile warning.
Bert Vermeulen [Mon, 8 Sep 2014 21:31:54 +0000 (23:31 +0200)]
scpi-pps: Fix compile warning.

9 years agoscpi-pps: Fix config_set checks.
Bert Vermeulen [Mon, 8 Sep 2014 21:30:21 +0000 (23:30 +0200)]
scpi-pps: Fix config_set checks.

9 years agoconfigure.ac: Show SCPI backends that'll be compiled.
Uwe Hermann [Mon, 8 Sep 2014 20:58:14 +0000 (22:58 +0200)]
configure.ac: Show SCPI backends that'll be compiled.

9 years agoconfigure.ac: Whitespace, cosmetics, sorting, etc.
Uwe Hermann [Mon, 8 Sep 2014 20:30:53 +0000 (22:30 +0200)]
configure.ac: Whitespace, cosmetics, sorting, etc.

9 years agoC++: Whitespace fix.
Martin Ling [Sat, 6 Sep 2014 16:28:27 +0000 (17:28 +0100)]
C++: Whitespace fix.

9 years agoC++: Add SessionDevice class for devices owned by loaded sessions.
Martin Ling [Sat, 6 Sep 2014 15:06:00 +0000 (16:06 +0100)]
C++: Add SessionDevice class for devices owned by loaded sessions.

9 years agoC++: Preserve original channel ordering.
Martin Ling [Sat, 6 Sep 2014 13:56:20 +0000 (14:56 +0100)]
C++: Preserve original channel ordering.

9 years agoC++: Add Configurable::config_check() method.
Martin Ling [Sat, 6 Sep 2014 12:53:09 +0000 (13:53 +0100)]
C++: Add Configurable::config_check() method.

9 years agoC++: Add Configurable::config_keys() method.
Martin Ling [Sat, 6 Sep 2014 12:08:51 +0000 (13:08 +0100)]
C++: Add Configurable::config_keys() method.

9 years agoC++: Make Driver inherit Configurable.
Martin Ling [Sat, 6 Sep 2014 12:08:29 +0000 (13:08 +0100)]
C++: Make Driver inherit Configurable.

9 years agoC++: Fix recursion loop in PacketPayload::get_shared_pointer().
Martin Ling [Sat, 6 Sep 2014 11:29:36 +0000 (12:29 +0100)]
C++: Fix recursion loop in PacketPayload::get_shared_pointer().

9 years agorigol-ds: replace some magic numbers by appropriate constant or variable
Aurelien Jacobs [Sun, 7 Sep 2014 22:47:27 +0000 (00:47 +0200)]
rigol-ds: replace some magic numbers by appropriate constant or variable

This fixes bug #406.

9 years agoAdd support for HP 6632B.
Bert Vermeulen [Mon, 8 Sep 2014 10:44:16 +0000 (12:44 +0200)]
Add support for HP 6632B.

9 years agoscpi-pps: Create one channel per MQ/output combination.
Bert Vermeulen [Mon, 8 Sep 2014 01:26:19 +0000 (03:26 +0200)]
scpi-pps: Create one channel per MQ/output combination.

This allows frontends to trivially select which MQs on which channels
they want to see; others won't even be fetched.

9 years agoAdd private storage pointer to struct sr_channel.
Bert Vermeulen [Mon, 8 Sep 2014 01:25:41 +0000 (03:25 +0200)]
Add private storage pointer to struct sr_channel.

9 years agoscpi-pps: Simplify SCPI command handling.
Bert Vermeulen [Sun, 7 Sep 2014 22:02:03 +0000 (00:02 +0200)]
scpi-pps: Simplify SCPI command handling.

9 years agoscpi-pps: Add support for Rigol DP831A/DP832A.
Bert Vermeulen [Fri, 5 Sep 2014 10:52:57 +0000 (12:52 +0200)]
scpi-pps: Add support for Rigol DP831A/DP832A.

9 years agoscpi-pps: Use regex to match model names.
Bert Vermeulen [Fri, 5 Sep 2014 10:50:07 +0000 (12:50 +0200)]
scpi-pps: Use regex to match model names.

9 years agoscpi-pps: Generalize vendor name cleanup.
Bert Vermeulen [Fri, 5 Sep 2014 01:49:25 +0000 (03:49 +0200)]
scpi-pps: Generalize vendor name cleanup.

9 years agoscpi-pps: Add support for Rigol DP832.
Bert Vermeulen [Fri, 5 Sep 2014 01:23:32 +0000 (03:23 +0200)]
scpi-pps: Add support for Rigol DP832.

9 years agoscpi-pps: Add basic cross-vendor PPS functionality.
Bert Vermeulen [Fri, 5 Sep 2014 01:20:32 +0000 (03:20 +0200)]
scpi-pps: Add basic cross-vendor PPS functionality.

9 years agoRevamp PPS-related config keys.
Bert Vermeulen [Fri, 5 Sep 2014 00:47:22 +0000 (02:47 +0200)]
Revamp PPS-related config keys.

9 years agoscpi-pps: Initial driver skeleton.
Bert Vermeulen [Sun, 31 Aug 2014 15:20:39 +0000 (17:20 +0200)]
scpi-pps: Initial driver skeleton.

9 years agobrymen-bm86x: Add current loop sensor support.
Aurelien Jacobs [Thu, 4 Sep 2014 20:06:54 +0000 (22:06 +0200)]
brymen-bm86x: Add current loop sensor support.

9 years agoscpi/gpib: Rename backend to scpi_libgpib.
Bert Vermeulen [Fri, 5 Sep 2014 16:33:48 +0000 (18:33 +0200)]
scpi/gpib: Rename backend to scpi_libgpib.

libgpib is the userspace component to linux-gpib's kernel modules that
implement low-level interface drivers.

When libsigrok gets userspace GPIB interface drivers, that backend will
be the "official" scpi_gpib.

9 years agobuild: Use pkgconfig for libgpib.
Bert Vermeulen [Fri, 5 Sep 2014 16:26:12 +0000 (18:26 +0200)]
build: Use pkgconfig for libgpib.

9 years agoAdd GPIB SCPI backend using linux-gpib and libgpib.
Martin Ling [Fri, 5 Sep 2014 09:34:04 +0000 (10:34 +0100)]
Add GPIB SCPI backend using linux-gpib and libgpib.

9 years agoC++: Implement Deleter pattern in UserOwned template.
Martin Ling [Tue, 2 Sep 2014 20:31:11 +0000 (21:31 +0100)]
C++: Implement Deleter pattern in UserOwned template.

9 years agoC++: Add UserOwned base template for objects with resources owned by user.
Martin Ling [Tue, 2 Sep 2014 20:05:42 +0000 (21:05 +0100)]
C++: Add UserOwned base template for objects with resources owned by user.

9 years agoC++: Rename StructureWrapper to ParentOwned.
Martin Ling [Tue, 2 Sep 2014 19:38:44 +0000 (20:38 +0100)]
C++: Rename StructureWrapper to ParentOwned.

9 years agoC++: Make StructureWrapper a recurring template, eliminating lots of casts.
Martin Ling [Tue, 2 Sep 2014 19:30:50 +0000 (20:30 +0100)]
C++: Make StructureWrapper a recurring template, eliminating lots of casts.

9 years agoC++: Don't spell out arguments to StructureWrapper when not required.
Martin Ling [Tue, 2 Sep 2014 19:01:35 +0000 (20:01 +0100)]
C++: Don't spell out arguments to StructureWrapper when not required.

9 years agoinput/wav: Now really correctly check supported sample size.
Bert Vermeulen [Tue, 2 Sep 2014 20:09:17 +0000 (22:09 +0200)]
input/wav: Now really correctly check supported sample size.

9 years agoagilent-dmm: U124xx/U125xx: Add current loop sensor support.
Bert Vermeulen [Tue, 2 Sep 2014 19:55:52 +0000 (21:55 +0200)]
agilent-dmm: U124xx/U125xx: Add current loop sensor support.

Also fixes frequency support.

9 years agoC++: Fix duplicated shared_ptr creation.
Martin Ling [Tue, 2 Sep 2014 18:21:11 +0000 (19:21 +0100)]
C++: Fix duplicated shared_ptr creation.

9 years agoC++: Remove erroneous stray method.
Martin Ling [Mon, 1 Sep 2014 15:41:21 +0000 (16:41 +0100)]
C++: Remove erroneous stray method.

9 years agoscpi/usbtmc: Minor debug output changes.
Bert Vermeulen [Wed, 16 Jul 2014 23:06:13 +0000 (01:06 +0200)]
scpi/usbtmc: Minor debug output changes.

9 years agoinput/wav: Correctly check supported sample size.
Bert Vermeulen [Tue, 2 Sep 2014 19:26:15 +0000 (21:26 +0200)]
input/wav: Correctly check supported sample size.

9 years agoinput/wav: Fix broken handling of float32 samples on big endian
Marcus Comstedt [Tue, 2 Sep 2014 17:14:25 +0000 (19:14 +0200)]
input/wav: Fix broken handling of float32 samples on big endian

Also, make sure that floats are 32 bit even in the case of an
extensible header.

9 years agoagilent-dmm: Add temperature regex to U125xx parser.
Bert Vermeulen [Mon, 1 Sep 2014 23:01:56 +0000 (01:01 +0200)]
agilent-dmm: Add temperature regex to U125xx parser.

9 years agoagilent-dmm: U124xx/U125xx: support 5 more modes.
Bert Vermeulen [Mon, 1 Sep 2014 22:54:23 +0000 (00:54 +0200)]
agilent-dmm: U124xx/U125xx: support 5 more modes.

This adds support for resistance, capacitance, frequency, continuity,
and temperature.

9 years agogmc-mh-1x-2x-rs232: Completed energy measurement ranges (V, A, W) for Metrahit 29S.
Matthias Heidbrink [Mon, 1 Sep 2014 12:58:26 +0000 (14:58 +0200)]
gmc-mh-1x-2x-rs232: Completed energy measurement ranges (V, A, W) for Metrahit 29S.

9 years agoagilent-dmm: U124x/U125x fixes.
Bert Vermeulen [Mon, 1 Sep 2014 19:44:08 +0000 (21:44 +0200)]
agilent-dmm: U124x/U125x fixes.

9 years agounit tests: Update to recent API changes.
Uwe Hermann [Fri, 29 Aug 2014 19:32:34 +0000 (21:32 +0200)]
unit tests: Update to recent API changes.

9 years agoerror.c: Add missing entries.
Uwe Hermann [Sun, 31 Aug 2014 22:08:23 +0000 (00:08 +0200)]
error.c: Add missing entries.

9 years agoC++: Add sanity checks in StructureWrapper.
Martin Ling [Sat, 30 Aug 2014 11:16:51 +0000 (12:16 +0100)]
C++: Add sanity checks in StructureWrapper.

9 years agobuild: Silence java-clean.
Bert Vermeulen [Sun, 31 Aug 2014 11:46:45 +0000 (13:46 +0200)]
build: Silence java-clean.

9 years agoC++: Provide fallbacks for missing stoi/stod functions
Marcus Comstedt [Sun, 31 Aug 2014 08:56:00 +0000 (10:56 +0200)]
C++: Provide fallbacks for missing stoi/stod functions

Notably, Android does not provide these functions.  The fallback
implementation is based on the one in the GNU ISO C++ Library.

9 years agoMakefile.am: Use $(CXXCOMPILE) to compile C++ code
Marcus Comstedt [Sun, 31 Aug 2014 08:49:02 +0000 (10:49 +0200)]
Makefile.am: Use $(CXXCOMPILE) to compile C++ code

When compiling the SWIG wrappers for the Java bindings, use the correct
automake macro so that all compiler flags are honoured.

9 years agoyokogawa-dlm: Replace g_try_malloc() calls and fix coding style
Soeren Apel [Sat, 30 Aug 2014 22:40:11 +0000 (00:40 +0200)]
yokogawa-dlm: Replace g_try_malloc() calls and fix coding style

9 years agoyokogawa-dlm: Lower timeout to increase throughput and fix data acq bug
Soeren Apel [Wed, 27 Aug 2014 12:22:57 +0000 (14:22 +0200)]
yokogawa-dlm: Lower timeout to increase throughput and fix data acq bug

9 years agoyokogawa-dlm: Do not block when receiving and save frame length in scope state
Soeren Apel [Wed, 27 Aug 2014 11:02:20 +0000 (13:02 +0200)]
yokogawa-dlm: Do not block when receiving and save frame length in scope state

9 years agoyokogawa-dlm: Flesh out driver with current state of development
Soeren Apel [Tue, 26 Aug 2014 14:09:28 +0000 (16:09 +0200)]
yokogawa-dlm: Flesh out driver with current state of development

9 years agoyokogawa-dlm: Integrate driver skeleton
Soeren Apel [Mon, 25 Aug 2014 11:09:42 +0000 (13:09 +0200)]
yokogawa-dlm: Integrate driver skeleton

9 years agoinput/csv: Use uint64 for samplerate option.
Bert Vermeulen [Sat, 30 Aug 2014 18:16:45 +0000 (20:16 +0200)]
input/csv: Use uint64 for samplerate option.

9 years agoinput/chronovu_la8: Use uint64 for samplerate option.
Bert Vermeulen [Sat, 30 Aug 2014 18:15:30 +0000 (20:15 +0200)]
input/chronovu_la8: Use uint64 for samplerate option.

9 years agoinput/binary: Use uint64 for samplerate option.
Bert Vermeulen [Sat, 30 Aug 2014 18:13:13 +0000 (20:13 +0200)]
input/binary: Use uint64 for samplerate option.

9 years agoagilent-dmm: Add U124xx device IDs.
Bert Vermeulen [Sat, 30 Aug 2014 17:32:15 +0000 (19:32 +0200)]
agilent-dmm: Add U124xx device IDs.

9 years agoagilent-dmm: Add provisional support for the U124xx.
Bert Vermeulen [Fri, 29 Aug 2014 21:41:41 +0000 (23:41 +0200)]
agilent-dmm: Add provisional support for the U124xx.

9 years agoagilent-dmm: Assume all A and B models are identical on the wire.
Bert Vermeulen [Fri, 29 Aug 2014 21:39:00 +0000 (23:39 +0200)]
agilent-dmm: Assume all A and B models are identical on the wire.

9 years agoagilent-dmm: Add RMS flag to AC voltage modes.
Bert Vermeulen [Fri, 29 Aug 2014 19:35:07 +0000 (21:35 +0200)]
agilent-dmm: Add RMS flag to AC voltage modes.

9 years agoagilent-dmm: Correctly parse negative overload.
Bert Vermeulen [Fri, 29 Aug 2014 17:35:01 +0000 (19:35 +0200)]
agilent-dmm: Correctly parse negative overload.

9 years agoRemove unneeded subdriver debug messages.
Uwe Hermann [Fri, 29 Aug 2014 21:02:22 +0000 (23:02 +0200)]
Remove unneeded subdriver debug messages.