WLAN Sinus Generator

A Sinus (0-40MHz) generator controlable via WLAN, using AD9850 and ESP8266.

Similar projects worth following
I will build a Wlan controlable Sinus Generator (0 - 40 MHz, 1Hz Resolution) using an ESP8266 WLAN Module as MCU and WLAN Bridge and an AD9850 DDS Module.
The Generator will be controlable via an Android app and a computer Program. And it will has an API for writting your own Applications.
The Generator will also have an ADC input, so you can use it as an wireless voltage meter and plotter. The input is rectified so you can use it in combination with the Sinus DDS Generator as a wobbler (so you can create filter curves of your HF filters).
The whole device can be powerder either from a 9V battery or via an DC line (12V Jack).

The problem with "classical" function generator is, that there are rather big and pricey, further they often has difficult control methods and are not able to be controled via a smartphone.

This project should solve these problems: It uses a smartphone or a Web GUI as a control method, which should be easier and faster to use than the classical function generator. Further because we dont need input controls and display, the generator can be small and dont need much energy. Additionally because it uses quite cheap, usual parts, its cheap (under 50$). Another favor is that this generator has an analog input, so it can be used for recording slow voltage changes or to measure filter curves of components. All in all this project could help to make function generators affordable for hobbyist makers and hackers, who needs an cheap and small sinus generator.

Features list:

  • 0 - 50 MHz DDS Sinus Generator with 1 Hz Steps
  • Controlable Amplitude of the Output
  • Wifi controlable via a Website or smartphones apps (maybe even an Programming API for third party applications)
  • Wifi readable ADC input (slow because of rectifing and filtering in the input circuit)
  • You can program sequences of frequences and can create sweep outputs
  • With combination of the sweeping Sinus output and an rectified and averaged input you should be able to measure filter curves of HF Parts like Filters or amplifiers
  • You can calibrate the frequency to match the shown freq and the really outputted frequency. That data can be saved in flash storage.
  • a duo-led that can be controled via web, for status infos in own applications.


The first schematic draft of the WLAN Sinus Generator.

Adobe Portable Document Format - 171.43 kB - 08/03/2016 at 18:59


  • 1 × ESP8266 MCU and Wlan-Bridge
  • 1 × AD9850 Module DDS Sinus Generator

  • Version 1.1 of Android app released!

    Jan B.08/16/2016 at 20:22 0 comments

    Hello everybody,

    today I have released the Version 1.1 of the android app which you can use to control the WLAN Sinus Generator. It works on all android phones with Android 4.0 (Ice Cream Sandwich) and needs no permissions except Internet communication. You can find source (its under Apache License 2.0) and APKs here on Github.


    • Added Sweep Function
    • Make PWM Sliders working
    • Clean Up Code
    • Added Changelog and Credits Dialog
    • Move Fragment titles into Action Bar
    • New Logo
    • Added error messages and exception handling
    • Now can update PWM from EditBoxes
    • Show Server Response, also in case of API_FAIL response

    Screenshots (taken on a Moto G (1st gen.) with CM13 (Android 6.0):

  • Sweeping is working now!

    Jan B.08/11/2016 at 20:01 0 comments

    Today I got the sweeping output working. I thought that the ESP8266 would be to slow for handling both WLAN/Web and changing the frequency, but it works awesome. (I think I have worked too much with these slow 8-bit arduinos :) ). I have finally uploaded the code for the ESP8266 here on Github . Its not so good documentated and not very pretty, but it works... I will clean up it in the next few days... If you want to test it, consult the schematic draft in the download sections for the wiring between AD9850 and ESP8266. In the config.h of the ESP8266 code you has to change the ssid and password to match your network.

    Now im working on a nice frontend in the android app, I think this will be ready the next few days. Then I also want to test if my plan to use the sinus generator and the ADC of ESP8266 for measure filter curves, works...

  • First Screenshots of the Android App

    Jan B.08/09/2016 at 21:27 0 comments

    The last few days I worked on the android apps. With it you can control the frequency and phase output of the DDS Generator. In the Tool section you can activate or deactivate both leds.

    The Code is licensed under the Apache License 2.0. You can find the source here: Github . Under Releases you can find an signed APK of the app.

    Here are some screenshots:

  • First Test

    Jan B.08/03/2016 at 19:05 0 comments

    First Test

    Today I have build a working "proof-of-concept".

    After I thought I had broken the AD9850 module, I found out that I only forgot to connect D0 and D1 to 5V line... Now the AD9850 is controllable from the ESP8266 via WLAN.

    Now the ESP8266 connects to my WiFi and you can change the frequency via an very quick and dirty webpage... That you can see here:

    When you type in your desired frequency, the ESP8266 will process it and changes the output frequency of the AD9850.

    In the files you will find a early schematic draft that I used as basis for my experimentation setup.

    Here can you see an video of my experimentation setup and some little tests of changing the frequency:

    The next few days I will try to improve the setup and the webpage, also I want to start writing an Android app for controling the DDS. Furthermore I will test some HF amplifier circuits to improve the output amplitude. And last I will try to implementate the "wobble" function, so that you can plot filter curves of components like HF-Filters.

View all 4 project logs

Enjoy this project?



mai wrote 09/18/2018 at 13:45 point

Your project is awesome.

I was building mine using an ESP32, keypad and LCD.

As soon as I saw yours, I ditched mine, and will build one like yours. I salvaged the AD9850 from my project. The rest can stay for another project.

I hope the software is not too buggy.

Thanks for the nice project.

  Are you sure? yes | no

biemster wrote 07/27/2018 at 19:28 point

Seeing you are interested in Ham Radio as well, have you considered adding an SWR bridge to turn this into an antenna analyzer? Like K6BEZ did here:

Awesome work nonetheless, this (+ SWR bridge) will be my next project and will show up on too when I start it.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates