Skip to content

Commit

Permalink
Support for UNI-T UT60A/E Multimeter via RS232 or USB
Browse files Browse the repository at this point in the history
  • Loading branch information
adlerweb committed Jul 5, 2013
1 parent f05e7b7 commit 40a73f0
Show file tree
Hide file tree
Showing 7 changed files with 62 additions and 2 deletions.
20 changes: 20 additions & 0 deletions hardware/serial-dmm/api.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ SR_PRIV struct sr_dev_driver voltcraft_m3650d_driver_info;
SR_PRIV struct sr_dev_driver voltcraft_vc820_ser_driver_info;
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 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_ut61d_ser_driver_info;
SR_PRIV struct sr_dev_driver uni_t_ut61e_ser_driver_info;

Expand Down Expand Up @@ -194,6 +196,22 @@ SR_PRIV struct dmm_info dmms[] = {
&voltcraft_vc840_ser_driver_info,
receive_data_VOLTCRAFT_VC840_SER,
},
{
"UNI-T", "UT60A (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
2400, FS9721_PACKET_SIZE, NULL,
sr_fs9721_packet_valid, sr_fs9721_parse,
NULL,
&uni_t_ut60a_ser_driver_info,
receive_data_UNI_T_UT60A_SER,
},
{
"UNI-T", "UT60E (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
2400, FS9721_PACKET_SIZE, NULL,
sr_fs9721_packet_valid, sr_fs9721_parse,
sr_fs9721_00_temp_c,
&uni_t_ut60e_ser_driver_info,
receive_data_UNI_T_UT60E_SER,
},
{
"UNI-T", "UT61D (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
2400, FS9922_PACKET_SIZE, NULL,
Expand Down Expand Up @@ -526,5 +544,7 @@ DRV(voltcraft_m3650d, VOLTCRAFT_M3650D, "voltcraft-m3650d", "Voltcraft M-3650D")
DRV(voltcraft_vc820_ser, VOLTCRAFT_VC820_SER, "voltcraft-vc820-ser", "Voltcraft VC-820 (UT-D02 cable)")
DRV(voltcraft_vc830_ser, VOLTCRAFT_VC830_SER, "voltcraft-vc830-ser", "Voltcraft VC-830 (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_ut60e_ser, UNI_T_UT60E_SER, "uni-t-ut60e-ser", "UNI-T UT60E (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)")
2 changes: 2 additions & 0 deletions hardware/serial-dmm/protocol.c
Original file line number Diff line number Diff line change
Expand Up @@ -176,5 +176,7 @@ RECEIVE_DATA(VOLTCRAFT_M3650D, metex14)
RECEIVE_DATA(VOLTCRAFT_VC820_SER, fs9721)
RECEIVE_DATA(VOLTCRAFT_VC830_SER, fs9922)
RECEIVE_DATA(VOLTCRAFT_VC840_SER, fs9721)
RECEIVE_DATA(UNI_T_UT60A_SER, fs9721)
RECEIVE_DATA(UNI_T_UT60E_SER, fs9721)
RECEIVE_DATA(UNI_T_UT61D_SER, fs9922)
RECEIVE_DATA(UNI_T_UT61E_SER, es51922)
6 changes: 5 additions & 1 deletion hardware/serial-dmm/protocol.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,13 @@ enum {
VOLTCRAFT_VC820_SER,
VOLTCRAFT_VC830_SER,
VOLTCRAFT_VC840_SER,
UNI_T_UT60A_SER,
UNI_T_UT60E_SER,
UNI_T_UT61D_SER,
UNI_T_UT61E_SER,
};

#define DMM_COUNT 20
#define DMM_COUNT 22

struct dmm_info {
char *vendor;
Expand Down Expand Up @@ -113,6 +115,8 @@ SR_PRIV int receive_data_VOLTCRAFT_M3650D(int fd, int revents, void *cb_data);
SR_PRIV int receive_data_VOLTCRAFT_VC820_SER(int fd, int revents, void *cb_data);
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_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_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);

Expand Down
18 changes: 18 additions & 0 deletions hardware/uni-t-dmm/api.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,8 @@ SR_PRIV struct sr_dev_driver uni_t_ut61e_driver_info;
SR_PRIV struct sr_dev_driver voltcraft_vc820_driver_info;
SR_PRIV struct sr_dev_driver voltcraft_vc830_driver_info;
SR_PRIV struct sr_dev_driver voltcraft_vc840_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 dmm_info udmms[] = {
{
Expand Down Expand Up @@ -95,6 +97,20 @@ SR_PRIV struct dmm_info udmms[] = {
sr_fs9721_00_temp_c,
&voltcraft_vc840_driver_info, receive_data_VOLTCRAFT_VC840,
},
{
"UNI-T", "UT60A", 2400,
FS9721_PACKET_SIZE, NULL,
sr_fs9721_packet_valid, sr_fs9721_parse,
NULL,
&uni_t_ut60a_driver_info, receive_data_UNI_T_UT60A,
},
{
"UNI-T", "UT-60E", 2400,
FS9721_PACKET_SIZE, NULL,
sr_fs9721_packet_valid, sr_fs9721_parse,
sr_fs9721_00_temp_c,
&uni_t_ut60e_driver_info, receive_data_UNI_T_UT60E,
},
};

static int dev_clear(int dmm)
Expand Down Expand Up @@ -350,3 +366,5 @@ DRV(uni_t_ut61e, UNI_T_UT61E, "uni-t-ut61e", "UNI-T UT61E")
DRV(voltcraft_vc820, VOLTCRAFT_VC820, "voltcraft-vc820", "Voltcraft VC-820")
DRV(voltcraft_vc830, VOLTCRAFT_VC830, "voltcraft-vc830", "Voltcraft VC-830")
DRV(voltcraft_vc840, VOLTCRAFT_VC840, "voltcraft-vc840", "Voltcraft VC-840")
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")
4 changes: 4 additions & 0 deletions hardware/uni-t-dmm/protocol.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,8 @@
* - Voltcraft VC-820: Fortune Semiconductor FS9721_LP3
* - Voltcraft VC-830: Fortune Semiconductor FS9922-DMM4
* - Voltcraft VC-840: Fortune Semiconductor FS9721_LP3
* - UNI-T UT60A: Fortune Semiconductor FS9721_LP3
* - UNI-T UT60E: Fortune Semiconductor FS9721_LP3
* - ...
*/

Expand Down Expand Up @@ -310,3 +312,5 @@ RECEIVE_DATA(UNI_T_UT61E, es51922)
RECEIVE_DATA(VOLTCRAFT_VC820, fs9721)
RECEIVE_DATA(VOLTCRAFT_VC830, fs9922)
RECEIVE_DATA(VOLTCRAFT_VC840, fs9721)
RECEIVE_DATA(UNI_T_UT60A, fs9721)
RECEIVE_DATA(UNI_T_UT60E, fs9721)
6 changes: 5 additions & 1 deletion hardware/uni-t-dmm/protocol.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,11 @@ enum {
VOLTCRAFT_VC820,
VOLTCRAFT_VC830,
VOLTCRAFT_VC840,
UNI_T_UT60A,
UNI_T_UT60E,
};

#define DMM_COUNT 7
#define DMM_COUNT 9

struct dmm_info {
char *vendor;
Expand Down Expand Up @@ -99,5 +101,7 @@ SR_PRIV int receive_data_UNI_T_UT61E(int fd, int revents, void *cb_data);
SR_PRIV int receive_data_VOLTCRAFT_VC820(int fd, int revents, void *cb_data);
SR_PRIV int receive_data_VOLTCRAFT_VC830(int fd, int revents, void *cb_data);
SR_PRIV int receive_data_VOLTCRAFT_VC840(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);

#endif
8 changes: 8 additions & 0 deletions hwdriver.c
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,8 @@ extern SR_PRIV struct sr_dev_driver voltcraft_m3650d_driver_info;
extern SR_PRIV struct sr_dev_driver voltcraft_vc820_ser_driver_info;
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 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_ut61d_ser_driver_info;
extern SR_PRIV struct sr_dev_driver uni_t_ut61e_ser_driver_info;
#endif
Expand All @@ -195,6 +197,8 @@ extern SR_PRIV struct sr_dev_driver uni_t_ut61e_driver_info;
extern SR_PRIV struct sr_dev_driver voltcraft_vc820_driver_info;
extern SR_PRIV struct sr_dev_driver voltcraft_vc830_driver_info;
extern SR_PRIV struct sr_dev_driver voltcraft_vc840_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;
#endif
/** @endcond */

Expand Down Expand Up @@ -282,6 +286,8 @@ static struct sr_dev_driver *drivers_list[] = {
&voltcraft_vc820_ser_driver_info,
&voltcraft_vc830_ser_driver_info,
&voltcraft_vc840_ser_driver_info,
&uni_t_ut60a_ser_driver_info,
&uni_t_ut60e_ser_driver_info,
&uni_t_ut61d_ser_driver_info,
&uni_t_ut61e_ser_driver_info,
#endif
Expand All @@ -293,6 +299,8 @@ static struct sr_dev_driver *drivers_list[] = {
&voltcraft_vc820_driver_info,
&voltcraft_vc830_driver_info,
&voltcraft_vc840_driver_info,
&uni_t_ut60a_driver_info,
&uni_t_ut60e_driver_info,
#endif
NULL,
};
Expand Down

0 comments on commit 40a73f0

Please sign in to comment.