Commit Graph

78 Commits

Author SHA1 Message Date
Uwe Hermann ba7dd8bbb8 Replace 'probe' with 'channel' in most places.
Also, consistently use 'ch' for channel variables. This matches how we
consistently use sdi, devc, and so on all over the code-base.

This fixes parts of bug #259.
2014-03-25 20:58:54 +01:00
Uwe Hermann 91aea754aa Rename 'struct sr_probe' to 'struct sr_channel' everywhere.
This fixes parts of bug #259.
2014-03-25 20:58:54 +01:00
Uwe Hermann 53b4680fce Consistently use 'cg' for channel group variables.
This matches how we consistently use sdi, devc, and so on all over
the code-base.

This fixes parts of bug #259.
2014-03-25 20:58:54 +01:00
Uwe Hermann 660e398fe9 Replace 'probe group' with 'channel group' everywhere.
The name 'probe' (and thus 'probe group') is a relic from the times when
sigrok was mostly about logic analyzers. Nowadays we support a lot more
device types where 'probe' is not really a good term and 'channel' is
much better suited.

This fixes parts of bug #259.
2014-03-25 20:58:54 +01:00
Uwe Hermann 67bd805523 Switch to a non-recursive automake setup.
Instead of >= 44 Makefile.am's we now only have one top-level
Makefile.am, and use the 'subdir-objects' automake option to
handle the build via non-recursive (auto)make.

