FG085 waveform generator kit tested

(Published on 22/06/2026 )

This very old, but for its time very innovative kit from JYE Tech has achieved a certain cult status. It's still available to buy, so we built and tested one.

An introduction to the FG085 from JYE Tech


A brief history
The FG085 kit was developed in 2015 by the Chinese company JYE Tech and was the first affordable DDS function generator for hobbyists and students. DDS stands for 'Direct Digital Synthesis'. With this technique, analogue signals are generated step by step by a digital processor which retrieves the amplitude data for each step from a code table and provides this data to a DAC. The FG085 became world-famous when Elektor magazine published in 2016 a comprehensive build and user review of it on all its international websites and began selling the kit via the 'Elektor Store'.

An innovative design
The FG085 was an innovative design in several respects. JYE Tech chose to have all the small components mounted on the circuit board in SMD form. The builder only had to fit and solder the larger components themselves. At 200 kHz, the frequency range was not spectacular. What was spectacular, however, were the following features:
       - Seven different waveforms.
       - Fully adjustable sweep function.
       - Fully adjustable servo pulses.
       - Adjustable duty cycle.
       - The ability to define your own waveforms.
       - Fully push-button control.
       - Trigger input and sync output.
       - Amplitude control via an X9C102 digital potentiometer.
At the time, with the only competition being analogue function generator kits based on an ICL8038 or an XR2206, this was truly revolutionary.

Manufacturer, suppliers and price
The kit is marketed by the well-known Chinese firm JYE Tech. The company specialises in designing (very) inexpensive kits for electronic measuring equipment aimed at students and hobbyists. The FG085 is currently still available from various sellers on Amazon for € 48.99, including postage and two-day delivery. On the manufacturer's website, the kit is priced at € 46.95.


Contents of the kit
All components are supplied in a plastic bag. Upon opening, you will find the following items:
       - A small bag containing parts to be soldered and assembly materials.
       - Two plastic panels forming the housing.
       - The printed circuit board, pre-assembled with SMD components.
       - A ready-to-use display circuit board.
       - A mains power supply, 15 Vdc ~ 1 A
       - A short cable, BNC to 2 x crocodile clips.

FG085-waveform-generator-kit-tested-01 (© 2026 Jos Verstraten)
The contents of the kit. (© 2026 Jos Verstraten)

The components supplied
The photo below shows all the parts contained in the plastic bag. Apart from the 21 push-buttons, you will find just five electrolytic capacitors, an encoder and a few connectors and PCB headers.

FG085-waveform-generator-kit-tested-02 (© 2026 Jos Verstraten)
The components to be soldered in the kit. (© 2026 Jos Verstraten)

The assembly instructions
These consist of just a single A4 sheet, with a 'Quick Use Guide' on one side and the 'Assembly Guide' on the other. As can be seen from the copy below, the 'Assembly Guide' contains only a very brief description of the assembly process. Furthermore, there is some ambiguity in this, which has resulted in an unusable first generator. We will return to this later in this article.

FG085-waveform-generator-kit-tested-03 (© 2026 Jos Verstraten)
The very brief assembly instructions for the FG085.
(© 2026 Jos Verstraten)

A comprehensive user guide
The JYE Tech website features a link to a comprehensive user guide. We have conveniently combined this documentation with the 'Quick Use Guide', the 'Assembly Guide' and the complete schematic into a single large PDF file, which you can download from our Google Drive cloud:

The circuit board
The circuit board measures 15.5 cm by 5.5 cm and already contains a large number of components, including no fewer than eight chips. On the left, you can see the area where sixteen push-buttons are to be fitted.

FG085-waveform-generator-kit-tested-04 (© 2026 Jos Verstraten)
The circuit board for the FG085. (© 2026 Jos Verstraten)

The specifications
According to the manufacturer the FG085 meets the following specifications:
       - Sine wave frequency range: 1 Hz ~ 200 kHz
       - Frequency range for other waveforms: 1 Hz ~ 10 kHz (???)
       - Frequency setting resolution: 1 Hz
       - Frequency deviation: 0.1490 Hz max.
       - Signal peak-to-peak value: 0.1 V to 10 V
       - Voltage setting resolution: 0.1 V
       - Offset range: -5 V to +5 V
       - Offset setting resolution: 0.1 V
       - Sample rate: 2.5 MSa/s max.
       - Sample memory: 256 bytes 
       - Sample resolution: 8 bit
       - Trigger input 'H': 3.5 V min.
       - Trigger input 'L': 1.5 V max.
       - Sync output 'H': 4.5 V min.
       - Sync output 'L': 0.7 V max.
       - Supply voltage: 14 Vdc
       - Supply current: 150 mA max.
       - Dimensions: 155 mm x 55 mm x 40 mm
       - Weight: 135 g
The frequency range of 10 kHz for non-sinusoidal signals is, of course, a bit odd. A mistake in the manual?

The end result
The photo below shows the end result of this kit: a compact device measuring 155 mm x 55 mm x 40 mm with an attractive black front panel and 22 buttons for operating it. There is only one BNC connector. If you wish to use the sync and trigger functions mentioned earlier, you will need to fit these yourself in some way.

FG085-waveform-generator-kit-tested-05 (© 2026 Jos Verstraten)
The end result of this kit. (© 2026 Jos Verstraten)

An enclosure for the FG085
For those who have access to a 3D printer, a case design, specially created for this function generator, is available to download at:
FG085-waveform-generator-kit-tested-06 (© 2025 John Bradnam)
The enclosure designed by John Bradnam. (© 2025 John Bradnam)

The electronics of the FG085


The complete circuit diagram
Many thanks to JYE Tech! The complete practical circuit diagram is available on the manufacturer's website as a PDF file. The illustration below shows this diagram, converted to a JPG file. Clicking on the image will enlarge it on screen and allow you to scroll through it.

FG085-waveform-generator-kit-tested-07 (© JYE Tech)
The circuit diagram of the FG085 function generator. (© JYE Tech)

Overview of the circuit diagram
The overall circuit diagram is clearly organised into the following functional groups:
       - ATmega168 microprocessor (CONTROLLER)
       - ATmega48 waveform generator (DDS CORE)
       - R-2R DAC network (DAC)
       - Low-pass filter (LPF)
       - Buffer amplifier (BUFFER)
       - Amplitude adjustment (AMP. ADJUSTMENT)
       - Offset generator (OFFSET GEN.)
       - Analogue output (OUTPUT DRIVER)
       - Output voltage monitoring (OUTPUT MONITOR)
       - Power supply (POWER SUPPLY)
       - Keyboard (KEYPAD)
       - Display (LCD)
       - USB interface (USB IF)

ATmega168 microprocessor (CONTROLLER)
In the top right-hand corner is U5, an ATmega168. This handles:
       - Keyboard scanning.
       - LCD control.
       - The menus.
       - Frequency settings.
       - Communication with the DDS processor.
Signals are sent from this controller to the DDS and amplitude control sections.

ATmega48 waveform generator (DDS CORE)
The actual waveform generator is U6, an ATmega48. This microcontroller generates the waveform entirely in software. The outputs 'DA0' to 'DA7' together form an 8 bit wide data bus.

R-2R DAC network (DAC)
This section is located at the bottom right. Four resistor networks, RN1 to RN4, form an R-2R DAC. Every binary combination on the data lines is converted into a corresponding analogue output voltage. The drawback is that the resolution of the signal generation is 8 bit, meaning there are only 256 discrete voltage values available to reconstruct the signal shape as accurately as possible. This explains why the FG085 can never produce a sine wave as pure as that of modern 14 or 16 bit function generators. As our test will show, this is one of the biggest drawbacks of this kit.

Low-pass filter (LPF)
The DAC is terminated with R9, C12 and C13. The purpose of this low-pass filter is to smooth out the 256 step approximations of the signal waveform as much as possible. 

Buffer amplifier (BUFFER)
Following the filter is U3A, half an LM6172. This is a very fast op-amp with a slew rate of 3,000 V/µs and a bandwidth of 100 MHz. For a design with a maximum frequency of 200 kHz, this is very generously dimensioned. This buffer ensures that the DAC is not loaded directly.

Amplitude adjustment (AMP. ADJUSTMENT)
That was a highly advanced part of the design for its time! Instead of controlling the output voltage with a normal potentiometer, a digital attenuator of the type X9C102 (U4) was chosen. This is commanded from the controller, meaning that the user can also adjust the signal amplitude using the push-buttons in 0.1 V increments.

Offset generator (OFFSET GEN.)
This block uses a TL084 section (U13C). Here, an adjustable DC voltage is generated from the PD6 output of the controller. The signal is superimposed onto this voltage.

Analogue output (OUTPUT DRIVER)
This block utilises a second section of the TL084. In this block, the signals from the 'AMP. ADJUSTMENT' and the 'OFFSET GEN.' are added together. The output signal is routed to the BNC connector via resistor R6. The diodes DN1 (BAV99) protect the amplifier against incorrect connections.

Output voltage monitoring (OUTPUT MONITOR)
This circuit generates the two signals 'PEAK+' and 'PEAK-'. These are sent to the controller, which can use them to monitor the output amplitude and adjust it if necessary.

The power supply (POWER SUPPLY)
The +5 V for the digital electronics is generated using the bridge cell DN1 and a 78L05 regulator U2. We do not find the circuit around the dual-colour LED D10 on our circuit board.
An MC34063 (U1) is used to generate two symmetrical voltages, +V and -V, to power the analogue electronics. This is, of course, necessary to produce an output signal that can be both positive and negative.

The keyboard (KEYPAD)
The 21 control keys, SW2 to SW22, are arranged in an X/Y matrix and control the microcontroller via the 'ROW' and 'COL' output lines.

The display (LCD)
This is a standard 1602A LCD display. Using the POT1 potentiometer, you can adjust the display brightness so that the text appears clearly in white on a light blue background. 

USB interface (USB IF)
U15, a CP2101, handles communication with the mini-USB connector J10. This communication allows you to install any available firmware updates and upload custom signal waveforms.

Building the FG085


The first steps
Mount the following components onto the component side of the PCB:
       - The mini-USB connector (J10).
       - Three 100 μF electrolytic capacitors (C5, C9, C10).
       - Two 10-pin PCB headers (J6, J8).
       - The power supply connector (J2).
       - Two 470 μF electrolytic capacitors (C3, C4)

The other side of the circuit board
Mount the following on the other side of the circuit board:
       - The 16-pin header (push the long pins through the circuit board).
       - Solder the display circuit board to the short pins of this header.
       - The ON/OFF switch (next to C4).

Fitting the twenty push-button switches
There's a nasty catch here! You can solder these switches onto the circuit board in two ways, but only one is correct. This isn't explained very clearly in the manual. We'll clarify this using the photo below. There is a blue rod underneath the push-button, and this has a rectangular notch on just one side. That side of the switches must be mounted facing the left-hand side of the circuit board, in other words, towards the side where you've soldered the power connector. Even if you fit just one switch incorrectly, the whole generator will stop working completely – as we know from our own experience – so please take care!

FG085-waveform-generator-kit-tested-08 (© 2026 Jos Verstraten)
Fitting the twenty push-button switches.
(© 2026 Jos Verstraten)

Final assembly of the PCB
To complete the assembly of the circuit board, you must solder the encoder (SW22) next to C9 on the board.

FG085-waveform-generator-kit-tested-09 (© 2026 Jos Verstraten)
The fully assembled circuit board. (© 2026 Jos Verstraten)

Assembling the 'housing'
Next, mount the BNC connector onto the front panel and solder two wires to the centre pin and the earth ring. Mount the front panel onto the circuit board using four bolts and standoffs, ensuring that the two wires from the BNC connector pass through the holes in the circuit board. Solder these in place and attach the rear panel using four standoffs and four bolts.

FG085-waveform-generator-kit-tested-09A (© 2026 Jos Verstraten)
The fully assembled function generator. (© 2026 Jos Verstraten)

How to use the FG085


Introduction
In this section, we will take a detailed look at all the functions hidden within this little device. As you read this, it will become clear once again why this design was so revolutionary in 2015!

The keyboard
You can deduce the function of all the buttons from the photo below:
  • POWER:
    The ON/OFF switch.
  • ADJ:
    By turning this knob, you can decrease or increase the numerical values on the display.
  • MODE:
    Use this to select one of the four basic functions of the FG085: CW, Sweep, Servo Pos or Servo Run.
  • F/T:
    Press to set the frequency or period.
  • AMP:
    Press to set the signal amplitude.
  • OFS:
    Press to set the signal offset.
  • ESC:
    Correct an entry or go back one step.
  • WF:
    Set the signal waveform to sine, square, rising sawtooth, falling sawtooth, rising staircase, falling stearcase or one of the four user-definable waveforms.
  • Hz, V, Sec, uS:
    Select the unit (1).
  • kHz, mV, ms:
    Select the unit (2).
  • .:
    Set the duty cycle.
  • +/-:
    Select the sweep mode.
FG085-waveform-generator-kit-tested-10 (© JYE Tech)
The front panel of the FG085 function generator. (© JYE Tech)

Setting the basic function
Briefly press the 'MODE' button. Turn the 'ADJ' knob until the desired function appears on the display. Briefly press 'MODE' again.

FG085-waveform-generator-kit-tested-11 (© 2026 Jos Verstraten)
Setting the sweep function. (© 2026 Jos Verstraten)

The 'CW' function
In this function, the FG085 generates a continuous signal, the frequency, amplitude, offset and waveform of which you can easily adjust.
  • Setting the frequency:
    Press 'F/T' briefly, enter the desired frequency using the numeric keypad and confirm by pressing one of the two unit keys (Hz or KHz). By pressing the 'F/T' button twice, you can set the period of the signal instead of the frequency.
  • Setting the amplitude:
    Press the 'AMP' button twice briefly and enter the desired peak-to-peak value of the signal. Confirm by pressing one of the two unit keys (V or mV). 
  • Setting the offset:
    After pressing 'OFS' twice, proceed as described above.

Note on the frequency setting
Due to a strange error in the firmware, you can set the frequency to as high as 999.999 kHz, well above the specified maximum frequency. The generator will still output a signal, but it is completely unusable.

Using the 'ADJ' dial
By turning this dial, you can increase or decrease the three parameters – frequency, amplitude and offset – in steps. Simply press one of the three buttons once. A '>' will appear on the display next to the parameter. You can then continuously adjust the value of the parameter by turning the 'ADJ' dial.
You can easily set the step size for the frequency. Ensure that the '>' is displayed next to the frequency, then enter the desired step size using the numeric keypad, followed by the unit. The step size for adjusting the amplitude and offset is 0.1 V and cannot be changed.

The duty cycle of the square wave
If you select 'SQR' as the waveform, you can set the duty cycle between 1 % and 99 % by pressing the '.' key twice, entering the desired value numerically and confirming by pressing one of the unit keys. After pressing 'ESC', the default data reappears on the display.

FG085-waveform-generator-kit-tested-12 (© 2026 Jos Verstraten)
Setting the duty cycle. (© 2026 Jos Verstraten)

The 'Trigger' option
You can connect a TTL-compatible signal to pin 6 of J6, allowing you to incorporate a trigger option. If this signal is 'H' and you press 'ADJ', this function becomes active. The '>' symbol on the display then changes to '*' and the output signal is suppressed for as long as the trigger signal is 'H'. 

The 'Sweep' function
After selecting this function by pressing 'MODE', turning 'ADJ' and pressing 'MODE' again, you can use the '1', '2', '3' and '4' keys to set the start frequency, stop frequency, sweep time and step frequency respectively.

FG085-waveform-generator-kit-tested-13 (© 2026 Jos Verstraten)
Setting the start frequency of the sweep. (© 2026 Jos Verstraten)

'Normal' or 'Bidirectional' sweep
With 'Normal', a sweep always starts at the start frequency and proceeds to the stop frequency according to the settings. With 'Bidirectional', the sweep moves back and forth. You can select this using the '+/-' push-button. When 'Bidirectional' is selected, a 'B' appears on the display.

Triggering the sweep
You can also enable the 'Trigger' function for the sweep function by pressing 'ADJ'. A sweep will then start on the next negative edge of the trigger signal.

Sync output during sweeping
A TTL-compatible sync signal is available on pin 3 of J6, which goes 'H' for 0.5 ms after a sweep.

The 'Servo Pos' function
A servo pulse is a low-frequency squarewave pulse whose width is adjustable and which controls a variable, such as the speed of a motor or the position of a steering wheel.
This function of the FG085 allows you to generate a servo pulse at a frequency of 50 Hz, where you can set the maximum pulse width using 'F/T' and the amplitude using 'AMP'. You can then sweep the width of this pulse between a minimum and the maximum width.

FG085-waveform-generator-kit-tested-14 (© 2026 Jos Verstraten)
Setting the maximum width of the servo pulse.
(© 2026 Jos Verstraten)

The 'Servo Signal Setting'
In the 'Servo Pos' function, after pressing 'ADJ', you can define eight minimum and maximum values for the servo pulse:
       - SV.PWmin: minimum pulse width.
       - SV.PWmax: maximum pulse width.
       - SV.PWmid: pulse width corresponding to the neutral position.
       - SV.PWine: the step value used to adjust the width with 'F/T'.
       - SV.RunStep: the step value for the servo pulse sweep.
       - SV.RunRate: the duration of a single step in the sweep.
       - SV.Cycle: the duration of a full sweep cycle.
       - SV.AMPmax: the maximum amplitude of the servo pulse.

The 'Servo Run' function
In this function, you can instruct the FG085 to generate the specified servo pulse and perform a sweep, during which the pulse width is swept between the 'SV.PWmin' and the maximum pulse width set via 'F/T'.
If you select this function by turning the 'ADJ' knob, you will first enter the 'Ready' status. Pressing the 'WF' button takes you to the 'Running' status, during which the generator performs the sweep. Pressing the 'WF' button again takes you to the 'Hold' status, during which the sweep stops and the servo pulse retains its current width.

