Arduino Function Generator PCB Design

Job ID: 40017616

Budget: $30 – $250 USD

I need a compact, microcontroller-based function generator that can output clean sine, square, and triangle waves from 1 MHz up to 10 MHz. I am standardising on an Arduino core for the controller logic, and I want a simple 16×2 character LCD on the front panel for menu navigation and live frequency/amplitude read-outs.

What I am looking for is a complete PCB design, ready for fabrication: schematic, routed board files, and all the supporting documents (BOM, Gerber, and pick-and-place). The circuit should include the DDS or equivalent waveform-generation stage, output buffering with adjustable amplitude, user-input buttons or encoder, the LCD interface, and a regulated power section. USB-C for power and firmware updates would be a bonus, but not mandatory if it compromises layout simplicity.

Please make sure the Arduino firmware you supply demonstrates:
• Frequency setting in 1 Hz steps across the full span
• Waveform selection via the front-panel buttons
• Duty-cycle adjustment for square waves
• Non-volatile storage of the last settings

I will test the board on delivery against a scope and spectrum analyser; acceptable jitter and THD figures should meet what an AD9833-class DDS can provide in this frequency band.

Send across the design files (Altium, KiCad, or Eagle—your choice), the compiled .hex and source code, and a short PDF explaining jumper settings and calibration points.