This has the advantage of fewer (boilerplate or other) files and less
clutter in general, as well as performance advantages since the new
setup can build many files in parallel (with 'make -j'), not only 2 or 3
files within the same (e.g. hardware/xxxx/* subdirectory) and also since
we no longer need to build intermediate libtool helper libs per subdirectory.

A quick, non-scientific test build on a quad-core laptop with 'make -j 4'
yields a build time reduction from 35s to 19s.

All autotools features that worked before are still intact without any
regressions, including the Make targets 'install', 'uninstall', 'check',
'dist', 'clean', 'distclean' and so on, as well as all the usual portability
handling (build works on any OS, with any Make implementation such as
GNU Make or BSD Make, with any shell such as sh/ksh/zsh/bash/dash, etc. etc.)
and features such as out-of-tree build support, cross-compile support,
testsuite support (also with colored output), "silent make rules", etc. etc.
2014-03-20 13:10:05 +01:00
Uwe Hermann d9e79c5122 Add support for the Tenma 72-7750 (UNI-T UT60G rebadge). 2014-01-06 20:30:35 +01:00
Uwe Hermann 4104ef810e Add initial support for the UNI-T UT60G. 2014-01-06 19:06:51 +01:00
Uwe Hermann 79bc9924d7 uni-t-dmm: Fix incorrect order which breaks UT61B/C. 2014-01-01 16:40:36 +01:00
Uwe Hermann 7cb69b1870 Add support for the UNI-T UT61B multimeter. 2014-01-01 15:28:44 +01:00
Aurelien Jacobs d97824e52e switch the UNI-T UT61E driver to the new es519xx parser 2013-12-29 18:46:08 +01:00
Uwe Hermann 5f985df23c Add support for the UNI-T UT61C multimeter. 2013-12-29 17:35:51 +01:00
Martin Ling 3544f848e0 Centralise duplicated logging helper defines. 2013-12-27 12:54:05 +01:00
Bert Vermeulen 79b9a237bd uni-t-dmm: Drop unnecessary DMM count. 2013-11-23 15:24:40 +01:00
Bert Vermeulen 5e1f7c890d uni-t-dmm: Add support for the Tenma 72-7745.
This is a rebadged UNI-T UT60E.
2013-11-23 12:50:33 +01:00
Uwe Hermann 26e0361cc6 uni-t-dmm: Drop unused packet_request callback. 2013-11-15 09:36:51 +01:00
Martin Ling 8f996b8948 probe_groups: API changes required to implement probe groups. 2013-11-08 01:03:16 +01:00
Uwe Hermann e52bb9be83 Voltcraft VC-830: Fix diode mode handling.
This DMM is not using the standard bits in the FS9922 protocol/structure
to indicate the "volt" and "diode mode" flags. Instead, it only sets the
user-defined bit "z1" to indicate both "diode mode" and "volt".

This fixes #142.
2013-09-01 15:27:21 +02:00
Bert Vermeulen 56e76981bc uni-t-dmm: Require conn parameter for scan
Since the uni-t-ut32x series handles devices with the same USB VID.PID,
which is linked to the WCH CH9325 USB/HID-UART interface chip, this
driver can no longer assume it can handle anything with this VID.PID.
2013-08-11 10:52:43 +02:00
Uwe Hermann 4d7ddff75b uni-t-dmm: Fix UT61E bug related to the UNI-T UD-D04 cable.
This fixes bug #136.
2013-08-06 23:36:16 +02:00
Uwe Hermann c93ebace30 uni-t-dmm: Drop DMM table (comment).
This info is in the wiki already, no need to duplicate in the code.
2013-08-02 01:02:03 +02:00
Uwe Hermann 2b691be806 serial-dmm/uni-t-dmm: Drop Tecpel DMM-8060.
The Tecpel DMM-8060 was added since we assumed it would be a rebadged
Voltcraft VC-820 (since we know the Tecpel DMM-8061 is a rebadged VC-840).

However, according to the vendor webpage it doesn't have PC connectivity
at all, so drop it for now (until someone can confirm that it does or does
not actually have RS232/USB connectivity).
2013-07-18 12:43:07 +02:00
Florian Knodt a7a163a795 Support for UNI-T UT60A/E multimeters via RS232 or USB 2013-07-09 22:57:55 +02:00
Uwe Hermann c134574938 uni-t-dmm: Add support for the Voltcraft VC-830. 2013-06-23 10:23:21 +02:00
Uwe Hermann 3b412e3a30 s/clear_instances/dev_clear/.
Consistently use the same name for the dev_clear() API callback
everywhere.
2013-06-02 16:56:41 +02:00
Uwe Hermann f6beaac55c std: Drop hw_ from function names.
The per-driver API calls no longer have a hw_ prefix (e.g. hw_init()
became init() and so on), so drop the 'hw_' from the std versions
for those API callbacks too.
2013-06-02 16:46:18 +02:00
Uwe Hermann 6078d2c996 Use consistent API callback function names.
This now matches what the 'new-driver' tool generates.
2013-05-10 20:01:37 +02:00
Uwe Hermann 8dca646ef9 uni-t-dmm: Use std_dev_clear(). 2013-05-10 18:59:46 +02:00
Uwe Hermann c5ffac4148 uni-t-dmm: Add missing SR_CONF_LIMIT_MSEC support. 2013-05-04 00:13:25 +02:00
Uwe Hermann 29a27196a1 s/DRIVER_LOG_DOMAIN/LOG_PREFIX/.
This is more correct anyway, and also a bit shorter and more readable.
2013-05-03 21:59:32 +02:00
Uwe Hermann 4554314c4f uni-t-dmm: Add Tecpel DMM-8060 support.
This is _very_ likely to be a rebadged Voltcraft VC-820, treating as such.
2013-05-01 03:04:46 +02:00
Uwe Hermann b6bad47c91 uni-t-dmm: Add Tecpel DMM-8061 support. 2013-05-01 03:00:41 +02:00
Uwe Hermann 2451a20ff5 fs9721: Factor out common code from serial-dmm.
These functions are FS9721 specific (and DMM specific), and can be used
from various drivers (e.g. serial-dmm or uni-t-dmm or possibly others).
2013-05-01 02:16:55 +02:00
Uwe Hermann 4853559466 uni-t-dmm/serial-dmm: Handle Voltcraft VC-840 temperature. 2013-05-01 01:58:42 +02:00
Uwe Hermann 767aae30ed uni-t-dmm: Fix incorrect UNI-T UT61D baudrate. 2013-04-30 20:22:18 +02:00
Uwe Hermann 695d0e1efa uni-t-dmm: Add support for the Voltcraft VC-840.
This DMM is already supported via the serial-dmm driver when using the
RS232 cable. The uni-t-dmm support makes it usable with the USB/HID
cable too.
2013-04-30 20:22:17 +02:00
Uwe Hermann bbef5e326d uni-t-dmm: Add support for the UNI-T UT61E.
This DMM is already supported via the serial-dmm driver when using the
RS232 cable. The uni-t-dmm support makes it usable with the USB/HID
cable too.
2013-04-30 20:22:17 +02:00
Uwe Hermann 3ece1dff6c uni-t-dmm: Use sr_dev_inst to store connection handle. 2013-04-30 20:22:17 +02:00
Bert Vermeulen 50c604f50b Don't automatically clear known instances from USB drivers on scan
This invalidates previously returned sr_dev_inst pointers, which a
frontend may be holding. It's the frontend's responsibility to clear
the list of instances a driver keeps track of by calling

	sr_dev_clear(driver);

if it wants a completely new scan done.
2013-04-27 18:27:32 +02:00
Uwe Hermann bc653a5678 uni-t-dmm: Do proper detection of packets in the stream.
Also, various fixups in the driver.
2013-04-26 20:54:21 +02:00
Uwe Hermann c885268777 uni-t-dmm: Make driver more similar to serial-dmm. 2013-04-26 20:05:44 +02:00
Bert Vermeulen e73ffd4238 Enforce open device before config_set()/dev_acquisition_start() 2013-04-24 22:03:50 +02:00
Uwe Hermann 50985c2019 GPL headers: Use correct project name. 2013-04-23 22:24:30 +02:00
Bert Vermeulen bd6fbf628a drivers: return SR_ERR_NA on unsupported config key
Fixes bug 89.
2013-04-16 11:00:55 +02:00
Bert Vermeulen 7d93a62ea3 uni-t-dmm: Adjust to GVariant-based sr_config_* functions 2013-04-11 18:32:07 +02:00
Uwe Hermann 6fab7b8f53 Driver struct cleanups.
- Explicitly list .config_get in all drivers for consistency, and set it
   to NULL if unused (whether or not a driver implements it is optional).

 - List all 'struct sr_dev_driver' entries in the same order in all drivers.

 - Move the check whether .config_set/.config_list exist (i.e., are non-NULL)
   into sanity_check_all_drivers().
2013-02-07 10:58:35 +01:00
Uwe Hermann 4afdfd4628 Add and use std_session_send_df_header().
This is a small helper function which sends the SR_DF_HEADER packet that
drivers usually emit in their hw_dev_acquisition_start() API callback.
It simplifies and shortens the hw_dev_acquisition_start() functions
quite a bit.

It also simplifies the input modules which send an SR_DF_HEADER packet, too.

This patch also automatically removes some unneeded malloc/free in some
drivers for the 'packet' and 'header' structs used for SR_DF_HEADER.
2013-02-07 10:46:28 +01:00
Uwe Hermann 0e94d524c1 Shorten/simplify hw_dev_list() implementations. 2013-02-05 18:27:05 +01:00
Uwe Hermann 063e7aef6d Factor out common hw_init() driver code.
Most drivers do pretty much the same things in their hw_init()
right now, so factor out that code to std_hw_init() in std.c.
2013-01-29 12:56:02 +01:00
Bert Vermeulen 6a4710fac2 drivers: Trim unused config_get() calls
None of the driver config_get/set/list calls are required.
2013-01-25 16:05:48 +01:00
Bert Vermeulen 0d485e30c6 Deprecate SR_DI_HWOPTS.
This is replaced by SR_CONF_SCAN_OPTIONS.
2013-01-25 15:09:20 +01:00