Add support for the UNI-T UT61B multimeter.
This commit is contained in:
parent
162a48bfc7
commit
7cb69b1870
|
@ -268,8 +268,7 @@ a short list for convenience:
|
||||||
- PCE PCE-DM32: Briefly press the "RS232" button.
|
- PCE PCE-DM32: Briefly press the "RS232" button.
|
||||||
- RadioShack 22-812: Press and hold "SELECT" and "RANGE" together.
|
- RadioShack 22-812: Press and hold "SELECT" and "RANGE" together.
|
||||||
- TekPower TP4000ZC: Briefly press the "RS232" button.
|
- TekPower TP4000ZC: Briefly press the "RS232" button.
|
||||||
- UNI-T UT61C: Press the "REL/RS232/USB" button for roughly 1 second.
|
- UNI-T UT61B/C/D: Press the "REL/RS232/USB" button for roughly 1 second.
|
||||||
- UNI-T UT61D: Press the "REL/RS232/USB" button for roughly 1 second.
|
|
||||||
- UNI-T UT325: Briefly press the "SEND" button (as per manual). However, it
|
- UNI-T UT325: Briefly press the "SEND" button (as per manual). However, it
|
||||||
appears that in practice you don't have to press the button (at least on
|
appears that in practice you don't have to press the button (at least on
|
||||||
some versions of the device), simply connect the device via USB.
|
some versions of the device), simply connect the device via USB.
|
||||||
|
|
|
@ -63,6 +63,7 @@ SR_PRIV struct sr_dev_driver voltcraft_vc830_ser_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver voltcraft_vc840_ser_driver_info;
|
SR_PRIV struct sr_dev_driver voltcraft_vc840_ser_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut60a_ser_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut60a_ser_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut60e_ser_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut60e_ser_driver_info;
|
||||||
|
SR_PRIV struct sr_dev_driver uni_t_ut61b_ser_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut61c_ser_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut61c_ser_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut61d_ser_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut61d_ser_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut61e_ser_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut61e_ser_driver_info;
|
||||||
|
@ -234,6 +235,12 @@ SR_PRIV struct dmm_info dmms[] = {
|
||||||
&uni_t_ut60e_ser_driver_info,
|
&uni_t_ut60e_ser_driver_info,
|
||||||
receive_data_UNI_T_UT60E_SER,
|
receive_data_UNI_T_UT60E_SER,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"UNI-T", "UT61B (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
|
||||||
|
2400, FS9922_PACKET_SIZE, NULL,
|
||||||
|
sr_fs9922_packet_valid, sr_fs9922_parse, NULL,
|
||||||
|
&uni_t_ut61b_ser_driver_info, receive_data_UNI_T_UT61B_SER,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"UNI-T", "UT61C (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
|
"UNI-T", "UT61C (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
|
||||||
2400, FS9922_PACKET_SIZE, NULL,
|
2400, FS9922_PACKET_SIZE, NULL,
|
||||||
|
@ -560,6 +567,7 @@ DRV(voltcraft_vc830_ser, VOLTCRAFT_VC830_SER, "voltcraft-vc830-ser", "Voltcraft
|
||||||
DRV(voltcraft_vc840_ser, VOLTCRAFT_VC840_SER, "voltcraft-vc840-ser", "Voltcraft VC-840 (UT-D02 cable)")
|
DRV(voltcraft_vc840_ser, VOLTCRAFT_VC840_SER, "voltcraft-vc840-ser", "Voltcraft VC-840 (UT-D02 cable)")
|
||||||
DRV(uni_t_ut60a_ser, UNI_T_UT60A_SER, "uni-t-ut60a-ser", "UNI-T UT60A (UT-D02 cable)")
|
DRV(uni_t_ut60a_ser, UNI_T_UT60A_SER, "uni-t-ut60a-ser", "UNI-T UT60A (UT-D02 cable)")
|
||||||
DRV(uni_t_ut60e_ser, UNI_T_UT60E_SER, "uni-t-ut60e-ser", "UNI-T UT60E (UT-D02 cable)")
|
DRV(uni_t_ut60e_ser, UNI_T_UT60E_SER, "uni-t-ut60e-ser", "UNI-T UT60E (UT-D02 cable)")
|
||||||
|
DRV(uni_t_ut61b_ser, UNI_T_UT61B_SER, "uni-t-ut61b-ser", "UNI-T UT61B (UT-D02 cable)")
|
||||||
DRV(uni_t_ut61c_ser, UNI_T_UT61C_SER, "uni-t-ut61c-ser", "UNI-T UT61C (UT-D02 cable)")
|
DRV(uni_t_ut61c_ser, UNI_T_UT61C_SER, "uni-t-ut61c-ser", "UNI-T UT61C (UT-D02 cable)")
|
||||||
DRV(uni_t_ut61d_ser, UNI_T_UT61D_SER, "uni-t-ut61d-ser", "UNI-T UT61D (UT-D02 cable)")
|
DRV(uni_t_ut61d_ser, UNI_T_UT61D_SER, "uni-t-ut61d-ser", "UNI-T UT61D (UT-D02 cable)")
|
||||||
DRV(uni_t_ut61e_ser, UNI_T_UT61E_SER, "uni-t-ut61e-ser", "UNI-T UT61E (UT-D02 cable)")
|
DRV(uni_t_ut61e_ser, UNI_T_UT61E_SER, "uni-t-ut61e-ser", "UNI-T UT61E (UT-D02 cable)")
|
||||||
|
|
|
@ -182,6 +182,7 @@ RECEIVE_DATA(VOLTCRAFT_VC830_SER, fs9922)
|
||||||
RECEIVE_DATA(VOLTCRAFT_VC840_SER, fs9721)
|
RECEIVE_DATA(VOLTCRAFT_VC840_SER, fs9721)
|
||||||
RECEIVE_DATA(UNI_T_UT60A_SER, fs9721)
|
RECEIVE_DATA(UNI_T_UT60A_SER, fs9721)
|
||||||
RECEIVE_DATA(UNI_T_UT60E_SER, fs9721)
|
RECEIVE_DATA(UNI_T_UT60E_SER, fs9721)
|
||||||
|
RECEIVE_DATA(UNI_T_UT61B_SER, fs9922)
|
||||||
RECEIVE_DATA(UNI_T_UT61C_SER, fs9922)
|
RECEIVE_DATA(UNI_T_UT61C_SER, fs9922)
|
||||||
RECEIVE_DATA(UNI_T_UT61D_SER, fs9922)
|
RECEIVE_DATA(UNI_T_UT61D_SER, fs9922)
|
||||||
RECEIVE_DATA(UNI_T_UT61E_SER, es519xx)
|
RECEIVE_DATA(UNI_T_UT61E_SER, es519xx)
|
||||||
|
|
|
@ -46,13 +46,14 @@ enum {
|
||||||
VOLTCRAFT_VC840_SER,
|
VOLTCRAFT_VC840_SER,
|
||||||
UNI_T_UT60A_SER,
|
UNI_T_UT60A_SER,
|
||||||
UNI_T_UT60E_SER,
|
UNI_T_UT60E_SER,
|
||||||
|
UNI_T_UT61B_SER,
|
||||||
UNI_T_UT61C_SER,
|
UNI_T_UT61C_SER,
|
||||||
UNI_T_UT61D_SER,
|
UNI_T_UT61D_SER,
|
||||||
UNI_T_UT61E_SER,
|
UNI_T_UT61E_SER,
|
||||||
ISO_TECH_IDM103N,
|
ISO_TECH_IDM103N,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define DMM_COUNT 26
|
#define DMM_COUNT 27
|
||||||
|
|
||||||
struct dmm_info {
|
struct dmm_info {
|
||||||
/** Manufacturer/brand. */
|
/** Manufacturer/brand. */
|
||||||
|
@ -127,6 +128,7 @@ SR_PRIV int receive_data_VOLTCRAFT_VC830_SER(int fd, int revents, void *cb_data)
|
||||||
SR_PRIV int receive_data_VOLTCRAFT_VC840_SER(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_VOLTCRAFT_VC840_SER(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT60A_SER(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT60A_SER(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT60E_SER(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT60E_SER(int fd, int revents, void *cb_data);
|
||||||
|
SR_PRIV int receive_data_UNI_T_UT61B_SER(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT61C_SER(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT61C_SER(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT61D_SER(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT61D_SER(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT61E_SER(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT61E_SER(int fd, int revents, void *cb_data);
|
||||||
|
|
|
@ -40,6 +40,7 @@ static const int32_t hwcaps[] = {
|
||||||
SR_PRIV struct sr_dev_driver tecpel_dmm_8061_driver_info;
|
SR_PRIV struct sr_dev_driver tecpel_dmm_8061_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut60a_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut60a_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut60e_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut60e_driver_info;
|
||||||
|
SR_PRIV struct sr_dev_driver uni_t_ut61b_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut61c_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut61c_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut61d_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut61d_driver_info;
|
||||||
SR_PRIV struct sr_dev_driver uni_t_ut61e_driver_info;
|
SR_PRIV struct sr_dev_driver uni_t_ut61e_driver_info;
|
||||||
|
@ -77,6 +78,13 @@ SR_PRIV struct dmm_info udmms[] = {
|
||||||
NULL,
|
NULL,
|
||||||
&uni_t_ut61c_driver_info, receive_data_UNI_T_UT61C,
|
&uni_t_ut61c_driver_info, receive_data_UNI_T_UT61C,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"UNI-T", "UT61B", 2400,
|
||||||
|
FS9922_PACKET_SIZE,
|
||||||
|
sr_fs9922_packet_valid, sr_fs9922_parse,
|
||||||
|
NULL,
|
||||||
|
&uni_t_ut61b_driver_info, receive_data_UNI_T_UT61B,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"UNI-T", "UT61D", 2400,
|
"UNI-T", "UT61D", 2400,
|
||||||
FS9922_PACKET_SIZE,
|
FS9922_PACKET_SIZE,
|
||||||
|
@ -391,6 +399,7 @@ SR_PRIV struct sr_dev_driver ID##_driver_info = { \
|
||||||
DRV(tecpel_dmm_8061, TECPEL_DMM_8061, "tecpel-dmm-8061", "Tecpel DMM-8061")
|
DRV(tecpel_dmm_8061, TECPEL_DMM_8061, "tecpel-dmm-8061", "Tecpel DMM-8061")
|
||||||
DRV(uni_t_ut60a, UNI_T_UT60A, "uni-t-ut60a", "UNI-T UT60A")
|
DRV(uni_t_ut60a, UNI_T_UT60A, "uni-t-ut60a", "UNI-T UT60A")
|
||||||
DRV(uni_t_ut60e, UNI_T_UT60E, "uni-t-ut60e", "UNI-T UT60E")
|
DRV(uni_t_ut60e, UNI_T_UT60E, "uni-t-ut60e", "UNI-T UT60E")
|
||||||
|
DRV(uni_t_ut61b, UNI_T_UT61B, "uni-t-ut61b", "UNI-T UT61B")
|
||||||
DRV(uni_t_ut61c, UNI_T_UT61C, "uni-t-ut61c", "UNI-T UT61C")
|
DRV(uni_t_ut61c, UNI_T_UT61C, "uni-t-ut61c", "UNI-T UT61C")
|
||||||
DRV(uni_t_ut61d, UNI_T_UT61D, "uni-t-ut61d", "UNI-T UT61D")
|
DRV(uni_t_ut61d, UNI_T_UT61D, "uni-t-ut61d", "UNI-T UT61D")
|
||||||
DRV(uni_t_ut61e, UNI_T_UT61E, "uni-t-ut61e", "UNI-T UT61E")
|
DRV(uni_t_ut61e, UNI_T_UT61E, "uni-t-ut61e", "UNI-T UT61E")
|
||||||
|
|
|
@ -303,6 +303,7 @@ SR_PRIV int receive_data_##ID_UPPER(int fd, int revents, void *cb_data) { \
|
||||||
RECEIVE_DATA(TECPEL_DMM_8061, fs9721)
|
RECEIVE_DATA(TECPEL_DMM_8061, fs9721)
|
||||||
RECEIVE_DATA(UNI_T_UT60A, fs9721)
|
RECEIVE_DATA(UNI_T_UT60A, fs9721)
|
||||||
RECEIVE_DATA(UNI_T_UT60E, fs9721)
|
RECEIVE_DATA(UNI_T_UT60E, fs9721)
|
||||||
|
RECEIVE_DATA(UNI_T_UT61B, fs9922)
|
||||||
RECEIVE_DATA(UNI_T_UT61C, fs9922)
|
RECEIVE_DATA(UNI_T_UT61C, fs9922)
|
||||||
RECEIVE_DATA(UNI_T_UT61D, fs9922)
|
RECEIVE_DATA(UNI_T_UT61D, fs9922)
|
||||||
RECEIVE_DATA(UNI_T_UT61E, es519xx)
|
RECEIVE_DATA(UNI_T_UT61E, es519xx)
|
||||||
|
|
|
@ -33,6 +33,7 @@ enum {
|
||||||
TECPEL_DMM_8061,
|
TECPEL_DMM_8061,
|
||||||
UNI_T_UT60A,
|
UNI_T_UT60A,
|
||||||
UNI_T_UT60E,
|
UNI_T_UT60E,
|
||||||
|
UNI_T_UT61B,
|
||||||
UNI_T_UT61C,
|
UNI_T_UT61C,
|
||||||
UNI_T_UT61D,
|
UNI_T_UT61D,
|
||||||
UNI_T_UT61E,
|
UNI_T_UT61E,
|
||||||
|
@ -85,6 +86,7 @@ struct dev_context {
|
||||||
SR_PRIV int receive_data_TECPEL_DMM_8061(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_TECPEL_DMM_8061(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT60A(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT60A(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT60E(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT60E(int fd, int revents, void *cb_data);
|
||||||
|
SR_PRIV int receive_data_UNI_T_UT61B(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT61C(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT61C(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT61D(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT61D(int fd, int revents, void *cb_data);
|
||||||
SR_PRIV int receive_data_UNI_T_UT61E(int fd, int revents, void *cb_data);
|
SR_PRIV int receive_data_UNI_T_UT61E(int fd, int revents, void *cb_data);
|
||||||
|
|
|
@ -219,6 +219,7 @@ extern SR_PRIV struct sr_dev_driver voltcraft_vc830_ser_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver voltcraft_vc840_ser_driver_info;
|
extern SR_PRIV struct sr_dev_driver voltcraft_vc840_ser_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut60a_ser_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut60a_ser_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut60e_ser_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut60e_ser_driver_info;
|
||||||
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61b_ser_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut61c_ser_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61c_ser_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut61d_ser_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61d_ser_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut61e_ser_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61e_ser_driver_info;
|
||||||
|
@ -228,6 +229,7 @@ extern SR_PRIV struct sr_dev_driver iso_tech_idm103n_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver tecpel_dmm_8061_driver_info;
|
extern SR_PRIV struct sr_dev_driver tecpel_dmm_8061_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut60a_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut60a_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut60e_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut60e_driver_info;
|
||||||
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61b_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut61c_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61c_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut61d_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61d_driver_info;
|
||||||
extern SR_PRIV struct sr_dev_driver uni_t_ut61e_driver_info;
|
extern SR_PRIV struct sr_dev_driver uni_t_ut61e_driver_info;
|
||||||
|
@ -354,6 +356,7 @@ static struct sr_dev_driver *drivers_list[] = {
|
||||||
&voltcraft_vc840_ser_driver_info,
|
&voltcraft_vc840_ser_driver_info,
|
||||||
&uni_t_ut60a_ser_driver_info,
|
&uni_t_ut60a_ser_driver_info,
|
||||||
&uni_t_ut60e_ser_driver_info,
|
&uni_t_ut60e_ser_driver_info,
|
||||||
|
&uni_t_ut61b_ser_driver_info,
|
||||||
&uni_t_ut61c_ser_driver_info,
|
&uni_t_ut61c_ser_driver_info,
|
||||||
&uni_t_ut61d_ser_driver_info,
|
&uni_t_ut61d_ser_driver_info,
|
||||||
&uni_t_ut61e_ser_driver_info,
|
&uni_t_ut61e_ser_driver_info,
|
||||||
|
@ -363,6 +366,7 @@ static struct sr_dev_driver *drivers_list[] = {
|
||||||
&tecpel_dmm_8061_driver_info,
|
&tecpel_dmm_8061_driver_info,
|
||||||
&uni_t_ut60a_driver_info,
|
&uni_t_ut60a_driver_info,
|
||||||
&uni_t_ut60e_driver_info,
|
&uni_t_ut60e_driver_info,
|
||||||
|
&uni_t_ut61b_driver_info,
|
||||||
&uni_t_ut61c_driver_info,
|
&uni_t_ut61c_driver_info,
|
||||||
&uni_t_ut61d_driver_info,
|
&uni_t_ut61d_driver_info,
|
||||||
&uni_t_ut61e_driver_info,
|
&uni_t_ut61e_driver_info,
|
||||||
|
|
Loading…
Reference in New Issue