FG085-waveform-generator-kit-tested-15 (© 2026 Jos Verstraten)
The 'Ready' status of the servo pulse. (© 2026 Jos Verstraten)

Testing the JYE Tech FG085


A 1 kHz sine wave with an amplitude of 1 Vpp
We begin our test with this basic signal, and we are very disappointed. The generated sine wave is anything but clean and absolutely does not meet the modern specifications for a function generator! On the right is a magnified view of the sine wave's edge, clearly showing the shortcomings of sampling at just eight bits and converting via a cheap resistive DAC.

FG085-waveform-generator-kit-tested-16 (© 2026 Jos Verstraten)
A 1 kHz sine wave at 1 Vpp. (© 2026 Jos Verstraten)

A sine wave at 1 kHz and 0.1/10.0 Vpp
We are curious to see what the waveform looks like at the lowest voltage of 100 mV and at the highest of 10.0 V. The results are shown in the oscillograms below. As might be expected, the 100 mV signal is completely unusable, whilst the 10 V signal looks almost like an ideal sine wave.

FG085-waveform-generator-kit-tested-17 (© 2026 Jos Verstraten)
A 1 kHz sine wave at 0.1/10.0 Vpp. (© 2026 Jos Verstraten)

The sine wave at 10 Hz and at 200 kHz
We repeat the measurements with 1 Vpp, but this time at the limits of the specified frequency range: 10 Hz and 200 kHz. The results are shown in the oscillograms below. The 200 kHz signal is rather distorted and, measured by current standards, this result is also a clear failure. Note the large error in the peak-to-peak value: the set value of 1.0 V is only 837.5 mV at 200 kHz.

FG085-waveform-generator-kit-tested-18 (© 2026 Jos Verstraten)
Sine waves at 10 Hz and 200 kHz. (© 2026 Jos Verstraten)

Harmonic distortion on the sine wave
Using our Hameg HM8027 digital distortion meter, we measure the total harmonic distortion on the sine wave at various frequencies and amplitudes. These days, values of less than 0.1 % are not uncommon, but the FG085 falls far short of this:
       - 10 Hz ~ 1.0 Vpp: 2.45%
       - 1 kHz ~ 1.0 Vpp: 2.31%
       - 1 kHz ~ 10 Vpp: 1.22%
       - 20 kHz ~ 1.0 Vpp: 2.10 %



As shown in the figure below, the distortion manifests itself as a high-frequency signal with a fairly large amplitude. This distortion therefore introduces a rather significant amount of noise when measuring audio amplifiers!

FG085-waveform-generator-kit-tested-19 (© 2026 Jos Verstraten)
Harmonic distortion at 1 kHz and 1 Vpp.
(© 2026 Jos Verstraten)

The waveform of squarewave signals
According to the manufacturer, the FG085 is specified for signals other than sinusoids up to just 10 kHz, which is far too low a value for any generator. Fortunately, it is no problem to obtain squarewave signals of 200 kHz from the unit. The oscillograms below show the signal waveforms at 10 Hz, 20 kHz and 200 kHz with the amplitude set to 1.0 V. Surprisingly, the FG085 produces an acceptable 200 kHz squarewave! Unfortunately, there is also a fair amount of digital noise on the signal with this waveform.

FG085-waveform-generator-kit-tested-20 (© 2026 Jos Verstraten)
The waveforms of squarewave signals at 10 Hz, 20 kHz and 200 kHz.
(© 2026 Jos Verstraten)

A rectangular pulse with a duty cycle of 1 %
Finally, we generate a very narrow pulse using the FG085 by setting the generator to 'SQR', 1 kHz, 5 Vpp and the duty cycle to 1 %. The result is shown in the oscillogram below.

FG085-waveform-generator-kit-tested-21 (© 2026 Jos Verstraten)
A very narrow spike pulse with a frequency of 1 kHz.
(© 2026 Jos Verstraten)

Our judgement on the JYE Tech FG085


When it was launched in 2015, the FG085 was undoubtedly a revolutionary device. A dream for any hobbyist, which, thanks to its low price, could actually be realised.
At present, however, the signal waveforms it generates fall far below modern standards for the output voltage of a digital function generator. Unless your hobby is building and collecting vintage equipment, we advise against purchasing an FG085, despite its low price of less than fifty euros. For a comparable price of € 47.67, you can buy a modern QLS3600S, a 5 MHz DDS function generator, from Banggood.





(Banggood sponsor ad)
QLS3600S 5 MHz DDS function generator