]>
sigrok.org Git - libsigrok.git/log
Martin Ling [Sat, 7 Dec 2013 19:19:20 +0000 (19:19 +0000)]
Use sp_get_port_handle to get an fd for adding/removing serial sources.
Martin Ling [Sat, 7 Dec 2013 19:17:49 +0000 (19:17 +0000)]
brymen-dmm: Use port name instead of fd in debug message.
Martin Ling [Sat, 7 Dec 2013 19:16:30 +0000 (19:16 +0000)]
Use sdi->status instead of serial->fd to tell if port needs closing.
Martin Ling [Sat, 7 Dec 2013 18:47:43 +0000 (18:47 +0000)]
Use std_serial_dev_close() to replace matching dev_close functions.
Martin Ling [Sat, 7 Dec 2013 18:41:09 +0000 (18:41 +0000)]
Add std_serial_dev_close() function.
Martin Ling [Mon, 2 Dec 2013 13:06:08 +0000 (13:06 +0000)]
Route sr_source_remove for all serial devices through a wrapper.
Martin Ling [Sat, 30 Nov 2013 12:54:02 +0000 (12:54 +0000)]
Route sr_source_add for all serial devices through a serial_source_add wrapper.
Martin Ling [Sat, 7 Dec 2013 17:54:33 +0000 (17:54 +0000)]
rigol-ds: close SCPI device after using for scan.
Martin Ling [Sat, 7 Dec 2013 16:11:27 +0000 (16:11 +0000)]
scpi_serial: Iterate serial_write as necessary to send full commands.
Bert Vermeulen [Sat, 7 Dec 2013 17:50:12 +0000 (18:50 +0100)]
filter.c: Work around const warning.
Marcus Comstedt [Sat, 7 Dec 2013 16:09:06 +0000 (17:09 +0100)]
filter.c: Fix endianness bug in sr_filter_probes
Bert Vermeulen [Sat, 7 Dec 2013 14:50:25 +0000 (15:50 +0100)]
Minor whitespace fix.
Really just for testing some git hooks.
Marvin Schmidt [Tue, 26 Nov 2013 07:50:52 +0000 (08:50 +0100)]
Fix test failure
The GError object has to initialized to NULL before being passed to
g_file_set_contents or it will throw the following critical warning
GLib-CRITICAL **: g_file_set_contents: assertion 'error == NULL || *error == NULL' failed
and return FALSE, which leads to failed assertion and subsequently
to the test failing
Martin Ling [Fri, 6 Dec 2013 03:20:48 +0000 (03:20 +0000)]
scpi_tcp: must define _WIN32_WINNT to 0x0501 or higher to get getaddrinfo().
Martin Ling [Fri, 6 Dec 2013 02:26:58 +0000 (02:26 +0000)]
Link against the ws2_32 library on Windows.
Martin Ling [Fri, 6 Dec 2013 01:55:04 +0000 (01:55 +0000)]
rigol-ds: Enable for non-Linux, as it now supports other transports.
Martin Ling [Fri, 6 Dec 2013 01:14:55 +0000 (01:14 +0000)]
scpi_tcp: Fix building on Windows.
Russ Dill [Tue, 3 Dec 2013 06:00:30 +0000 (22:00 -0800)]
zeroplus: Rework triggerbar/trigger address logic
This reworks the triggerbar/trigger address logic to match the values sent
by the windows app for all models (The zerominus tool was used to reprogram
the USB device ID on a single device). Additionally, the DONT_CARE_TRIGGERBAR
register is always set by the windows app and does not seem to indicate that
these registers are "don't care"'s.
Russ Dill [Tue, 3 Dec 2013 05:57:46 +0000 (21:57 -0800)]
zeroplus: Clip sampling sizes larger that our sample memory
Otherwise, we'll return a non-sensical result for our memory_size
enumeration.
Russ Dill [Tue, 3 Dec 2013 05:57:04 +0000 (21:57 -0800)]
zeroplus: Add support for additional memory sizes
The zeroplus can have up to a 8M SRAM. Avoid some extensive if/else
blocks by noting that all sizes except the first are related by their power
of 2.
Russ Dill [Tue, 3 Dec 2013 05:51:53 +0000 (21:51 -0800)]
zeroplus: Rename max_memory_size to max_sample_depth
This private variable is measured in samples, not bytes. Avoid confusion
by renaming it.
Russ Dill [Tue, 3 Dec 2013 05:47:14 +0000 (21:47 -0800)]
zeroplus: Just wait until not busy on data capture
While captures using a trigger do set the STATUS_READY bit, immediate
captures do not set the STATUS_READY bit, they just clear the STATUS_BUSY
bit. This was confirmed with packet captures using the "official" driver/app.
Russ Dill [Tue, 3 Dec 2013 05:25:10 +0000 (21:25 -0800)]
zeroplus: Add usb IDs for 32 channel models, but only use 16 channels
The code needs some work to support 32 channels. Until then, support
the 32 channel models, but only allow the use of 16 channels.
Bert Vermeulen [Wed, 4 Dec 2013 23:21:15 +0000 (00:21 +0100)]
rigol-ds: Minor error reporting fix.
Bert Vermeulen [Wed, 4 Dec 2013 23:16:11 +0000 (00:16 +0100)]
scpi/usbtmc: Prototype fixes.
Bert Vermeulen [Wed, 4 Dec 2013 23:09:34 +0000 (00:09 +0100)]
scpi/serial: Use stubs for all SCPI functions.
Avoids some gcc warnings, since the SCPI prototypes don't exactly
match serial_*.
Martin Ling [Wed, 4 Dec 2013 21:38:05 +0000 (21:38 +0000)]
rigol-ds: Support VS5000 series devices.
Martin Ling [Wed, 4 Dec 2013 21:32:47 +0000 (21:32 +0000)]
scpi_tcp: Adjust to observed protocol for Rigol VS5000 series.
Martin Ling [Wed, 4 Dec 2013 20:42:22 +0000 (20:42 +0000)]
rigol-ds: Support TCP connection.
Martin Ling [Wed, 4 Dec 2013 20:23:14 +0000 (20:23 +0000)]
Add implementation for SCPI over TCP.
Martin Ling [Wed, 4 Dec 2013 13:08:49 +0000 (13:08 +0000)]
rigol-ds: Handle partial analog frame reads.
Reading a frame over the DS1xx2 RS232 connection now sometimes works,
but most of the time stalls part way through with g_poll showing the
fd as not ready.
Martin Ling [Wed, 4 Dec 2013 13:03:23 +0000 (13:03 +0000)]
scpi_serial: Flush buffers after opening port.
Martin Ling [Wed, 4 Dec 2013 12:49:38 +0000 (12:49 +0000)]
rigol-ds: Support RS232 connection.
Probing tested OK over RS232 for DS1052E and DS1102D. Capture needs work.
Martin Ling [Wed, 4 Dec 2013 10:55:32 +0000 (10:55 +0000)]
rigol-ds: Eliminate fixed-size buffer in set_cfg.
Martin Ling [Wed, 4 Dec 2013 10:53:51 +0000 (10:53 +0000)]
Add sr_scpi_send_variadic() function.
Martin Ling [Wed, 4 Dec 2013 10:25:15 +0000 (10:25 +0000)]
Replace rigol_ds_send() function with sr_scpi_send().
Martin Ling [Wed, 4 Dec 2013 10:24:52 +0000 (10:24 +0000)]
Make sr_scpi_send() take printf-style arguments.
Martin Ling [Tue, 3 Dec 2013 23:31:32 +0000 (23:31 +0000)]
Only scpi_serial.c functions need HAVE_LIBSERIALPORT, not scpi.c.
Martin Ling [Tue, 3 Dec 2013 23:29:20 +0000 (23:29 +0000)]
Remove SR_INST_USBTMC which is no longer used.
Martin Ling [Tue, 3 Dec 2013 23:19:40 +0000 (23:19 +0000)]
Port rigol-ds driver to use common SCPI functions.
Martin Ling [Tue, 3 Dec 2013 22:56:32 +0000 (22:56 +0000)]
Add sr_scpi_read() operation for reading arbitrary data.
Martin Ling [Tue, 3 Dec 2013 22:25:33 +0000 (22:25 +0000)]
Implement SCPI over USBTMC.
Martin Ling [Tue, 3 Dec 2013 20:40:19 +0000 (20:40 +0000)]
Make SCPI functions device independent, with separate serial backend.
Uwe Hermann [Tue, 3 Dec 2013 16:16:59 +0000 (17:16 +0100)]
strutil.c: Don't expose sr_atox() as API calls for now.
Uwe Hermann [Tue, 3 Dec 2013 16:13:50 +0000 (17:13 +0100)]
hameg-hmo: Reduce unnecessarily high nesting level.
Uwe Hermann [Tue, 3 Dec 2013 15:58:34 +0000 (16:58 +0100)]
hameg-hmo: Use hmo_ prefix for driver-local SR_PRIV functions.
Uwe Hermann [Tue, 3 Dec 2013 15:48:21 +0000 (16:48 +0100)]
hameg-hmo: Minor cosmetics, coding-style fixes.
Uwe Hermann [Tue, 3 Dec 2013 15:08:59 +0000 (16:08 +0100)]
scpi.c: Minor cleanups, cosmetics.
Uwe Hermann [Tue, 3 Dec 2013 14:48:02 +0000 (15:48 +0100)]
configure.ac: Don't build hameg-hmo if libserialport is not found.
Uwe Hermann [Tue, 3 Dec 2013 14:37:36 +0000 (15:37 +0100)]
configure.ac: Move Hameg HMO AM_CONDITIONAL to the correct place.
poljar (Damir Jelić) [Fri, 25 Oct 2013 16:15:00 +0000 (18:15 +0200)]
hameg-hmo: Add initial working driver version.
This patch adds initial support for Hameg's HMO oscilloscopes. It currently
supports only the HMO compact series (70MHz-200MHz).
poljar (Damir Jelić) [Tue, 15 Oct 2013 18:45:14 +0000 (20:45 +0200)]
hameg-hmo: Initial driver skeleton.
poljar (Damir Jelić) [Fri, 25 Oct 2013 16:13:20 +0000 (18:13 +0200)]
serial: Add function to extract serial options.
This patch adds a function for a common operation of all serial based drivers.
It extracts the serial options from the options linked list that is passed down
to every hardware driver.
poljar (Damir Jelić) [Mon, 18 Nov 2013 15:13:12 +0000 (16:13 +0100)]
scpi: Add function to fetch uint8_t.
This patch adds a function to read and parse a SCPI response which contains a
comma separated list of unsignet 8-bit integer numbers (e.g "1,0,64").
This is particularly useful if the instrument sends digital measurement data
in this format.
poljar (Damir Jelić) [Fri, 1 Nov 2013 19:40:04 +0000 (20:40 +0100)]
scpi: Add function to get an array of floats.
This patch adds a function to read and parse a SCPI response which contains a
comma-separated list of floating-point numbers (e.g. "1.0e-5,2.0e-4,3.0e-3").
This is particularly useful if the instrument sends analog measurement
data in this format.
poljar (Damir Jelić) [Sat, 9 Nov 2013 11:49:08 +0000 (12:49 +0100)]
scpi: Add a function to read and wait on a *OPC? reply.
The SCPI standard specifies the "*OPC?" command (Operation complete query) which
queries the instrument for its operative state. When all pending operations are
complete, the instrument responds with a "1".
Some manufacturers block before completing all operations and don't respond
with anything and some of them respond with a "0". This function handles both
cases uniformly.
poljar (Damir Jelić) [Fri, 1 Nov 2013 18:27:44 +0000 (19:27 +0100)]
scpi: Add more functions (getting int/bool/float/double).
This patch adds helper functions to read an SCPI response and parse the response
as an integer, boolean, floating-point or double-precision floating-point number.
poljar (Damir Jelić) [Fri, 1 Nov 2013 18:25:32 +0000 (19:25 +0100)]
scpi: Add function to strictly parse bool strings.
This patch adds a function that is similar to sr_parse_boolstring but its
matching rules are more strict.
poljar (Damir Jelić) [Tue, 29 Oct 2013 11:15:47 +0000 (12:15 +0100)]
scpi: Add helper functions for SCPI communication.
The Standard Commands for Programmable Instruments (SCPI) defines a standard
for syntax and commands to use in controlling programmable test and measurement
devices.
SCPI documentation:
http://www.ivifoundation.org/docs/scpi-99.pdf
This patch adds helper functions for sending SCPI commands, reading a SCPI
response and reading and parsing a SCPI "*IDN?" response.
poljar (Damir Jelić) [Fri, 1 Nov 2013 17:40:06 +0000 (18:40 +0100)]
strutil: Add helper functions: string to number.
This patch adds helper functions for converting a string to different number
formats (double, long, float, int).
These functions are exposed in the public API.
Dan Horák [Sun, 1 Dec 2013 21:07:18 +0000 (22:07 +0100)]
define correct variable for the unified Rigol driver
Uwe Hermann [Sun, 1 Dec 2013 18:30:35 +0000 (19:30 +0100)]
serial-dmm: No error message upon 0 new bytes.
Martin Ling [Wed, 27 Nov 2013 01:43:49 +0000 (01:43 +0000)]
Use new libserialport blocking/nonblocking API calls.
Bert Vermeulen [Fri, 29 Nov 2013 16:32:55 +0000 (17:32 +0100)]
Fix memory leak when loading session files.
Martin Ling [Fri, 29 Nov 2013 01:40:50 +0000 (01:40 +0000)]
rigol-ds: Fix duplicated "LA" probe group.
Martin Ling [Fri, 29 Nov 2013 00:48:42 +0000 (00:48 +0000)]
Create & use new sr_usbtmc_dev_inst for Rigol DS driver.
Martin Ling [Fri, 29 Nov 2013 00:14:54 +0000 (00:14 +0000)]
DS2000 sample memory capture patches from Mathias Grimmberger.
Martin Ling [Thu, 7 Nov 2013 23:13:30 +0000 (23:13 +0000)]
Fix handling second channel on DS2000 series.
Patch from Mathias Grimmberger.
Martin Ling [Fri, 1 Nov 2013 21:49:05 +0000 (21:49 +0000)]
rigol-ds: brown paper bag, using timebases instead of vdivs.
Martin Ling [Fri, 1 Nov 2013 21:32:33 +0000 (21:32 +0000)]
rigol-ds: fix calls to config_list with NULL sdi/devc.
Martin Ling [Fri, 1 Nov 2013 11:05:49 +0000 (11:05 +0000)]
rigol-ds: Add support for DS2xx2 series.
Based on patch by Mathias Grimmberger <redacted>.
Martin Ling [Thu, 31 Oct 2013 17:31:39 +0000 (17:31 +0000)]
Rename rigol-ds1xx2 driver to rigol-ds.
Bert Vermeulen [Tue, 26 Nov 2013 21:20:30 +0000 (22:20 +0100)]
Don't accept over 64 probes.
The code is limited to 64 probes for now, so don't accept setting
the probe limit to higher than that.
See bug 194.
Bert Vermeulen [Tue, 26 Nov 2013 21:11:48 +0000 (22:11 +0100)]
input/vcd: Coding style fixes.
Bert Vermeulen [Tue, 26 Nov 2013 15:59:04 +0000 (16:59 +0100)]
output/csv: Fix wrong cast.
Uwe Hermann [Tue, 26 Nov 2013 15:29:43 +0000 (16:29 +0100)]
serial.c: Re-enable serial_read() error reporting.
libserialport now returns 0 (not SP_ERR_FAIL) as return value when a
non-blocking read would return EAGAIN.
This fixes bug #188.
Martin Ling [Sat, 23 Nov 2013 21:00:28 +0000 (21:00 +0000)]
Use new libserialport opaque configuration structure.
Martin Ling [Sat, 23 Nov 2013 20:48:15 +0000 (20:48 +0000)]
Use accessor for new libserialport opaque port structure.
Bert Vermeulen [Tue, 26 Nov 2013 00:50:21 +0000 (01:50 +0100)]
gmc-mh-1x-2x driver depends on libserialport
Bert Vermeulen [Sat, 23 Nov 2013 14:24:40 +0000 (15:24 +0100)]
uni-t-dmm: Drop unnecessary DMM count.
Bert Vermeulen [Sat, 23 Nov 2013 11:50:33 +0000 (12:50 +0100)]
uni-t-dmm: Add support for the Tenma 72-7745.
This is a rebadged UNI-T UT60E.
Uwe Hermann [Fri, 22 Nov 2013 19:03:03 +0000 (20:03 +0100)]
hantek-dso: config_list(): Only SR_CONF_BUFFERSIZE needs sdi.
Uwe Hermann [Fri, 22 Nov 2013 18:56:20 +0000 (19:56 +0100)]
ols: config_list(): Handle SR_CONF_PATTERN_MODE.
SR_CONF_PATTERN_MODE was not handled in config_list(), yielding
non-working OLS support in PulseView (due to an assert), and a missing
pattern list in sigrok-cli's --show output.
This fixes bug #184.
Uwe Hermann [Fri, 22 Nov 2013 14:13:04 +0000 (15:13 +0100)]
Update to 3-digit libserialport package version format.
Uwe Hermann [Fri, 22 Nov 2013 14:02:12 +0000 (15:02 +0100)]
Make struct sr_session opaque.
The fields of this structure should not be used directly by frontends
(and none of the current ones do). Thus, make the struct opaque and hide
its contents from the API.
Matthias Heidbrink [Thu, 21 Nov 2013 14:47:09 +0000 (15:47 +0100)]
gmc_mh_1x_2x: Completed driver for Metrahit 1x/2x
This driver supports devices with “RS232“ interface (Metrahit 16I,
18S, Siemens B1105 tested, 29S incomplete).
Matthias Heidbrink [Tue, 19 Nov 2013 21:30:34 +0000 (22:30 +0100)]
Added SR_MQ_TIME and SR_MQFLAG_DURATION.
Matthias Heidbrink [Tue, 19 Nov 2013 21:26:53 +0000 (22:26 +0100)]
serial: Allow 5 and 6 data bits.
Matthias Heidbrink [Tue, 19 Nov 2013 16:49:23 +0000 (17:49 +0100)]
gmc_mh_1x_2x: Inital driver skeleton.
Martin Ling [Thu, 21 Nov 2013 17:33:02 +0000 (17:33 +0000)]
Update for libserialport v0.1 API.
Bert Vermeulen [Wed, 20 Nov 2013 21:06:01 +0000 (22:06 +0100)]
Suppress compile warning
poljar (Damir Jelić) [Tue, 19 Nov 2013 11:03:20 +0000 (12:03 +0100)]
output/text: Fix memory leak of internal state buffers.
The text output module keeps buffers for internal state, upon receiving a DF_END
packet it frees the internal context but the buffers are never freed.
This adds a text_cleanup() helper function and registers it as the cleanup
function within all the text output modules.
Uwe Hermann [Tue, 19 Nov 2013 23:42:08 +0000 (00:42 +0100)]
DT4000ZC/TP4000ZC: Force DTR=1 on the serial port.
This fixes the driver e.g. on NetBSD.
Uwe Hermann [Tue, 19 Nov 2013 22:22:46 +0000 (23:22 +0100)]
ols: Always open serial port in nonblocking mode.
The scan() function was opening the port in non-blocking mode, the dev_open()
function however was not using the SERIAL_NONBLOCK flag. This led to hangs
in certain situations.
This fixes the OLS e.g. on NetBSD.
Uwe Hermann [Tue, 19 Nov 2013 19:09:59 +0000 (20:09 +0100)]
serial.c: Minor cosmetic fix.
Martin Ling [Fri, 15 Nov 2013 00:26:45 +0000 (00:26 +0000)]
Use new sp_port_config fields.
Martin Ling [Thu, 14 Nov 2013 18:52:57 +0000 (18:52 +0000)]
serial: Use new sp_set_config instead of sp_set_params.
poljar (Damir Jelić) [Tue, 19 Nov 2013 00:08:19 +0000 (01:08 +0100)]
serial: Fix leak in serial_open.
A new sp_port is created every time we call serial_open (sp_get_port_by_name
implicitly creates one for us), so free it every time we call serial_close.
poljar (Damir Jelić) [Tue, 19 Nov 2013 00:08:18 +0000 (01:08 +0100)]
device: Fix leak if probe groups are created.
poljar (Damir Jelić) [Fri, 15 Nov 2013 15:54:55 +0000 (16:54 +0100)]
rigol-ds1xx2: Send a SR_DF_END packet before acquisition stop.
Without a SR_DF_END samples could be cached in the internal buffer of an output
module and never flushed, therefore they would be missing in the final output.
By sending a SR_DF_END packet we force the output to be flushed.