SR_PRIV struct sr_dev_driver radioshack_22_168_driver_info;
SR_PRIV struct sr_dev_driver radioshack_22_805_driver_info;
SR_PRIV struct sr_dev_driver radioshack_22_812_driver_info;
-SR_PRIV struct sr_dev_driver tecpel_dmm_8060_ser_driver_info;
SR_PRIV struct sr_dev_driver tecpel_dmm_8061_ser_driver_info;
SR_PRIV struct sr_dev_driver voltcraft_m3650d_driver_info;
SR_PRIV struct sr_dev_driver voltcraft_vc820_ser_driver_info;
NULL,
&radioshack_22_812_driver_info, receive_data_RADIOSHACK_22_812,
},
- {
- "Tecpel", "DMM-8060 (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
- 2400, FS9721_PACKET_SIZE, NULL,
- sr_fs9721_packet_valid, sr_fs9721_parse,
- NULL,
- &tecpel_dmm_8060_ser_driver_info,
- receive_data_TECPEL_DMM_8060_SER,
- },
{
"Tecpel", "DMM-8061 (UT-D02 cable)", "2400/8n1/rts=0/dtr=1",
2400, FS9721_PACKET_SIZE, NULL,
DRV(radioshack_22_168, RADIOSHACK_22_168, "radioshack-22-168", "RadioShack 22-168")
DRV(radioshack_22_805, RADIOSHACK_22_805, "radioshack-22-805", "RadioShack 22-805")
DRV(radioshack_22_812, RADIOSHACK_22_812, "radioshack-22-812", "RadioShack 22-812")
-DRV(tecpel_dmm_8060_ser, TECPEL_DMM_8060_SER, "tecpel-dmm-8060-ser", "Tecpel DMM-8060 (UT-D02 cable)")
DRV(tecpel_dmm_8061_ser, TECPEL_DMM_8061_SER, "tecpel-dmm-8061-ser", "Tecpel DMM-8061 (UT-D02 cable)")
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)")
RECEIVE_DATA(RADIOSHACK_22_168, metex14)
RECEIVE_DATA(RADIOSHACK_22_805, metex14)
RECEIVE_DATA(RADIOSHACK_22_812, rs9lcd)
-RECEIVE_DATA(TECPEL_DMM_8060_SER, fs9721)
RECEIVE_DATA(TECPEL_DMM_8061_SER, fs9721)
RECEIVE_DATA(VOLTCRAFT_M3650D, metex14)
RECEIVE_DATA(VOLTCRAFT_VC820_SER, fs9721)
RADIOSHACK_22_168,
RADIOSHACK_22_805,
RADIOSHACK_22_812,
- TECPEL_DMM_8060_SER,
TECPEL_DMM_8061_SER,
VOLTCRAFT_M3650D,
VOLTCRAFT_VC820_SER,
UNI_T_UT61E_SER,
};
-#define DMM_COUNT 22
+#define DMM_COUNT 21
struct dmm_info {
char *vendor;
SR_PRIV int receive_data_RADIOSHACK_22_168(int fd, int revents, void *cb_data);
SR_PRIV int receive_data_RADIOSHACK_22_805(int fd, int revents, void *cb_data);
SR_PRIV int receive_data_RADIOSHACK_22_812(int fd, int revents, void *cb_data);
-SR_PRIV int receive_data_TECPEL_DMM_8060_SER(int fd, int revents, void *cb_data);
SR_PRIV int receive_data_TECPEL_DMM_8061_SER(int fd, int revents, void *cb_data);
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_CONF_CONTINUOUS,
};
-SR_PRIV struct sr_dev_driver tecpel_dmm_8060_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_ut60e_driver_info;
SR_PRIV struct sr_dev_driver voltcraft_vc840_driver_info;
SR_PRIV struct dmm_info udmms[] = {
- {
- "Tecpel", "DMM-8060", 2400,
- FS9721_PACKET_SIZE, NULL,
- sr_fs9721_packet_valid, sr_fs9721_parse,
- NULL,
- &tecpel_dmm_8060_driver_info, receive_data_TECPEL_DMM_8060,
- },
{
"Tecpel", "DMM-8061", 2400,
FS9721_PACKET_SIZE, NULL,
.priv = NULL, \
};
-DRV(tecpel_dmm_8060, TECPEL_DMM_8060, "tecpel-dmm-8060", "Tecpel DMM-8060")
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_ut60e, UNI_T_UT60E, "uni-t-ut60e", "UNI-T UT60E")
* f1 d1 00 00 00 00 00 00 (1 data byte, 0xd1)
*
* Chips and serial settings used in UNI-T DMMs (and rebranded ones):
- * - Tecpel DMM-8060: ? (very likely Fortune Semiconductor FS9721_LP3)
* - Tecpel DMM-8061: ? (very likely Fortune Semiconductor FS9721_LP3)
* - UNI-T UT108: ?
* - UNI-T UT109: ?
return receive_data(fd, revents, ID_UPPER, &info, cb_data); }
/* Driver-specific receive_data() wrappers */
-RECEIVE_DATA(TECPEL_DMM_8060, fs9721)
RECEIVE_DATA(TECPEL_DMM_8061, fs9721)
RECEIVE_DATA(UNI_T_UT60A, fs9721)
RECEIVE_DATA(UNI_T_UT60E, fs9721)
/* Note: When adding entries here, don't forget to update DMM_COUNT. */
enum {
- TECPEL_DMM_8060,
TECPEL_DMM_8061,
UNI_T_UT60A,
UNI_T_UT60E,
VOLTCRAFT_VC840,
};
-#define DMM_COUNT 9
+#define DMM_COUNT 8
struct dmm_info {
char *vendor;
uint8_t buflen;
};
-SR_PRIV int receive_data_TECPEL_DMM_8060(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_UT60E(int fd, int revents, void *cb_data);
extern SR_PRIV struct sr_dev_driver radioshack_22_168_driver_info;
extern SR_PRIV struct sr_dev_driver radioshack_22_805_driver_info;
extern SR_PRIV struct sr_dev_driver radioshack_22_812_driver_info;
-extern SR_PRIV struct sr_dev_driver tecpel_dmm_8060_ser_driver_info;
extern SR_PRIV struct sr_dev_driver tecpel_dmm_8061_ser_driver_info;
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 uni_t_ut61e_ser_driver_info;
#endif
#ifdef HAVE_HW_UNI_T_DMM
-extern SR_PRIV struct sr_dev_driver tecpel_dmm_8060_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_ut60e_driver_info;
&radioshack_22_168_driver_info,
&radioshack_22_805_driver_info,
&radioshack_22_812_driver_info,
- &tecpel_dmm_8060_ser_driver_info,
&tecpel_dmm_8061_ser_driver_info,
&voltcraft_m3650d_driver_info,
&voltcraft_vc820_ser_driver_info,
&uni_t_ut61e_ser_driver_info,
#endif
#ifdef HAVE_HW_UNI_T_DMM
- &tecpel_dmm_8060_driver_info,
&tecpel_dmm_8061_driver_info,
&uni_t_ut60a_driver_info,
&uni_t_ut60e_driver_info,