The Ultimate Smartphone VFO ESP32 & Si5351 Wireless Control
A professional-looking VFO for your radio projects without spending a fortune on touchscreen, rotary encoder or complex hardware.
Variable frequency oscillators (VFOs) are commonly used in radio transmitters and receivers, especially superheterodyne receivers, where they allow the adjustment of the operating frequency. They are essential for amateur radio, communication systems, and test electronics. In several of my previous videos I have shown you several different ways to create VFOs which basically differ in the way the generated frequency is displayed. This time I will again describe a way to make such a device, but now significantly different and more practical than the previous ones. However, its manufacture is much simpler and cheaper, because we do not use a display, or even a rotary encoder, which is a basic part of every VFO. All this is achieved thanks to the use of a smartphone in the function of controlling and displaying the generated frequencies. Now the device is extremely simple and consists of only two inexpensive components: an ESP32 microcontroller board, and a Si5351 clock generator modulе which is connected to the ESP32 with only 4 wires. The frequency is generated directly on the CLK0 output of the signal generator. Using a smartphone as a user interface (UI) instead of a classic LCD is a great way to get a graphically rich display without spending money on expensive touchscreens. The ESP32 is perfect for this because it has built-in Wi-Fi and enough muscle to simultaneously run a web server and communicate with the Si5351 via the I2C protocol. At first, the challenge was to achieve that "smooth" rotation effect without lag, so I started with the ESPAsyncWebServer library, which allows control via WebSocket, but several bugs appeared, so I continued with the built-in WiFi.h and WebServer.h libraries, which are quite sufficient for optimal control and operation of the device. Then I gradually created a visually beautiful graphical interface with an LCD display, a central rotary knob, and more functional small buttons with different functions. The code is designed in a way that you can easily change multiple parameters, from bandwidth and frequencies, to changing all the colors in one place. First, let me explain to you the method of starting and all the functions of this hybrid VFO. We turn on the hardware part and on the Smartphone we search for a Wi-Fi network (access point) with the name SI5351_VFO_Final_Complete. Then we connect to that network with the password "vfo12345678". Now in the Web Browser we enter the address 192.168.4.1. By pressing enter, a mask of a professionally made instrument appears on the display. This image actually represents a web interface through which we will control the hardware. A great advantage is the fact that we do not install any application on the smartphone at all, but only open a web page. Thus, there is no danger of introducing malicious software, and the compatibility with different smartphone models is unlimited, taking into account that the only requirement is to activate a web browser. By pressing the bottom of the display, fullscreen mode is activated and now the instrument is ready for operation. The LCD display shows the starting frequency, which is defined in the code. The upper left part of the screen shows the modulation type and the Band, and the lower left shows the step with which the frequency changes. At the very right bottom is the Signal Bar, which in a real receiver or transmitter would display the signal strength. This Bar is connected to GPIO34 and by applying a voltage signal to this input, the display is activated. Below the display is a large round knob centrally placed with which we set the desired frequency.As I said earlier, the knob moves very smoothly and the data is transmitted almost instantly to the device. In reality, during operation, there is no noticeable delay at all. Several small functional buttons follow,. - First, the Amateur band areas are defined, - below them is the STEP button, which is very often used and therefore larger - below STEP are the MODE buttons AM, SSB, USB, FM - and at the bottom are the memory buttons. If we want to memorize a frequency, we first press the number at the top of the display, during which the memory buttons start flashing and by pressing one of them, the frequency is memorized. In case we want to delete all previously memorized frequencies, press the button in the middle of the LCD display. Now let's see how this device works in real conditions. To do this, we will connect a small oscilloscope to the output of the hardware part, on which we will observe the change in frequency and signal shape. And finally a short conclusion. This project proves you don't need expensive touchscreens to have a beautiful, professional-grade interface for your radio projects. By combining an ESP32 and an Si5351 with your smartphone, you can build a highly functional, retro-styled VFO that fits right in your pocket.
Discussion (0 comments)