Difference between revisions of "Hantek 6022BL"

From sigrok
Jump to navigation Jump to search
(13 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[File:Hantek 6022be mugshot.png|thumb|right|Hantek 6022BL]]
{{Infobox oscilloscope
| image              = [[File:Hantek 6022be mugshot.png|180px]]
| name                = Hantek 6022BL
| status              = supported
| source_code_dir    = hantek-6xxx
| channels            = 2
| samplerate          = 48MHz
| samplerate_equiv    =
| bandwidth          = 20MHz
| vertical_resolution = 8bit
| triggers            = none (SW-only)
| input_impedance    = 1MΩ‖25pF
| memory              = none
| display            = none
| connectivity        = USB
| features            =
| website            = [http://www.hantek.com/en/ProductDetail_2_153.html hantek.com]
}}


The [http://www.hantek.com/en/ProductDetail_2_31.html Hantek 6022BL] is a USB-based, 2-channel oscilloscope with an analog bandwidth of 20MS/s and 48MS/s sampling rate, and an 8-channel logic analyzer with 24MHz sampling rate.
The '''Hantek 6022BL''' is a USB-based, 2-channel oscilloscope with an analog bandwidth of 20MS/s and 48MS/s sampling rate, and an 8-/16-channel logic analyzer with 24MHz sampling rate.


See [[Hantek_6022BL/Info]] for more details (such as '''lsusb -v''' output) about the device.
The device can either be used as oscilloscope '''or''' as logic analyzer, but not both at the same time. I.e., it is '''not''' a mixed-signal-oscilloscope (MSO).


'''Note''': Currently only the logic analyzer part is supported, the oscilloscope part is work in progress.
Currently only the 8-channel logic analyzer mode is supported.
 
See [[Hantek 6022BL/Info]] for more details (such as '''lsusb -v''' output) about the device.


== Hardware ==
== Hardware ==
Line 12: Line 31:
* '''256-byte I²C EEPROM''': 2x [http://www.microchip.com/wwwproducts/en/24LC02B Microchip 24LC02BI] ([http://ww1.microchip.com/downloads/en/DeviceDoc/21709J.pdf datasheet])
* '''256-byte I²C EEPROM''': 2x [http://www.microchip.com/wwwproducts/en/24LC02B Microchip 24LC02BI] ([http://ww1.microchip.com/downloads/en/DeviceDoc/21709J.pdf datasheet])
* '''16-Bit bus transceiver with 3-state outputs''': [http://www.ti.com/product/sn74lvc16245a TI SN74LVC16245A] ([http://www.ti.com/lit/ds/symlink/sn74lvc16245a.pdf datasheet])
* '''16-Bit bus transceiver with 3-state outputs''': [http://www.ti.com/product/sn74lvc16245a TI SN74LVC16245A] ([http://www.ti.com/lit/ds/symlink/sn74lvc16245a.pdf datasheet])
* '''8-channel analog mux/demux''': [http://www.nxp.com/products/discretes-and-logic/logic/8-channel-analog-multiplexer-demultiplexer:74HC4051D NXP 74HC4051D] ([http://cache.nxp.com/documents/data_sheet/74HC_HCT4051.pdf?pspll=1 datasheet])
* '''8-channel analog mux/demux''': 2x [http://www.nxp.com/products/discretes-and-logic/logic/8-channel-analog-multiplexer-demultiplexer:74HC4051D NXP 74HC4051D] ([http://cache.nxp.com/documents/data_sheet/74HC_HCT4051.pdf?pspll=1 datasheet])
* '''1A low-dropout voltage regulator (3.3V):''' [http://www.advanced-monolithic.com/products/voltreg.html#1117 Advanced Monolithic Systems AMS1117-3.3] [http://www.advanced-monolithic.com/pdf/ds1117.pdf datasheet])
* '''1A low-dropout voltage regulator (3.3V):''' [http://www.advanced-monolithic.com/products/voltreg.html#1117 Advanced Monolithic Systems AMS1117-3.3] [http://www.advanced-monolithic.com/pdf/ds1117.pdf datasheet])
* '''2W, fixed input, isolated & unregulated dual/single output DC/DC converter''': [http://www.mornsun.cn/html/product/content/A_S-2WR2.html Mornsun A_S-2WR2 (A0505S-2WR2)] ([http://www.mornsun.cn/uploads/pdf/A_S-2WR2.pdf datasheet])
* '''2W, fixed input, isolated & unregulated dual/single output DC/DC converter''': [http://www.mornsun.cn/html/product/content/A_S-2WR2.html Mornsun A_S-2WR2 (A0505S-2WR2)] ([http://www.mornsun.cn/uploads/pdf/A_S-2WR2.pdf datasheet])
* '''ADC''': ?
* '''ADC''': (educated guess, IC covered by glued-on heatsink)
* '''?''': S1661SZ B212FG
** '''8-bit, 40/80/100MHz, dual ADC''': [http://www.analog.com/en/products/analog-to-digital-converters/ad-converters/ad9288.html Analog Devices AD9288] ([http://www.analog.com/media/en/technical-documentation/data-sheets/AD9288.pdf datasheet]), or
** '''8-bit, 100MHz, dual ADC''': [https://translate.google.com/translate?hl=en&sl=zh-CN&tl=en&u=http%3A%2F%2Fwww.mxtronics.com%2Fn107%2Fn124%2Fn181%2Fn184%2Fc692%2Fcontent.html MXTronix MXT2088] ([http://www.mxtronics.com/n107/n124/n181/n184/c692/attr/2630.pdf datasheet])
* '''1.4GHz current feedback amplifiers with enable''': 2x [http://www.intersil.com/en/products/amplifiers-and-buffers/all-amplifiers/amplifiers/EL5166.html Intersil EL5166] ([http://www.intersil.com/content/dam/Intersil/documents/el51/el5166-67.pdf datasheet])
* '''145 MHz FastFET Opamps''': 2x [http://www.analog.com/en/products/amplifiers/operational-amplifiers/jfet-input-amplifiers/ad8065.html#product-overview AD8065]: ([http://www.analog.com/static/imported-files/data_sheets/AD8065_8066.pdf datasheet]), markings "HRA"
* '''Crystal''': 24MHz
* '''Crystal''': 24MHz
* '''Probes''': 2x PP80B 1X/10X 80MHz bandwidth oscilloscope probes
* '''Probes''': 2x PP80B 1X/10X 80MHz bandwidth oscilloscope probes
Line 25: Line 47:
* '''Not pressed''': [[Hantek_6022BL/Info|0925:3881 Lakeview Research Saleae Logic]] ([[Saleae Logic]] VID/PID, so [[fx2lafw]] works out of the box)
* '''Not pressed''': [[Hantek_6022BL/Info|0925:3881 Lakeview Research Saleae Logic]] ([[Saleae Logic]] VID/PID, so [[fx2lafw]] works out of the box)


Discovered connections:
'''NXP 74HC4051D (upper/lower, CH1/CH2) pinout''':
* The Pins 1DIR(1), 2DIR(24), 2OE(25) and 1OE(48) of the Bus transceiver (U4) are all connected to pin PA7(74) of the CY7(U2).
<small>
* Pin PA7(74) of the CY7(U2) is also connected with R37, which is the base resistor for Q2.
<table><tr><td>
* Q2 is connected to Q1 over R13.
{{chip_16pin
* Q1 is connected to pin S1(8) of the ADC(U8).
|1=Y4
* Pin S2(9) of the ADC(U8) is connected to GND.
|2=<span style="color:orange">(GND)</span> Y6
|3=<span style="color:red">(upper EL5166, IN-)</span> Z
|4=<span style="color:orange">(GND)</span> Y7
|5=<span style="color:orange">(GND)</span> Y5
|6=<span style="color:orange">(GND)</span> E#
|7=VEE
|8=GND
|9=S2 <span style="color:green">(FX2 PA3)</span>
|10=S1 <span style="color:green">(FX2 PA2)</span>
|11=S0 <span style="color:green">(FX2 PA1)</span>
|12=Y3
|13=Y0
|14=Y1
|15=Y2
|16=VCC
}}
</td><td>
{{chip_16pin
|1=<span style="color:orange">(GND)</span> Y4
|2=<span style="color:orange">(GND)</span> Y6
|3=<span style="color:red">(lower EL5166, IN-)</span> Z
|4=<span style="color:orange">(GND)</span> Y7
|5=<span style="color:orange">(GND)</span> Y5
|6=<span style="color:orange">(GND)</span> E#
|7=VEE
|8=GND
|9=S2 <span style="color:darkcyan">(FX2 PA6)</span>
|10=S1 <span style="color:darkcyan">(FX2 PA5)</span>
|11=S0 <span style="color:darkcyan">(FX2 PA4)</span>
|12=Y3
|13=Y0
|14=Y1
|15=Y2
|16=VCC
}}
</td></tr></table>
</small>
 
{| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable"
|-
!S2
!S1
!S0
!74HC4051D Mux
!VDIVs (vendor software)
|-
| 0 || 0 || 0 || Y0 to Z || 200mV
|-
| 0 || 0 || 1 || Y1 to Z || 500mV
|-
| 0 || 1 || 0 || Y2 to Z || 5V, 2V, 1V
|-
| 0 || 1 || 1 || Y3 to Z || 100mV, 50mV, 20mV
|}
 
'''Intersil EL5166 (both) pinout''':
<small>
{{chip_8pin
|1=NC
|2=<span style="color:red">(upper/lower 74HC4051D, Z)</span> IN-
|3=<span style="color:blue">(AD8065, IN-/VOUT)</span> IN+
|4=VS-
|5=NC
|6=OUT
|7=VS+
|8=CE#
}}
</small>
 
'''Microchip 24LC02BI (both) pinout''':
<small>
{{chip_8pin
|1=<span style="color:orange">(Low, but not GND)</span> A0
|2=<span style="color:orange">(GND)</span> A1
|3=<span style="color:orange">(GND)</span> A2
|4=VSS
|5=SDA <span style="color:purple">(FX2 SDA)</span>
|6=SCL <span style="color:purple">(FX2 SCL)</span>
|7=WP <span style="color:orange">(GND)</span>
|8=VCC
}}
</small>
 
'''Analog Devices ADS9288 pinout''':
{| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable"
|-
!AD9288 pins
!Description
 
|-
| S1, S2
| S1 depends on FX2 PA7 (see below), S2 is tied to GND.
|-
| DFS
| Tied to GND. Data format select = "offset binary" (not "twos complement").
|-
| A<sub>IN</sub>A, A<sub>IN</sub>B
| Analog input channels.
 
|}
 
'''Cypress FX2 pinout''':
{| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable"
|-
!FX2&nbsp;pins
!Description
 
|-
| CTL0
| Connected to AD9288 ENC<sub>A</sub> and ENC<sub>B</sub> and FX2 IFCLK.
|-
| PB0-PB7
| Connected to AD9288 D0<sub>A</sub>-D7<sub>A</sub> and SN74LVC16245A 1A1-1A8.
|-
| PD0-PD7
| Connected to AD9288 D0<sub>B</sub>-D7<sub>B</sub> and SN74LVC16245A 2A1-2A8.
|-
| PA7
| Connected to the SN74LVC16245A's 1OE# and 2OE# pins (both 8bit groups share the signal) as well as 1DIR and 2DIR. Also connected to the ADC's S1 pin (via two discrete inverters with R37, Q2, R13, Q1).
 
This means PA7 selects between digital (low) and analog (high) data paths, data is always at FX2 ports PB and PD, and either carries 16 digital channels, or two eight bit analog channels.
 
The benefit of "variable DIR" in the SN74LVC16245A is questionable, since it shares the signal with OE# and for high levels the output is high-Z anyway -- so the ADC output is ''not'' routed to digital pins when PA7 is high, not tying DIR to a fixed level is pointless(?)
 
{| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable"
|-
!PA7
!Description
|-
| 1 || Selects scope mode. The ADC's S1 pin is high, which means "Normal operation, data align disabled". The SN74LVC16245A's OE# pins are high ("don't enable output", DIR state is irrelevant).
|-
| 0 || Selects LA mode. The ADC's S1 pin is low, which means "Standby both channels A and B". The SN74LVC16245A's OE# pins are low ("output enable") and the DIR pins are low ("B data to A bus", i.e. data direction is from LA connector to FX2).
|}
 
|-
| PC2
| 1kHz probe calibration pin.
|-
| PC0/PC1
| Dual-color (red/green) LED.
 
{| border="0" style="font-size: smaller" class="alternategrey sortable sigroktable"
|-
!PC1
!PC0
!LED
|-
| 0 || 0 || ?
|-
| 0 || 1 || green
|-
| 1 || 0 || red
|-
| 1 || 1 || off
|}
 
|}


== Photos ==
== Photos ==
Line 59: Line 237:


== Protocol ==
== Protocol ==
See [[Hantek 6022BE#Protocol]].


When the "H/P" button is '''not''' pressed, the device can be used as 8-channel 24MHz logic analyzer via [[fx2lafw]] out of the box (using the fx2lafw protocol).
When the "H/P" button is '''not''' pressed, the device can be used as 8-channel 24MHz logic analyzer via [[fx2lafw]] out of the box (using the fx2lafw protocol).
== Firmware ==
See [[Hantek 6022BE#Firmware]].


== Resources ==
== Resources ==


* [http://1drv.ms/1gWOsUF Vendor software and manuals]
* [http://1drv.ms/1gWOsUF Vendor software and manuals]
* [http://geek-mag.com/posts/255290/ geek-mag.com: The overview of an USB oscillograph Hantek DSO-6022BL with the logical analyzer and gikporny]


[[Category:Device]]
[[Category:Device]]

Revision as of 00:43, 10 April 2017

Hantek 6022BL
Hantek 6022be mugshot.png
Status supported
Source code hantek-6xxx
Channels 2
Samplerate 48MHz
Analog bandwidth 20MHz
Vertical resolution 8bit
Triggers none (SW-only)
Input impedance 1MΩ‖25pF
Memory none
Display none
Connectivity USB
Website hantek.com

The Hantek 6022BL is a USB-based, 2-channel oscilloscope with an analog bandwidth of 20MS/s and 48MS/s sampling rate, and an 8-/16-channel logic analyzer with 24MHz sampling rate.

The device can either be used as oscilloscope or as logic analyzer, but not both at the same time. I.e., it is not a mixed-signal-oscilloscope (MSO).

Currently only the 8-channel logic analyzer mode is supported.

See Hantek 6022BL/Info for more details (such as lsusb -v output) about the device.

Hardware

The device has a "H/P" button. Depending on whether or not it's pressed it comes up with different USB VID/PIDs:

NXP 74HC4051D (upper/lower, CH1/CH2) pinout:

Y4 1-   O -16 VCC
(GND) Y6 2- -15 Y2
(upper EL5166, IN-) Z 3- -14 Y1
(GND) Y7 4- -13 Y0
(GND) Y5 5- -12 Y3
(GND) E# 6- -11 S0 (FX2 PA1)
VEE 7- -10 S1 (FX2 PA2)
GND 8- -9 S2 (FX2 PA3)
(GND) Y4 1-   O -16 VCC
(GND) Y6 2- -15 Y2
(lower EL5166, IN-) Z 3- -14 Y1
(GND) Y7 4- -13 Y0
(GND) Y5 5- -12 Y3
(GND) E# 6- -11 S0 (FX2 PA4)
VEE 7- -10 S1 (FX2 PA5)
GND 8- -9 S2 (FX2 PA6)

S2 S1 S0 74HC4051D Mux VDIVs (vendor software)
0 0 0 Y0 to Z 200mV
0 0 1 Y1 to Z 500mV
0 1 0 Y2 to Z 5V, 2V, 1V
0 1 1 Y3 to Z 100mV, 50mV, 20mV

Intersil EL5166 (both) pinout:

NC 1-   O -8 CE#
(upper/lower 74HC4051D, Z) IN- 2- -7 VS+
(AD8065, IN-/VOUT) IN+ 3- -6 OUT
VS- 4- -5 NC

Microchip 24LC02BI (both) pinout:

(Low, but not GND) A0 1-   O -8 VCC
(GND) A1 2- -7 WP (GND)
(GND) A2 3- -6 SCL (FX2 SCL)
VSS 4- -5 SDA (FX2 SDA)

Analog Devices ADS9288 pinout:

AD9288 pins Description
S1, S2 S1 depends on FX2 PA7 (see below), S2 is tied to GND.
DFS Tied to GND. Data format select = "offset binary" (not "twos complement").
AINA, AINB Analog input channels.

Cypress FX2 pinout:

FX2 pins Description
CTL0 Connected to AD9288 ENCA and ENCB and FX2 IFCLK.
PB0-PB7 Connected to AD9288 D0A-D7A and SN74LVC16245A 1A1-1A8.
PD0-PD7 Connected to AD9288 D0B-D7B and SN74LVC16245A 2A1-2A8.
PA7 Connected to the SN74LVC16245A's 1OE# and 2OE# pins (both 8bit groups share the signal) as well as 1DIR and 2DIR. Also connected to the ADC's S1 pin (via two discrete inverters with R37, Q2, R13, Q1).

This means PA7 selects between digital (low) and analog (high) data paths, data is always at FX2 ports PB and PD, and either carries 16 digital channels, or two eight bit analog channels.

The benefit of "variable DIR" in the SN74LVC16245A is questionable, since it shares the signal with OE# and for high levels the output is high-Z anyway -- so the ADC output is not routed to digital pins when PA7 is high, not tying DIR to a fixed level is pointless(?)

PA7 Description
1 Selects scope mode. The ADC's S1 pin is high, which means "Normal operation, data align disabled". The SN74LVC16245A's OE# pins are high ("don't enable output", DIR state is irrelevant).
0 Selects LA mode. The ADC's S1 pin is low, which means "Standby both channels A and B". The SN74LVC16245A's OE# pins are low ("output enable") and the DIR pins are low ("B data to A bus", i.e. data direction is from LA connector to FX2).
PC2 1kHz probe calibration pin.
PC0/PC1 Dual-color (red/green) LED.
PC1 PC0 LED
0 0 ?
0 1 green
1 0 red
1 1 off

Photos

Protocol

See Hantek 6022BE#Protocol.

When the "H/P" button is not pressed, the device can be used as 8-channel 24MHz logic analyzer via fx2lafw out of the box (using the fx2lafw protocol).

Firmware

See Hantek 6022BE#Firmware.

Resources