Realizing that I could not find a ready-made solution, it was decided to assemble my own version.
The microcontroller Atmega328p was taken as a basis(You can use Atmega168).
The actual synthesizer AD9833 , soldered in the form of a ready-made module.
For information output, the choice fell on an OLED display with a resolution of 128×32 ( OLED-0.91-128X32 ). I plan to collect all this in the form factor of a probe.
Control is carried out by 2 buttons and 1 encoder ( EC1101S-5A-F20 ) with a button (I plan to install it at the end).
Button_1 single press: toggle between output channels or turn off generation. The AD9833 generator has 2 channels of signal formation, both frequency and shape, but with output on one leg, switching them on the fly.
Button_1 long press: saves the current values of frequencies by channels and the shape of the output signal .
Button_2 single press: switching the waveform: Sine, Rectangular, Saw.
Button_2 long press: starts a smooth change in frequency from a higher value to a lower value.
Encoder turn left/right: decreases/increases units of Hertz.
Encoder turn with the button pressed to the left/right: decreases/increases hundreds of Hertz.
Encoder pressing the button: increases by a thousand Hertz.
Encoder long press on the button: decreases by one thousand Hertz.
While this is all on the breadboard, the seal is in the making.
View of the future PCB:
Firmware later, looking for bugs.