Difference between revisions of "Victor 70C"
Jump to navigation
Jump to search
Line 70: | Line 70: | ||
The deobfuscated payload is then structured as follows: | The deobfuscated payload is then structured as follows: | ||
{| border="0" width=" | {| border="0" width="95%" style="font-size: smaller" class="alternategrey sortable sigroktable" | ||
|- | |- | ||
! style="width: 3em;" | Byte | ! style="width: 3em;" | Byte | ||
Line 84: | Line 84: | ||
| 1 | | 1 | ||
| | | | ||
| Unused (always contains | | Unused (always contains 0xb0) | ||
|- | |- | ||
| 2 | | 2 | ||
| | | | ||
| Flags | | Flags (only bit 0 used) | ||
|- | |- | ||
Line 100: | Line 100: | ||
| | | | ||
| Major measurement modes | | Major measurement modes | ||
|- | |||
| | |||
| 0 | |||
| Voltage measurement mode, combined with '''AC''' or '''DC''' flags in byte 6. In combination with the '''Diode''' flag in byte 4, signifies diode testing mode. | |||
|- | |||
| | |||
| 1 | |||
| Current measurement mode, combined with '''AC''' or '''DC''' flags in byte 6. | |||
|- | |||
| | |||
| 2 | |||
| Resistance measurement mode. In combination with the '''Continuity''' flag in byte 4, signifies continuity testing mode. | |||
|- | |||
| | |||
| 3 | |||
| Unused. | |||
|- | |||
| | |||
| 4 | |||
| Frequency measurement mode. | |||
|- | |||
| | |||
| 5 | |||
| Capacitance measurement mode. | |||
|- | |||
| | |||
| 6 | |||
| Temperate measurement mode, in Celcius. | |||
|- | |||
| | |||
| 7 | |||
| Temperature measurement mode, in Fahrenheit. | |||
|- | |- |
Revision as of 11:56, 18 August 2012
The Victor 70C is a 4000 counts, CAT II handheld digital multimeter with USB connectivity. It is also sold as the EZA EZ-735
See Victor 70C/Info for more details (such as lsusb -vvv output) about the device.
Hardware
- Fortune Semiconductor FS9922-DMM4 multimeter chip
- NXP HEF4066BT quadruple bilateral switches
- Microchip TC7660E charge pump DC-to-DC voltage converter
- Texas Instruments 27L2C precision dual op-amp
- Unknown USB interface chip (HID)
Photos
Protocol
The device registers on the USB host as a HID-class device. The protocol payload is 14 bytes of data which can be read from endpoint 1, at no more than 1 Hz.
The 14-byte chunk is somewhat obfuscated. To deobfuscate, subtract the ASCII value of the following string from each of the 14 bytes in turn: jodenxunickxia
. Then reshuffle the bytes into different positions, according to the following table:
Original position | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
Final position | 6 | 13 | 5 | 11 | 2 | 7 | 9 | 8 | 3 | 10 | 12 | 0 | 4 | 1 |
The deobfuscated payload is then structured as follows:
Byte | Bit | Value |
---|---|---|
0 | Unused (always contains 0x50) | |
1 | Unused (always contains 0xb0) | |
2 | Flags (only bit 0 used) | |
0 | Minus | |
3 | Major measurement modes | |
0 | Voltage measurement mode, combined with AC or DC flags in byte 6. In combination with the Diode flag in byte 4, signifies diode testing mode. | |
1 | Current measurement mode, combined with AC or DC flags in byte 6. | |
2 | Resistance measurement mode. In combination with the Continuity flag in byte 4, signifies continuity testing mode. | |
3 | Unused. | |
4 | Frequency measurement mode. | |
5 | Capacitance measurement mode. | |
6 | Temperate measurement mode, in Celcius. | |
7 | Temperature measurement mode, in Fahrenheit. | |
4 | Value factors and extra measurement modes | |
5 | ||
6 | ||
7 | Decimal point position | |
8 | Unused (always contains 0x04) | |
9 | ||
10 | ||
11 | ||
12 | ||
13 | Unused (always contains 0xd4) |
Resources
- RoastLogger: Input Devices (Victor Victor 86B/86C support)
- Dave Ansell Science Communication: Victor 86C multimeter USB encoding for linux (PHP)
- victor86b-usb-interface: USB interface for Victor 86B Digital Multimeter using HIDAPI (see also here)
- Sparkfun: Victor 70C (manual, software)
- Github: victor70c (HIDAPI)
- Random review / photos