Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,12 @@ src_libdrivers_la_SOURCES += \
src/hardware/hantek-dso/protocol.c \
src/hardware/hantek-dso/api.c
endif
if HW_HANTEK_DSO2XXX
src_libdrivers_la_SOURCES += \
src/hardware/hantek-dso2xxx/api.c \
src/hardware/hantek-dso2xxx/protocol.c \
src/hardware/hantek-dso2xxx/protocol.h
endif
if HW_HP_3457A
src_libdrivers_la_SOURCES += \
src/hardware/hp-3457a/protocol.h \
Expand Down
1 change: 1 addition & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -341,6 +341,7 @@ SR_DRIVER([Hameg HMO], [hameg-hmo])
SR_DRIVER([Hantek 4032L], [hantek-4032l], [libusb])
SR_DRIVER([Hantek 6xxx], [hantek-6xxx], [libusb])
SR_DRIVER([Hantek DSO], [hantek-dso], [libusb])
SR_DRIVER([Hantek DSO 2xxx], [hantek-dso2xxx], [])
SR_DRIVER([HP 3457A], [hp-3457a])
SR_DRIVER([HP 3478A], [hp-3478a], [libgpib])
SR_DRIVER([hp-59306a], [hp-59306a])
Expand Down
55 changes: 55 additions & 0 deletions src/hardware/hantek-dso2xxx/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# hantek-dso2xxx libsigrok driver

A libsigrok driver for the Hantek DSO2xxx oscilloscope series (DSO2C10,
DSO2C15, DSO2D10, DSO2D15) that receives waveform data over TCP using the
`quick-fetch` firmware patch by phmarek:
https://github.com/phmarek/hantek-dso2000-quick-fetch

Initial contents generated via Claude.AI,
https://claude.ai/share/bcc56b39-53ab-45be-a91d-251cbe64fa98

---

## How it works

The patched firmware (`quick-fetch.so`, `LD_PRELOAD`'d on the scope) listens
on a TCP port. When the user presses `SAVE_TO_USB` the scope freezes the
current waveform and streams a compact binary frame to the connected client.

---

## Prerequisites

1. Install the quick-fetch patch on your scope following the instructions
at https://github.com/phmarek/hantek-dso2000-quick-fetch

2. Use DavidAlfa's USB-networking kernel so the scope appears at (e.g.)
172.31.254.254 via USB networking. Without this, the TCP server is not
reachable.

---


## No configurable acquisition options

All scope settings (timebase, volts/div, coupling, trigger, memory depth)
are configured directly on the instrument front panel. The driver reads
them passively from the binary frame header.

If there's much interest I'll update both the `quick-fetch` patch
and the driver to allow modifying the trigger level, position, etc.

---

## Firmware versions

The quick-fetch patch supports:
3.0.0(220727.00) - 2022-07-27
3.0.0(230327.00) - 2023-03-27
3.0.1(250418.00) - 2025-04-18

---

## License

GPL-3.0-or-later, matching the rest of libsigrok.
Loading