Commit Graph

4415 Commits

Author SHA1 Message Date
Aurelien Jacobs a66d44bee1 vc870: properly set encoding digits 2016-08-23 12:58:04 +02:00
Aurelien Jacobs 4f414d4cbe ut71x: properly set encoding digits 2016-08-23 12:58:04 +02:00
Aurelien Jacobs 47166326ef ut372: properly set encoding digits 2016-08-23 12:58:04 +02:00
Aurelien Jacobs 96a06b4203 rs9lcd: properly set encoding digits 2016-08-23 12:58:04 +02:00
Aurelien Jacobs e677490e58 metex14: properly set encoding digits
This closes bug #815.
2016-08-23 12:58:04 +02:00
Aurelien Jacobs 8882e7e6cf m2110: properly set encoding digits 2016-08-23 12:58:04 +02:00
Aurelien Jacobs aad6d8d206 fs9922: properly set encoding digits 2016-08-23 12:58:04 +02:00
Aurelien Jacobs 70e28e7802 fs9721: properly set encoding digits 2016-08-23 12:36:19 +02:00
Aurelien Jacobs 8cbf5627ba es519xx: properly set encoding digits 2016-08-23 12:36:19 +02:00
Aurelien Jacobs 427015d7c1 dtm0660: properly set encoding digits 2016-08-23 12:36:19 +02:00
Aurelien Jacobs 25198a7e89 brymen-bm25x: properly set encoding digits 2016-08-23 12:36:19 +02:00
Aurelien Jacobs 1baf30f5f7 brymen-bm86x: properly set encoding digits 2016-08-23 12:36:19 +02:00
Aurelien Jacobs 5fe1b5cc14 brymen-bm86x: remove redundant initilialization 2016-08-23 12:36:19 +02:00
Aurelien Jacobs 7b78449e40 appa-55ii: properly set encoding digits 2016-08-23 12:36:19 +02:00
Erik Montnemery 817b7441a1 hantek-6xxx: Ignore requests to set Hantek 6022BE coupling.
Here's a patch to "Ignore requests to set coupling for the Hantek 6022BE",
this clears the LIBUSB errors for me.

Also in the patch:

 - There is a crash because config_list() can be called with sdi == NULL.

   This can be reproduced by doing:
     "sigrok-cli.exe --driver hantek-6xxx --show"

 - There seems to be a very unsafe loop in config_set() when setting COUPLING;
   the coupling vector is assumed to be zero terminated, but is not declared
   as such.

   Note: The same issue is present also for other hardware, at least for
   hantek-dso/api.c. The patch is only for hantek-6xxx though.
2016-08-21 18:54:15 +02:00
Sebastian Zagrodzki 7f46b27ef2 hantek-6xxx: sdi might be NULL - don't assign devc until !sdi is checked. 2016-08-21 18:54:09 +02:00
Mike Meyer 0d8a3063e3 hantek-6xxx: Fix the device scan to not scan the NULL entry. 2016-08-21 18:53:55 +02:00
Aurelien Jacobs bf85ea2110 drivers: don't try to access the sr_driver_list section with no driver compiled.
This closes bug #820.
2016-08-15 01:45:50 +02:00
Benjamin Larsson 5eb4ba29d0 hantek-6xxx: only show DC coupling for the Hantek device 2016-08-15 01:16:54 +02:00
Uwe Hermann af7f88242e hantek-6xxx: Fix some issues by using power-of-two data sizes.
There were issues when using non-power-of-two data sizes with e.g.
the Hantek 6022BE device. For example, on Windows the acquisition would
simply hang and never complete:

  hantek-6xxx: receive_transfer(): status LIBUSB_TRANSFER_ERROR received 0 bytes

The issue was reported by Erik Montnemery on the mailing list, the
original patch was posted by "mmark" here (thanks!):

  http://www.eevblog.com/forum/testgear/sainsmart-dds120-usb-oscilloscope-(buudai-bm102)/msg911729/#msg911729

The issue has been verified by me on Windows and Linux, and also that
this change does indeed fix it (tested Hantek 6022BE and Sainsmart DDS120).

Neither PulseView nor sigrok-cli hang anymore on Windows, and on Linux
the log messages suggest improvements as well:

  -hantek-6xxx: data_amount 712
  +hantek-6xxx: data_amount: 200 (rounded to power of 2: 512)

  -hantek-6xxx: receive_transfer(): calculated samplerate == 2327ks/s
  -hantek-6xxx: receive_transfer(): status LIBUSB_TRANSFER_OVERFLOW received 512 bytes.
  +hantek-6xxx: receive_transfer(): calculated samplerate == 1969ks/s
  +hantek-6xxx: receive_transfer(): status LIBUSB_SUCCESS / LIBUSB_TRANSFER_COMPLETED received 512 bytes.

This fixes bug #821.
2016-08-15 00:58:10 +02:00
Uwe Hermann 236303160c Fix a segfault with input/output modules.
Some functions in std.c were using

  const char *prefix = sdi->driver->name;

but were called from input/output modules as well (which don't have
a "driver" field).

As a temporary workaround, use "unknown" as prefix in such cases until
a more permanent solution is implemented.

This fixes bug #813.
2016-07-17 19:39:04 +02:00
Aurelien Jacobs ced4827405 ensure the only entry point of libdrivers doesn't have visibility=hidden
This fixes the following build issue on OSX:
Undefined symbols for architecture x86_64:
  "_sr_drivers_init", referenced from:
      _sr_init in backend.o

This closes bug #802.
2016-07-12 23:57:00 +02:00
Thomas 2f4b0f6a82 Add VID/PID for the CWAV USBee ZX.
The hardware is identical to the SX.

This fixes bug #764.
2016-07-12 23:50:52 +02:00
Uwe Hermann 0cce2383bd fx2lafw: Set sr_analog_encoding.digits to 2 for now. 2016-07-03 23:38:29 +02:00
Uwe Hermann 2ab0679a34 fx2lafw: Fix analog scaling.
Thanks to Patrick Remy <patrick.remy2000@gmail.com> for the fix.
2016-07-03 23:03:52 +02:00
Uwe Hermann e8b5205bf3 session.c: Drop unneeded check.
The dev_acquisition_stop() callback is not optional and always present.
2016-07-03 16:41:16 +02:00
Uwe Hermann 0e5a287759 uni-t-dmm: Drop unused UNI_T_UT_D04_NEW #define. 2016-07-03 16:40:44 +02:00
Aurelien Jacobs 43185ed3dc agilent-dmm: add support for U128x 2016-06-26 20:32:56 +02:00
Aurelien Jacobs 9ae544b6ce agilent-dmm: add support for Keysight branded meters 2016-06-26 20:32:56 +02:00
Aurelien Jacobs 0fe18626bd agilent-dmm: add support for AC/DC flags in current mode 2016-06-26 20:32:56 +02:00
Aurelien Jacobs 96ed86253b agilent-dmm: fix handling of AC/DC flags in volts mode 2016-06-26 20:32:56 +02:00
Aurelien Jacobs 4435966e43 agilent-dmm: output correct number of digits in analog packets 2016-06-26 20:32:56 +02:00
Aurelien Jacobs 873c0d117f agilent-dmm: split DIOD recv_conf into model specific functions
This reduce overall number of lines and facilitate computation
of significant digits.
2016-06-26 20:32:56 +02:00
Aurelien Jacobs 40df76aacb agilent-dmm: replace divider by exponent to ease computing of significant digits 2016-06-26 20:32:56 +02:00
Aurelien Jacobs 28c95cc6c4 analog: add support for negative number of digits
When a meter display 105.2 kΩ, libsigrok will return 105200 Ω
but it is really valuable to know that the last 2 digits are not
significant, so encoding.digits should be set to -2.
This would allow a sigrok client to display 105200 as 105.2 k
instead of 105.200 k.
2016-06-26 20:32:56 +02:00
Soeren Apel 4d6d660b83 Logging: Filter out unwanted newlines
055804e89e changed the outgoing
SCPI message termination by always adding a newline. This results
in the following log output:

sr: [00:00.003102] scpi: Opening VXI device vxi/192.168.178.43.
sr: [00:00.005648] scpi_vxi: Successfully sent SCPI command: '*IDN?
'.
sr: [00:00.005931] scpi: Got response: 'YOKOGAWA,710130,91HC30402,F3.73', length 31.

This patch restores the previous unterminated SCPI message logging:

sr: [00:00.005462] scpi: Opening VXI device vxi/192.168.178.43.
sr: [00:00.007515] scpi_vxi: Successfully sent SCPI command: '*IDN?'.
sr: [00:00.007860] scpi: Got response: 'YOKOGAWA,710130,91HC30402,F3.73', length 31.

As it's located in the general logging mechanism, we deal with any
additional (and unwanted) newlines this way.
2016-06-26 18:57:24 +02:00
Aurelien Jacobs e264ebded8 rigol-ds: properly report which channel is enabled. 2016-06-26 18:57:24 +02:00
Aurelien Jacobs 9ea62f2e0a rigol-ds: add support for getting/setting trigger level. 2016-06-25 18:19:47 +02:00
Aurelien Jacobs 934cf6cf50 rigol-ds: add PROBE_FACTOR support. 2016-06-25 17:24:45 +02:00
Aurelien Jacobs 8719638f5a rigol-ds: split out vertical config reading in its own function for re-use. 2016-06-25 17:23:17 +02:00
Aurelien Jacobs 5d8b3913d4 group all drivers into a single object
This single object also contains the sr_drivers_init function, that will
always be referenced. That ensures that the drivers object files won't
be optimized out during static linking due to the fact that they are
not referenced directly.

This addresses (parts of) bug #802.
2016-06-18 15:40:32 +02:00
Uwe Hermann d1d3d2e0c4 output/analog: Drop unused fancyprint() and si_printf().
These functions were only used in the SR_DF_ANALOG_OLD case,
whereas the SR_DF_ANALOG case already used functions and lists
from src/analog.c.

This closes bug #636.
2016-06-17 15:13:12 +02:00
Uwe Hermann 24f4a9d50b session: Drop SR_DF_ANALOG_OLD support completely.
This closes bug #728.
2016-06-17 15:13:12 +02:00
Uwe Hermann 0f574e133c transform/scale: Drop support for SR_DF_ANALOG_OLD. 2016-06-17 15:13:12 +02:00
Uwe Hermann 09e269ce21 transform/invert: Drop support for SR_DF_ANALOG_OLD. 2016-06-17 15:13:12 +02:00
Uwe Hermann 23bdb1c997 output/analog: Drop support for SR_DF_ANALOG_OLD. 2016-06-17 15:13:12 +02:00
Uwe Hermann 5379fea5ef output/csv: Drop support for SR_DF_ANALOG_OLD. 2016-06-17 15:13:12 +02:00
Uwe Hermann c163438617 output/wav: Drop support for SR_DF_ANALOG_OLD. 2016-06-17 15:13:12 +02:00
Uwe Hermann 6cdb1da6c9 session_driver.c: Convert to SR_DF_ANALOG. 2016-06-17 15:13:12 +02:00
Uwe Hermann 8c67724084 libsigrok-internal.h: Convert to SR_DF_ANALOG. 2016-06-17 15:13:11 +02:00