COMPARISON · OSCILLOSCOPES
Rigol DS1054Z vs Hantek DSO5102P for Arduino
Rigol DS1054Z vs Hantek DSO5102P for Arduino work comes down to how many pins you need to watch at once. The Rigol has four inputs at 50 MHz; the Hantek has two at 100 MHz, with built-in math, FFT, 32 automatic measurements and a pulse-width trigger, but a short record length. Arduino signals are slow enough for either scope's bandwidth, so inputs and memory decide this one more than megahertz.
By the OhmSavvy Research Team ·
Disclosure: OhmSavvy earns a commission from qualifying Amazon purchases made through these links, at no extra cost to you. How we're funded.

Rigol DS1054Z
4.8★★★★★The default beginner oscilloscope recommendation for years, and still worth it.

Hantek DSO5102P
4.2★★★★☆A plain two-channel, 100 MHz mains benchtop with a 7-inch screen, for straightforward bench measurements.
Specs side by side
| Rigol DS1054Z | Hantek DSO5102P | |
|---|---|---|
| Rating | 4.8★★★★★ | 4.2★★★★☆ |
| Bandwidth | 50MHz | 100MHz |
| Channels | 4 | 2 |
| Sample rate | 1 GSa/s | 1 GSa/s (real-time) |
| Best for | Hobbyists, students, general electronics | Basic two-channel bench work on mains power |
| Sample rate, all channels on | 250 MSa/s per channel (3–4 channels) | Per-channel figure not stated in our data |
| Display | 7-inch, 800 × 480 | 7-inch, 800 × 480 |
| Record length | 12 Mpts standard, 24 Mpts optional (Rigol sources differ) | 24K (datasheet) or 40K (product page) |
| Serial decoding | Parallel, RS232/UART, I2C, SPI; listed as an option | None listed |
| OhmSavvy assessment | Hands-on Tested badge | Desk research from Hantek's specs |
Specs checked against manufacturer documentation and official Amazon listings. Rigol DS1054Z is hands-on tested by OhmSavvy; the Hantek DSO5102P assessment is desk research. How we research.
Key differences
- →Inputs: four on the DS1054Z, two on the DSO5102P. For SPI and multi-pin timing, this is the deciding spec.
- →Bandwidth: 100 MHz on the Hantek against 50 MHz on the Rigol. Both are far above what a 16 MHz Arduino Uno produces.
- →Both quote 1 GSa/s. Rigol's figure is for one channel and falls to 250 MSa/s per channel with three or four on; Hantek quotes 1 GSa/s real-time without a per-channel breakdown in our data.
- →Hantek lists a record length of 24K points in its datasheet and 40K on its product page; the sources disagree, and either is short for long bus captures. Rigol lists millions of points for the DS1054Z, though its own sources differ too: 12 Mpts standard with 24 Mpts optional on the product page, 24 Mpts in the 2020 datasheet.
- →Rigol's DS1000Z datasheet lists parallel, RS232/UART, I2C and SPI decoding, and its product page describes bus trigger and decode as an option for the series.
- →Hantek lists edge, pulse-width, video, slope and overtime triggers, math, FFT, 32 automatic measurements and pass/fail testing, but no serial decoding, generator or logic channels.
- →The DS1054Z carries our Hands-on Tested badge and a 4.8 OhmSavvy rating; the DSO5102P is rated 4.2 from desk research.
Spec by spec
Each maker's published figures, charted. Where a figure is missing from one side, it is left out rather than estimated.
Bars use a logarithmic scale: each step is ten times the last.
The last chart explains why record length matters more on an Arduino bench than the bandwidth headline. To show a whole 9600-baud UART byte, the Hantek has to slow its sampling well below 1 GSa/s, and to show a 20-byte message (about 21 ms) its 24K to 40K points work out to roughly 1.1 to 1.9 MSa/s. That is still over a hundred samples per UART bit, so slow serial is fine; the squeeze comes with long bursts of fast SPI. Rigol lists 12 Mpts standard for the DS1054Z on its product page (24 Mpts as an option; the 2020 datasheet says 24 Mpts), hundreds of times the Hantek's record, so it can hold that 21 ms message at well over 100 MSa/s. Background on these figures: what GSa/s means and what oscilloscope bandwidth is.
For Arduino projects: which pins each scope can show you
A classic Arduino Uno runs from a 16 MHz clock, and the signals on its header are slower still. By the usual rule of buying three to five times the signal frequency, the DS1054Z is comfortable up to roughly 10 to 17 MHz and the DSO5102P up to roughly 20 to 33 MHz. Square-wave edges carry harmonics well above the fundamental, so faster is never wasted, but typical Arduino buses fit inside both scopes' range:
| Arduino signal | Typical speed | DS1054Z | DSO5102P |
|---|---|---|---|
| analogWrite PWM on an Uno | about 490 Hz (980 Hz on pins 5 and 6) | Yes; up to 4 outputs at once | Yes; 2 at once, with automatic duty-cycle readings |
| UART / Serial | 9600 to 115200 baud | TX, RX and a trigger pin together | TX and RX together |
| I2C sensors and displays | 100 kHz or 400 kHz | SDA, SCL plus an interrupt pin | SDA and SCL: exactly two inputs |
| SPI (SD cards, TFTs, radios) | Up to 8 MHz on an Uno | All four lines in one capture | Two lines per capture |
| Faster 32-bit boards | Clocks and SPI can reach tens of MHz | Near or past its comfortable ceiling | More headroom at 100 MHz |
Rigol DS1054Z: the multi-pin view
Most Arduino bugs are timing bugs between pins: a chip select that rises one clock too early, a stepper driver that misses steps because direction changes too close to a step pulse, an interrupt that fires before the sensor has finished its I2C reply. Seeing those means seeing three or four pins in one capture, and that is what the DS1054Z is for. With all four inputs on it still samples each at 250 MSa/s, which is over 30 samples per cycle of an 8 MHz SPI clock. Its limits for Arduino work are the menus, which take time to learn, and the 50 MHz ceiling, which only starts to matter if you move to much faster boards. More in our DS1054Z review.
Hantek DSO5102P: two pins, measured for you
The DSO5102P suits sketches where two pins tell the whole story. I2C needs exactly two inputs, and a UART link needs at most two. Its 32 automatic measurements save cursor work when you are tuning PWM frequency and duty cycle, the pulse-width trigger can wait for a pulse shorter or longer than you expect (a handy way to catch a missed servo pulse), and FFT shows noise from a motor or a switching regulator on an analog input. What it can't do is show SPI's four lines together, decode any bus into bytes, or keep a high sample rate across a long transaction, given its 24K to 40K point record.
Count wires before megahertz
Relay modules and mains
Which should you buy?
| Your Arduino work | Pick | Why, from the specs |
|---|---|---|
| SD cards, TFT screens or radios over SPI | Rigol DS1054Z | Four inputs cover SCK, MOSI, MISO and CS |
| Stepper and motor-driver timing | Rigol DS1054Z | Step, direction and enable on one screen |
| I2C sensors and OLED displays | Either | Both cover SDA and SCL; only Rigol lists I2C decoding (an option per its product page) |
| Tuning PWM for LEDs, servos or motors | Hantek DSO5102P | Automatic measurements and a pulse-width trigger |
| Long serial or SPI transactions at a high sample rate | Rigol DS1054Z | Hantek's record is only 24K–40K points |
| Learning to use a scope for the first time | Rigol DS1054Z | Hands-on Tested badge and a large user community |
| Moving to fast 32-bit boards | Hantek DSO5102P | 100 MHz leaves more headroom than 50 MHz |
The DSO5102P has no full OhmSavvy review yet; it sits in our beginner oscilloscope roundup. If you are still deciding what matters, start with the oscilloscope buying guide.
More scope comparisons
- Rigol DS1054Z vs Siglent SDS1202X-E
- Hantek DSO5102P vs Rigol DHO804
- Siglent SDS1104X-E vs Hantek DSO5102P
- Siglent SDS1104X-E vs Rigol DHO802 for Arduino
- Rigol DS1054Z vs Siglent SDS1104X-E
- Rigol DS1054Z vs Hantek DSO2D10
- Rigol DS1054Z vs FNIRSI DSO152
- Rigol DS1054Z vs OWON SDS1102
- Rigol DS1054Z vs OWON VDS1022I
- Rigol DHO802 vs Rigol DS1054Z
- Rigol DHO804 vs Rigol DS1054Z
- Rigol DHO804 vs Siglent SDS1104X-E
- Rigol DHO804 vs Siglent SDS1202X-E
- Siglent SDS1202X-E vs Hantek DSO2D10
- Siglent SDS1104X-E vs Siglent SDS1202X-E
- Hantek DSO2D10 vs Siglent SDS1104X-E
- Rigol DHO804 vs Hantek DSO2D10
- Rigol DHO802 vs Hantek DSO2D10
- Rigol DHO804 vs FNIRSI 1014D
- Rigol DHO802 vs FNIRSI DSO152
- Rigol DS1102Z-E vs Siglent SDS1102CML+
- FNIRSI DSO152 vs Hantek DSO2D10
- FNIRSI DSO152 vs Siglent SDS1104X-E
- FNIRSI DSO-TC3 vs FNIRSI DSO152
- FNIRSI 1014D vs FNIRSI DSO-TC3
- Hantek 2D72 vs FNIRSI 2C53T
- PicoScope 2204A vs Digilent Analog Discovery 3
Choose the Rigol DS1054Z if…
- ✓Your sketches use SPI, or you want to see a sensor's clock, data and chip-select pins in one capture
- ✓You debug timing between several pins, such as a stepper driver's step, direction and enable lines
- ✓You want the pick in this pair that carries our Hands-on Tested badge
- ✓You'd like strong community support and documentation to lean on while you learn
Choose the Hantek DSO5102P if…
- ✓Two pins at a time covers you: I2C's SDA and SCL, a UART's TX and RX, or one PWM output and its load
- ✓You want automatic measurements for PWM frequency and duty cycle, plus math and FFT
- ✓You move on to faster 32-bit boards and want bandwidth headroom for their clocks
- ✓You buy it clearly cheaper than the DS1054Z on the day
The bottom line
For most Arduino benches the Rigol DS1054Z is the better buy: four inputs show SPI and multi-pin timing in one capture, 50 MHz is ample for an Uno, and it carries our Hands-on Tested badge. The Hantek DSO5102P makes sense if your projects are mostly I2C, serial and PWM on two pins, you value its automatic measurements and pulse-width trigger, and it costs clearly less when you buy.
Frequently asked questions
Is 50 MHz enough for Arduino, or do I need the Hantek's 100 MHz?+
50 MHz is enough for a classic Arduino. An Uno runs at 16 MHz and its SPI clock tops out at 8 MHz, inside the DS1054Z's comfortable range of roughly 10 to 17 MHz. The DSO5102P's 100 MHz becomes useful on faster 32-bit boards whose clocks and SPI buses run at tens of megahertz.
Can either scope decode Arduino serial, I2C or SPI?+
Hantek lists no serial decoding for the DSO5102P, so you would read bits from the waveform by eye. Rigol's DS1000Z datasheet lists parallel, RS232/UART, I2C and SPI decoding for the DS1054Z, but its product page describes bus trigger and decode as an option, so check what is enabled on the unit you buy. Either way, both scopes show the raw signals, which is enough to spot wrong timing or missing pulses.
How many channels do I need to debug SPI on an Arduino?+
Four to see the whole bus: clock, MOSI, MISO and chip select. The DS1054Z can show all four in one capture. On the two-input DSO5102P you would probe two lines at a time, typically clock with one data line, and repeat the capture for the others.
Is the DSO5102P's short memory a problem for Arduino work?+
Sometimes. Hantek lists 24K points in its datasheet and 40K on its product page. That holds 24 to 40 microseconds at 1 GSa/s, so longer captures force a lower sample rate. Slow UART and PWM still look fine, but long bursts of fast SPI or I2C traffic may be under-sampled.
Which one is hands-on tested?+
The Rigol DS1054Z carries our Hands-on Tested badge. The Hantek DSO5102P assessment is desk research from Hantek's datasheet and product page, which disagree on record length, and it has no full OhmSavvy review yet. Treat its verdict here as a spec-sheet comparison.
Related


