# Programmable Function Generator ## Description Programmable 1 Hz–1 MHz function generator PCB with sine, triangle, and adjustable-duty square outputs, programmable amplitude up to ±10 V using a DDS-based signal path and protected power rails. ## Project Details - **Owner:** jayanok - **Created:** 7/14/2026 - **Last Updated:** 7/14/2026 - **Visibility:** Public ## Key Components ### D1 — [MBRM120ET3G](https://www.flux.ai/lcsc/mbrm120et3g~vbdw.md) - JLCPCB Part Class: Extended Part - Role: Schottky Rectifier - Manufacturer Name: onsemi(安森美) - Product Info Url: https://lcsc.com/product-detail/Schottky-Barrier-Diodes-SBD_ON_MBRM120ET3G_MBRM120ET3G_C154780.html - Package or Case Code: POWERMITE_L2.0-W1.9-LS3.8-RD - LCSC Part Number: C154780 - Role Details: LT3471 +15V boost rectifier - Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2410010304_onsemi-MBRM120ET3G_C154780.pdf - Manufacturer Part Number: MBRM120ET3G - Part Type: Schottky Barrier Diodes (SBD) **Pins:** - A [pin 2] - C [pin 1] ### D2 — [MBRM120ET3G](https://www.flux.ai/lcsc/mbrm120et3g~vbdw.md) - Role: Schottky Rectifier - Role Details: LT3471 -15V inverting rectifier - LCSC Part Number: C154780 - Part Type: Schottky Barrier Diodes (SBD) - Manufacturer Part Number: MBRM120ET3G - Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2410010304_onsemi-MBRM120ET3G_C154780.pdf - Manufacturer Name: onsemi(安森美) - JLCPCB Part Class: Extended Part - Package or Case Code: POWERMITE_L2.0-W1.9-LS3.8-RD - Product Info Url: https://lcsc.com/product-detail/Schottky-Barrier-Diodes-SBD_ON_MBRM120ET3G_MBRM120ET3G_C154780.html **Pins:** - A [pin 2] - C [pin 1] ### D3 — [TPD4E05U06DQAR](https://www.flux.ai/lcsc/tpd4e05u06dqar~l929.md) - JLCPCB Part Class: Extended Part - Operating Temperature: -40℃~+125℃@(Ta) - Package or Case Code: DFN2510-10_L2.5-W1.0-P0.50-BL - Role: ESD Protection - Datasheet URL: https://www.lcsc.com/datasheet/C138714.pdf?spm=wm.sxq.inf.ggs&utm_source=octopart&lcsc_vid=T1kIXgFeT1NaU1RXQFBbUlUHT1cKU1NXFVBeX1VSTlAxVlNRT1FdVFBSRFVdVDsOAxUeFF5JWA4NEwsWFhMaSQcJGk4%3D - Manufacturer Part Number: TPD4E05U06DQAR - LCSC Part Number: C138714 - Manufacturer Name: TI - Part Type: ESD Protection Devices - Role Details: USB D+/D-/CC1/CC2 low-capacitance ESD array **Pins:** - D1- [pin 2] - D1+ [pin 1] - D2- [pin 5] - D2+ [pin 4] - GND [pin 3] - GND [pin 8] - NC [pin 9] - NC [pin 10] - NC [pin 7] - NC [pin 6] ### J1 — [USB4105-GF-A](https://www.flux.ai/adrian95/usb4105-gf-a~im9.md) - Part Type: USB C - Manufacturer Name: GCT - Symbol Style: parametric-v1 - Manufacturer Name: GCT - Role: USB-C Receptacle - License: https://creativecommons.org/licenses/by/4.0/ - Manufacturer Part Number: USB4105-GF-A - Role Details: USB-C 5V sink input plus USB FS data for STM32 control - Datasheet URL: https://gct.co/files/specs/usb4105-spec.pdf **Pins:** - CC1 [pin A5] - CC2 [pin B5] - DN1 [pin A7] - DN2 [pin B7] - DP1 [pin A6] - DP2 [pin B6] - GND [pin A1_B12] - GND__1 [pin B1_A12] - SBU1 [pin A8] - SBU2 [pin B8] - SHELL_GND [pin SH1] - SHELL_GND__1 [pin SH2] - SHELL_GND__2 [pin SH3] - SHELL_GND__3 [pin SH4] - VBUS [pin A4_B9] - VBUS__1 [pin B4_A9] ### J2 — [CONBNC001](https://www.flux.ai/vasy_skral/conbnc001~qj8.md) - Manufacturer Part Number: CONBNC001 - Role: Output Connector - License: https://creativecommons.org/licenses/by/4.0/ - Part Type: Connector - Manufacturer Name: TE Connectivity Linx - Role Details: BNC analog waveform output, high-Z amplitude calibration assumption - Datasheet URL: https://www.te.com/commerce/DocumentDelivery/DDEController?Action=srchrtrv&DocNm=CONBNC001&DocType=Data+Sheet&DocLang=English&DocFormat=pdf&PartCntxt=CONBNC001 **Pins:** - GND [pin S2] - GND [pin S3] - GND [pin S1] - GND [pin S4] - Signal [pin 1] ### J3 — [ARM JTAG SWD 10Pin 0.05" Connector](https://www.flux.ai/vasy_skral/arm-jtag-swd-10pin-005-connector~y0b.md) - Manufacturer Part Number: FTSH-105-01-L-DV-007-K - Part Type: Connector - Datasheet URL: https://suddendocs.samtec.com/catalog_english/ftsh_smt.pdf - Symbol Style: parametric-v1 - Role: Debug Connector - Role Details: 10-pin Cortex SWD header for STM32 programming and debug - Manufacturer Name: Analog Devices **Pins:** - ~RESET~ [pin 10] - GND [pin 5] - GND [pin 3] - GNDDetect [pin 9] - NC/TDI [pin 8] - SWDCLK/TCK [pin 4] - SWDIO/TMS [pin 2] - SWO/TDO [pin 6] - VTref [pin 1] ### U1 — [MP5016GQH-Z](https://www.flux.ai/monolithicpower/mp5016gqh-z~mgj.md) - Role Details: USB 5V eFuse, OVP/UVLO/OCP; current limit target about 1A for high-Z output design - Manufacturer Part Number: MP5016GQH-Z - Role: Input Protection - Datasheet URL: https://www.monolithicpower.com/en/documentview/productdocument/index/version/2/document_type/Datasheet/lang/en/sku/MP5016GQH-Z - Package or Case Code: QFN10-1p5X2_MNP - Product Image Url: https://www.monolithicpower.com/pub/media/catalog/product/M/P/MP5016_428_1.jpg - Product Info Url: https://www.monolithicpower.com/en/catalog/product/view/id/428?utm_source=ultralibrarian&utm_medium=component_search&utm_campaign=listing - Manufacturer Name: Monolithic Power Systems **Pins:** - DV/DT [pin 10] - EN [pin 9] - GATE [pin 8] - GND [pin 3] - ILIMIT [pin 4] - MODE [pin 5] - SOURCE [pin 7] - SOURCE [pin 6] - VCC [pin 1] - VCC [pin 2] ### U10 — [ADA4898-2YRDZ](https://www.flux.ai/jecstronic/ada4898-2yrdz~sqf.md) - Part Type: Operational Amplifier (OP-AMP) - Role Details: Low-level DDS/square conditioning, bias subtraction, and pre-scaling before THS3091 output stage - Manufacturer Name: Analog Devices Inc. - Role: Amplification - Manufacturer Part Number: ADA4898-2YRDZ - Datasheet URL: https://www.analog.com/media/en/technical-documentation/data-sheets/ADA4898-1_4898-2.pdf **Pins:** - -IN 1 [pin 2] - -IN 2 [pin 6] - +IN 1 [pin 3] - +IN 2 [pin 5] - EP [pin 9] - OUT 1 [pin 1] - OUT 2 [pin 7] - V- [pin 4] - V+ [pin 8] ### U2 — [MCP1703Ax-330xxMB](https://www.flux.ai/kicad-part-library/mcp1703ax-330xxmb~qtf.md) - Package or Case Code: SOT-89-3 - Manufacturer Name: Microchip Technology Inc. - Role: Voltage Regulator - Role Details: 5V_PROT to 3V3 digital/control LDO - Datasheet URL: http://ww1.microchip.com/downloads/en/DeviceDoc/20005122B.pdf - Manufacturer Part Number: MCP1703Ax-330xxMB **Pins:** - GND [pin 1] - VI [pin 2] - VO [pin 3] ### U3 — [LT3471EDD#PBF](https://www.flux.ai/vasyl/lt3471eddpbf~dw.md) - Role Details: 5V_PROT to +/-15V analog rails for THS3091 output stage - Part Type: Integrated Circuit - Datasheet URL: https://www.analog.com/media/en/technical-documentation/data-sheets/3471fb.pdf - Manufacturer Name: Analog Devices Inc. - Manufacturer Part Number: LT3471EDD#PBF - Role: Switching Regulator **Pins:** - ~SHDN~/SS1 [pin 9] - ~SHDN~/SS2 [pin 7] - FB1N [pin 1] - FB1P [pin 2] - FB2N [pin 5] - FB2P [pin 4] - GND [pin 11] - SW1 [pin 10] - SW2 [pin 6] - VIN [pin 8] - VREF [pin 3] ### U4 — [STM32G0B1CBT6](https://www.flux.ai/lcsc/stm32g0b1cbt6~dg8z.md) - Role: Microcontroller - Role Details: USB control, SPI to DDS/DAC/digipot/mux, timer square output - Frequency: 64MHz - Datasheet URL: https://www.lcsc.com/datasheet/C2847904.pdf?spm=wm.sxq.inf.ggs&lcsc_vid=FlVZVVIFFgBeVAVTT1BXUgFfEwJeVlBfEwVcAlMHRAQxVlNeR1RcVlxUQlBdUTsOAxUeFF5JWBYZEEoKFBINSQcJGk4dAgUUFAk%3D - Manufacturer Name: ST(意法半导体) - LCSC Part Number: C2847904 - Part Type: ST Microelectronics - Package or Case Code: LQFP-48_L7.0-W7.0-P0.50-LS9.0-BL - Manufacturer Part Number: STM32G0B1CBT6 - Operating Temperature: -40°C ~ 85°C (TA) - Symbol Style: parametric-v1 - JLCPCB Part Class: Extended Part - Voltage Supply: 1.7 ~ 3.6V **Pins:** - PA0 [pin 11] - PA1 [pin 12] - PA10 [pin 32] - PA11[PA9] [pin 33] - PA12[PA10] [pin 34] - PA13 [pin 35] - PA14-BOOT0 [pin 36] - PA15 [pin 37] - PA2 [pin 13] - PA3 [pin 14] - PA4 [pin 15] - PA5 [pin 16] - PA6 [pin 17] - PA7 [pin 18] - PA8 [pin 28] - PA9 [pin 29] - PB0 [pin 19] - PB1 [pin 20] - PB10 [pin 22] - PB11 [pin 23] - PB12 [pin 24] - PB13 [pin 25] - PB14 [pin 26] - PB15 [pin 27] - PB2 [pin 21] - PB3 [pin 42] - PB4 [pin 43] - PB5 [pin 44] - PB6 [pin 45] - PB7 [pin 46] - PB8 [pin 47] - PB9 [pin 48] - PC13 [pin 1] - PC14-OSC32_IN [pin 2] - PC15-OSC32_OUT [pin 3] - PC6 [pin 30] - PC7 [pin 31] - PD0 [pin 38] - PD1 [pin 39] - PD2 [pin 40] - PD3 [pin 41] - PF0-OSC_IN [pin 8] - PF1-OSC_OUT [pin 9] - PF2-NRST [pin 10] - VBAT [pin 4] - VDD/VDDA [pin 6] - VREF+ [pin 5] - VSS/VSSA [pin 7] ### U5 — [AD9833BRMZ](https://www.flux.ai/jecstronic/ad9833brmz~d1h.md) - Role Details: SPI-controlled sine/triangle source, 25MHz MCLK, 1Hz-1MHz output target - Manufacturer Part Number: AD9833BRMZ - Part Type: Integrated Circuit - Datasheet URL: https://www.analog.com/media/en/technical-documentation/data-sheets/AD9833.pdf - Role: DDS Waveform Generator - License: https://creativecommons.org/licenses/by/4.0/ - Manufacturer Name: Analog Devices Inc. **Pins:** - ~FSYNC [pin 8] - AGND [pin 9] - CAP/2.5V [pin 3] - COMP [pin 1] - DGND [pin 4] - MCLK [pin 5] - SCLK [pin 7] - SDATA [pin 6] - VDD [pin 2] - VOUT [pin 10] ### U6 — [ADG758CPZ](https://www.flux.ai/kicad-part-library/adg758cpz~awh.md) - Manufacturer Name: Texas Instruments Inc. - Datasheet URL: https://www.analog.com/media/en/technical-documentation/data-sheets/ADG758_759.pdf - Role: Analog Multiplexer - Manufacturer Part Number: ADG758CPZ - Role Details: Low-level waveform selection before high-voltage output gain - Package or Case Code: LFCSP-20-1EP_4x4mm_P0.5mm_EP2.1x2.1mm **Pins:** - A0 [pin 19] - A1 [pin 18] - A2 [pin 17] - D [pin 7] - EN [pin 1] - GND [pin 15] - NC [pin 8] - NC [pin 16] - NC [pin 9] - NC [pin 20] - S1 [pin 3] - S2 [pin 4] - S3 [pin 5] - S4 [pin 6] - S5 [pin 13] - S6 [pin 12] - S7 [pin 11] - S8 [pin 10] - V_{DD} [pin 14] - V_{SS} [pin 2] - V_{SS} [pin 21] ### U7 — [AD5290](https://www.flux.ai/kicad-part-library/ad5290~p1.md) - Package or Case Code: MSOP-10_3x3mm_P0.5mm - Role Details: ±15V-capable digital pot in output amplifier gain network - Manufacturer Name: Texas Instruments Inc. - Role: Programmable Gain - Datasheet URL: https://www.analog.com/media/en/technical-documentation/data-sheets/AD5290.pdf - Manufacturer Part Number: AD5290 **Pins:** - ~{CS} [pin 5] - A [pin 1] - B [pin 2] - CLK [pin 6] - GND [pin 4] - SDI [pin 7] - SDO [pin 8] - V_{DD} [pin 9] - V_{SS} [pin 3] - W [pin 10] ### U8 — [THS3091DDAR](https://www.flux.ai/jecstronic/ths3091ddar~hbv.md) - Manufacturer Part Number: THS3091DDAR - Manufacturer Name: Texas Instruments Inc. - Role: Output Amplifier - Part Type: Operational Amplifier (OP-AMP) - Role Details: High-slew ±15V current-feedback amplifier for 20Vpp high-Z output - Datasheet URL: https://www.ti.com/lit/ds/slos423h/slos423h.pdf - License: https://creativecommons.org/licenses/by/4.0/ **Pins:** - GND [pin 9] - NC_1 [pin 1] - NC_2 [pin 5] - NC_3 [pin 8] - VIN- [pin 2] - VIN+ [pin 3] - VOUT [pin 6] - VS- [pin 4] - VS+ [pin 7] ### U9 — [DAC80501MDGSR](https://www.flux.ai/adrian95/dac80501mdgsr.md) - Datasheet URL: https://www.ti.com/lit/gpn/DAC80501 - Manufacturer Name: Texas Instruments - Part Type: Integrated Circuit - Package or Case Code: 10-VSSOP - Role Details: SPI DAC for offset/zero calibration and analog bias trim - Role: Control DAC - Manufacturer Part Number: DAC80501MDGSR - Symbol Style: parametric-v1 **Pins:** - ~SYNC~/A0 [pin 7] - AGND [pin 4] - NC_1 [pin 3] - NC_2 [pin 9] - SCLK/SCL [pin 6] - SDIN/SDA [pin 8] - SPI2C [pin 5] - VDD [pin 1] - VOUT [pin 2] - VREFIO [pin 10] ### X1 — [DSC6151HI2B-025.0000T](https://www.flux.ai/vasy_skral/dsc6151hi2b-025p0000t~t7x.md) - Symbol Style: Parametric - Datasheet URL: https://ww1.microchip.com/downloads/aemDocuments/documents/TCG/ProductDocuments/DataSheets/DSC61xxB-Ultra-Small-Ultra-Low-Power-MEMS-Oscillator-DS20006155.pdf - Role: Clock Oscillator - License: https://creativecommons.org/licenses/by/4.0/ - Role Details: 25MHz low-jitter MCLK for AD9833 frequency accuracy - Manufacturer Name: Microchip - Part Type: Oscillator - Frequency: 25MHz - Manufacturer Part Number: DSC6151HI2B-025.0000T **Pins:** - ~STDBY [pin 1] - GND [pin 2] - OUT [pin 3] - VDD [pin 4] *The full schematic, PCB layout, bill of materials, and interactive design are available at [https://www.flux.ai/jayanok/programmable-function-generator~60](https://www.flux.ai/jayanok/programmable-function-generator~60).* --- *Generated from [https://www.flux.ai/jayanok/programmable-function-generator~60](https://www.flux.ai/jayanok/programmable-function-generator~60)*