The ESP32 counts the number of pulses during a fixed time frame. The device is controlled via USB over a GUI that runs on a PC. The ESP32 program is developt with an Arduino IDE. The GUI is written in python and uses PyQT5.
The ESP32 program is based on the ESP Frequency Meter by Rui Viano and Gustavo Murta or en. Thanks to PyShine for the installer instruction and the tutorials.
The frequency meter developt by Rui Viana Gustavo Murta has a lot of interesting features. It has a high accuracy from 1 Hz to 40 MHz and includes an oscillator to test the device. My goal was to include a level converter for the 5V pulses and to develop a grafical user interface to control and store the measurement. The ESP32 counter is serial connected with a rate of 115000 baud via USB. The GUI controls:
selecting | open | close the port
start and stop the measurement | clearing the display
setting the frequency of the oscillator
setting the timebase for the counter
self-check
the build-in functions of pyqtgraph have a lot of options.
First Usage
After installation the software on the PC and connecting the ESP32 via USB. You can run the first test:
Connect input and output of the divice with a BNC cable.
Select the COM port and open it.
Select the timebase or 100ms is default.
Hit start.
Check Testlauf [on] and the oscillator will increment the output frequency.
To adjust the display hit [clear Display].
After a while hit [stop].
With pressing the right mousebutton over the display you can select from a lot of options thar are included.
Parts
ESP32-S WiFi Bluetooth Development Board 0,96 OLED Display WROOM 32 NodeMCU