Commit Graph

2870 Commits

Author SHA1 Message Date
Janne Huttunen 34d117afb4 Allow building libsigrok without libserialport.
Since the DER EE DE-5000 driver is currently the only user of
the es51919 module and it depends on the libserialport, compile
the module only if the DER EE DE-5000 driver is enabled. This
allows libsigrok to be built without libserialport again.
2014-10-17 12:13:50 +02:00
Soeren Apel e8cbb22314 Auto-set sdi->connection_id for serial devices in the getter 2014-10-17 03:02:52 +02:00
Soeren Apel d1314831e4 yokogawa-dlm: Populate sdi->serial_num and sdi->version 2014-10-17 03:02:52 +02:00
Soeren Apel b3fccc851b rigol-ds: Populate sdi->serial_num 2014-10-17 03:02:52 +02:00
Soeren Apel b33db61c48 hameg-hmo: Populate sdi->serial_num 2014-10-17 03:02:52 +02:00
Soeren Apel d08667c53b scpi-pps: Populate sdi->serial_num and fix hw_info mem leak 2014-10-17 03:02:52 +02:00
Soeren Apel b2c02b0747 scpi: Populate sdi->connection_id 2014-10-17 03:02:52 +02:00
Soeren Apel 0699ccdd92 sysclk-lwla: Let the sdi getter populate sdi->connection_id
This fixes bug #441.
2014-10-17 03:02:52 +02:00
Soeren Apel c962d07cba ikalogic-scanalogic2: Let the sdi getter popuplage sdi->connection_id
This fixes bug #440.
2014-10-17 03:02:52 +02:00
Soeren Apel 0157fdce99 Provide getters for sr_dev_inst member access 2014-10-17 03:02:52 +02:00
Bert Vermeulen 984e4b0db8 scpi-pps: Start acquisition on the first enabled channel. 2014-10-17 03:00:55 +02:00
Bert Vermeulen 624503ae90 scpi-pps: Optimize channel selection.
This avoids sending a channel selection command to the device if
the channel we're working on is already on the same underlying
output channel.
2014-10-17 03:00:05 +02:00
Bert Vermeulen ee2860ee11 scpi-pps: Disable beeper during session.
At least the Rigol DP800 series trigger the beeper when changing
channels remotely. Which gets rather annoying when doing acquisition
on three channels as fast as you can.
2014-10-16 15:24:27 +02:00
Bert Vermeulen bf48ccebee scpi-pps: Properly clean up acquisition session. 2014-10-16 14:55:56 +02:00
Bert Vermeulen 60475cd788 scpi-pps: Use only standard SCPI for Rigol DP800 series. 2014-10-16 13:23:21 +02:00
Bert Vermeulen ae431bc8d6 Fix short names for SR_CONF_OUTPUT_VOLTAGE_TARGET/_CURRENT_LIMIT. 2014-10-16 13:22:51 +02:00
Martin Ling d3a401c15b bindings: Remove Device::description(). 2014-10-15 13:44:44 +02:00
Martin Ling 1411f7d8e9 bindings: Add Session::filename() and corresponding SWIG attribute. 2014-10-15 13:44:44 +02:00
Martin Ling 73a1eb017b bindings: Add accessor to obtain parent object. 2014-10-15 13:44:44 +02:00
Martin Ling f591826cc7 bindings: add SWIG attribute for Packet::type. 2014-10-15 13:44:44 +02:00
Martin Ling f36f7d0282 C++: Don't clear Session::_owned_devices() in Session::remove_devices().
Owned devices are freed only when the session is destroyed.
2014-10-15 13:44:25 +02:00
Martin Ling 1de3ccede9 Track sdis created by sr_session_load(), and free in sr_session_destroy(). 2014-10-15 13:44:25 +02:00
Martin Ling c0e3ba4b79 Correct description of sr_session.devs. 2014-10-15 13:44:25 +02:00
Bert Vermeulen ca95e90fb3 Use SR_CONF_OUTPUT_VOLTAGE_TARGET and _CURRENT_LIMIT.
These describe them better; the two are fundamentally different
things to set.
2014-10-15 12:03:00 +02:00
Uwe Hermann 3982b93840 configure.ac: Drop ols Windows exception, should be obsolete.
(see #205)
2014-10-13 16:23:48 +02:00
Bert Vermeulen 53a81803e4 scpi-pps: Split boolean set options into enable/disable.
This makes it easier to support devices that need something else
than "ON" or "OFF".
2014-10-13 12:50:28 +02:00
Uwe Hermann b9a348f56c Rename SR_CONF_LCR_METER to SR_CONF_LCRMETER.
(to be consistent with some other key names)
2014-10-13 11:39:15 +02:00
Uwe Hermann 3ea46116de libsigrok-internal.h: Fix some outdated comments. 2014-10-13 01:06:09 +02:00
Janne Huttunen b50891952d Add driver for DER EE DE-5000 LCR meter.
Add a driver for the DER EE DE-5000 LCR meter. This meter is based on
the Cyrustek ES51919/ES51920 chipset and communicates with the host
computer via an optional connectivity kit.

The kit uses an optoisolated unidirectional link to connect to the
meter and an USB cable on the host side. Internally the connection is
using the FTDI FT232R USB UART chip i.e. from the host computer point
of view the meter is connected into an RS-232 serial port.

This driver implements just a thin shim layer for registering the
driver and uses the es51919 module for all the actual work.
2014-10-13 00:56:11 +02:00
Janne Huttunen 6bcb3ee876 Add protocol decoder for Cyrustek ES51919 LCR meter chip.
Add a protocol decoder for the Cyrustek ES51919 LCR meter chip.
This chipset (together with ES51920 front-end) is supposedly used
by multiple different portable LCR meters including at least
DER EE DE-5000, Yihua V&A VA520, Mastech MS5308, Uni-T UT612,
CEM DT-9935 and various OEM rebadges of them.

The communication protocol seems to be implemented on the Cyrustek
chip itself so all the different models are expected to use the
same protocol if they implement a host connection. Unfortunately
the protocol is not available in the public documentation of the
chipset, so this implementation is based on reverse engineering it
from traffic captures.

The actual connection between the meter and the host computer may be
different from meter to meter even when based on the same chip. This
module implements a decoder for the protocol and some common helper
functions for interfacing with the meter via an RS-232 serial port.
2014-10-13 00:56:11 +02:00
Janne Huttunen 02c7c482a6 Add pretty-printer for new units and flags.
Add support for printing henries and degrees as well as the new
reference and auto flags.
2014-10-12 23:19:05 +02:00
Janne Huttunen 0f5b241ec9 Add config key for output frequency.
Add a config key for getting/setting the output frequency. The value
will be an uint64 and measured in hertz.
2014-10-12 23:18:02 +02:00
Janne Huttunen 0ffce50d44 Add config key for LCR meter type.
Add a config key that can be used to indicate that the device is
an LCR meter.
2014-10-12 23:18:02 +02:00
Janne Huttunen ae27f28165 Add two new 'auto' flags.
Add flags for indicating that the meter has selected the measured
quantitiy and/or the used measurement model automatically. These
are similar to the existing auto-range flag.
2014-10-12 23:18:02 +02:00
Janne Huttunen 23601f2c7e Add quantity and flag for difference measurements.
Add 'SR_MQ_DIFFERENCE' quantity for reporting relative difference
between the current measurement and the reference value. The value
of this quantity will normally be reported in percents. Add also
the flag 'SR_MQFLAG_REFERENCE' for indicating that the reported
value is not the current measurement but the reference value instead.
2014-10-12 23:18:02 +02:00
Janne Huttunen 87d8124577 Add measured quantities for LCR meters.
Add parallel and serial model inductance, capacitance and resistance
for LCR meter measurements. Add also secondary quantities many LCR
meters calculate, namely dissipation factor, quality factor and phase
angle.
2014-10-12 23:18:02 +02:00
Janne Huttunen 01789adc72 Add two new units.
Add degrees and henrys to the list of supported units. Degree is
an unit of plane angle where one degree is 1/360th of a full circle.
Henry is the SI unit of inductance.
2014-10-12 23:18:02 +02:00
Uwe Hermann 8b4f0d6a11 README: Bump glib version to 2.34. 2014-10-12 19:59:41 +02:00
Aurelien Jacobs 76bc5f6376 usb: Simplify usb_get_port_path() and fix writing into a const char *. 2014-10-12 19:36:11 +02:00
Bert Vermeulen d099d88021 Fix sr_dev_has_option().
This wasn't taking the SR_CONF_GET/_SET/_LIST flags into account.

Thanks to Janne Huttunen for spotting this.
2014-10-09 23:42:24 +02:00
Bert Vermeulen 818df9f8ec build: Require glib 2.34. 2014-10-08 23:14:01 +02:00
Bert Vermeulen f4d3a4fb9a ols: Fix serial port timeout. 2014-10-08 03:00:47 +02:00
Bert Vermeulen 9e6d9bee2a colead-slm: Fix serial port timeout. 2014-10-08 02:23:20 +02:00
Jens Steinhauser 174bf146e5 bindings: Better error handling in enumeration get() function.
Prior to this patch a call to get() with an invalid enumeration value
would raise an exception that would, for example, terminate the python
interpreter, whereas now the exception is handled and translated into a
proper python exception.
2014-10-07 15:15:17 +02:00
Bert Vermeulen 2eb1612d46 atten-pps3xxx: Use serial_timeout(). 2014-10-06 12:12:13 +02:00
Bert Vermeulen c5cfc735e5 serial: Add serial_timeout().
This calculates a proper timeout value for blocking writes on the
given serial port, for the given number of bytes. Timeout is based
on a fixed 10ms OS overhead, baud rate, data bits and stop bits.
2014-10-06 12:10:25 +02:00
Bert Vermeulen 945cfd4fdd atten-pps3xxx: Fix serial port timeout. 2014-10-05 12:29:28 +02:00
Bert Vermeulen 204014007f fluke-dmm: Fix blocking serial write timeout. 2014-10-04 10:39:11 +02:00
Bert Vermeulen 95779b43b8 agilent-dmm: Fix blocking serial write timeout. 2014-10-04 10:39:11 +02:00
Bert Vermeulen 4ab01c3564 input/csv: Fix size_t printing. 2014-10-04 10:39:11 +02:00