From sigrok
Jump to: navigation, search
MHINSTEK MHS-5200A persp.jpg
Status planned
Frequency (user) 0.01Hz-6MHz/12MHz/20MHz/25Hz
Waveforms sine/square/triangle/sawtooth/arbitrary, TTL rect
Amplitude 20 V (open)/10 V (50 Ohm) (adjustable)
Connectivity USB to serial converter (internal)

The MHS-5200A-06M/12M/20M/25M is a Dual-Channel standalone function generator. It can be controlled with the push-buttons and the rotary encoder on the front panel, or via a USB interface.

Amplitude and offset voltage can be controlled programmatically.

This device can be bought on ebay or aliexpress from various sellers for 50-90€.

Hardware (Q3 2016 model)

  • FPGA: Lattice MACH XO2 1200HC TQFP-100
  • Clock: unknown
  • STM8S005K6 8-bit MCU with 32 Kbytes Flash, 16 MHz CPU, integrated 128 byte EEPROM STM8S005K6 product page
  • Output Stage:
    • R2R-Ladder 12bit DAC
    • Signal/DC-Offset sum: AD8017 Op-Amp
    • Variable Gain Amplifier: AD603A
    • Power Amplifier: AD812A
    • Output switch relais: 0db/-20db/off
  • 24LC512 I2C EEPROM, 512Kb (64K x 8) for Arbitrary Waveform Data
  • 74AHC14D Hex inverting Schmitt trigger

According to the specs, the hardware should run at 200MS/s, but measurement shows it only runs at ~175MS/s.



The generator has an internal PL2303 USB-to-serial converter. The VID/PID is 067b:2303. Communication parameters are 57600 bps, 8N1.


The generator uses a plain text protocol for communication.

Each command (set or read) starts with ':' and has to be terminated with a newline, ASCII code 0x0a (but CRLF, i.e. 0x0d 0x0a, is also accepted).

Set commands are acknowledged with an 'ok' response, read commands echo the request followed by the parameter value.