Skip to the content
PCBKitNew board
4 layers100 × 80 mmBuilt, the printed circuit board in 3D

Tests of KiCad-related AI tools.

Size
100 × 80 mm
Copper layers
4
Thickness
1.6 mm
Parts
243
Nets
237
Pads
983
Tracks, vias
0, 0
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
29 Sep 2026
Updated
17 Oct 2026

Overview

Built is an open-source printed circuit board by devbisme, from the devbisme/ai-circuit-design-tests repository on GitHub. It is a 4-layer board of 100 × 80 mm with 243 parts on 237 nets.

It is built around the XC6SLX9-2TQG144C, SN74LVC2G34DBVR(AT) and ADS5231IPAGT, with the TLV62569DBVR-TP, W25Q32JVSSIQ and 93LC56BT-I/OT among its other parts. Its parts include 118 capacitors, 78 resistors, 18 ICs, 6 diodes and 5 connectors. It belongs with the FPGA and CPLD boards of this library.

Main components

12

README

konnect-tests/dual-adc-usb-2/README.md

Dual-channel 12-bit 10 MSPS USB digitizer — dual_adc_usb

KiCad 10 project built with Konnect MCP tools. The work so far covers the schematic only; the PCB has not been laid out yet (see "Status").

Requirements trace

RequirementHow it is met
2 channels, ±10 V inputTwo identical AFE sheets (afe_a, afe_b): 1.003 MΩ compensated ÷20 divider → ADA4817 FET buffer → THS4521 FDA. ±10 V gives ±0.951 V differential at the ADC, which is 95% of its ±1 V full scale.
10 MSPS, 12 bitLTC2290 is a dual, simultaneous-sampling 12-bit ADC rated at 10 MSPS. It is clocked by a 10 MHz SiT8008 MEMS oscillator with about 1 ps rms jitter.
≥0.1 s at max rateOne sample pair is 2 × 12 bit, stored in 32 bits. 10 M pairs/s × 0.1 s × 4 B = 4 MB. The W9812G6KH SDRAM holds 16 MB, which is about 0.4 s.
Scope-lead connectorsBNC inputs with 1 MΩ ‖ ~12 pF. C103/C203 trimmers set probe compensation.
USB 2.0, power + dataFT2232H high-speed USB, bus powered, USB-B receptacle.
USB-C if power insufficientNot needed. Estimated draw is ~370 mA against the 500 mA limit (see the power budget below).

Design decisions (options → choice)

  1. Data path / buffering
    • (a) FPGA + SDRAM + FT2232H sync FIFO ← chosen. It gives a guaranteed 0.1 s capture whatever the host latency, and all parts are hand-solderable (TQFP/TSOP).
    • (b) Stream directly to the host through FT232H. 30–40 MB/s is needed against ~35–40 MB/s available, so there is no margin and host hiccups drop samples.
    • (c) MCU with HS USB + SDRAM (i.MX RT / STM32H7 + ULPI PHY). This means more firmware complexity, and capturing a 20 MHz parallel bus with an MCU is awkward.
    • (d) FT601 USB 3. This violates the "USB 2.0" requirement.
  2. ADC: LTC2290 (dual, 10 MSPS, 3 V, in the KiCad library) ← chosen. LTC2291/2292 (25/40 MSPS) are pin-compatible fallbacks if you want rate margin. A pair of single ADCs would need more parts and give worse channel matching.
  3. FPGA: iCE40HX4K-TQ144 ← chosen. It has 107 I/O (91 used), an open toolchain (yosys/nextpnr/iceprog), and a TQFP package. ECP5 is overkill and BGA. A MachXO2 would also work, but its library symbol is not available.
  4. Capture memory: SDR SDRAM 16 MB ← chosen, because it is cheap and has 4× margin. 4 MB async SRAM needs no refresh but costs more for the same pin count.
  5. USB bridge: FT2232H ← chosen. Channel A runs sync FIFO for data; channel B runs MPSSE so the board's SPI flash can be programmed over the same cable. FT232H has one channel, so there is no in-system programming path. The FX2LP needs its own firmware.
  6. USB connector: USB-B ← chosen: robust for a bench instrument, and the power budget fits USB 2.0. Micro-B and USB-C (as USB 2.0 + 5.1 k CC) were the alternatives.
  7. Analog supplies: LM27762 for ±3.97 V (single chip, low noise) ← chosen. The alternatives were TPS65131 (inductive and noisier) or a ±5 V isolated module (overkill).
  8. Front-end topology: ÷20 divider + FET buffer + FDA ← chosen. A ÷10 divider would need a larger buffer input common-mode range than the ±4 V rails allow. A direct FDA input cannot present 1 MΩ to a probe.

Power budget (estimate, from 5 V VBUS)

RailLoadFrom 5 V
+3V3 (buck, ~85 %)FT2232H ~70 mA, SDRAM ~90 mA, FPGA I/O ~30 mA, 1V2 core ~30 mA, misc ~10 mA ≈ 230 mA~180 mA
+3V0 (LDO)LTC2290 ~40 mA + oscillator ~5 mA~45 mA
±4 V (LM27762)2× ADA4817 ~19 mA each + 2× THS4521 ~1.2 mA~125 mA
Total~350–380 mA

The +3V0 and ±4 V rails are gated by FT2232H PWREN# through Q401. Before enumeration the board draws roughly 70–90 mA, under the 100 mA unconfigured limit. The board has about 8 µF on VBUS, under the 10 µF USB limit.

FPGA pin allocation

  • Bank 3 (left): ADC channel A data on DA0–11 → pins 1–16, OFA/OFB on 17/18, channel B data on DB0–11 → 19–34. CLK_10M goes to pin 21 (GBIN6).
  • Bank 0 (top): FT2232H FIFO D0–7 on 110–118 and control on 119–125. FT_CLK goes to pin 129 (GBIN0). SDRAM control is on 135–144, and SD_CLK leaves pin 143 through a 33 Ω resistor.
  • Bank 1 (right): SDRAM DQ0–15, A0–A11 and BA0.
  • Bank 2 (bottom): LED0/1, expansion header J601 (TRIG_IN on GBIN5 plus GPIO0–5), and the SPI config pins.

Verification done

  • kicad-cli ERC: 0 errors. There are two warnings, both intentional: W25Q32 WP#/HOLD# are tied directly to +3V3, which carries a PWR_FLAG. There are also 201 lib_symbol_issues warnings. These come from the environment, not the design: the global KiCad 10 sym-lib-table points at a stale AppImage mount path, and the symbols embedded in the schematic are complete.
  • Netlist: 170 components, 214 nets, no single-node nets, no duplicate references. All key nets were spot-checked (ADC→FPGA, FPGA↔SDRAM, FIFO, SPI config, VCM, PWREN).
  • All 170 footprints exist in the KiCad 10 footprint libraries.

Open items / uncertainties (verify before fab)

  • LM27762: I am not certain of the FB− divider topology and reference polarity, or of the recommended CP and flying-cap values. They are set as 115 k/49.9 k, 1 µF and 4.7 µF; check them against the TI datasheet.
  • ADA4817 input CM range needs about 2.8 V of headroom to +Vs. ±0.5 V at the buffer input on ±3.97 V rails should be fine, but confirm it. The exposed pad is tied to VEE; confirm that is allowed.
  • BAV199DW: the KiCad symbol's pin names look inconsistent with its pin numbers. Confirm that the pin 1 / 6 / 2 series pair matches the Diodes Inc. datasheet.
  • LTC2290 MODE is set to 2/3·VDD (two's complement, duty-cycle stabilizer on), and SENSE=VDD gives a 2 Vpp range. Confirm against the datasheet table.
  • FT2232H: channel B MPSSE can only be used while channel A is not in sync-FIFO mode. This has not been verified on hardware.
  • Anti-alias filtering is only two poles (~7 MHz) and is not a brick-wall filter. Content above 5 MHz will alias, so a higher-order filter is an option if the application needs it.
  • Cosmetic: some labels overlap on the FPGA sheet (R602–R604 pull-up labels) and on the USB connector pins.

Status / next steps

  1. PCB layout: done as a candidate board. dual_adc_usb_routed.kicad_pcb (+ its own .kicad_pro) is 140 × 90 mm and 4 layers: F.Cu signal / In1 GND plane / In2 +3V3 plane / B.Cu signal. It is 100 % routed, and kicad-cli DRC reports 0 errors and 0 unconnected. Rules: 0.15 mm clearance and minimum track; 0.2 mm default tracks; 0.4 mm on the Power netclass; 0.6/0.3 mm vias. The original dual_adc_usb.kicad_pcb is still the placed-but-unrouted 2-layer board; the candidate also includes ~20 small decap moves. Routing scripts and the final SES are in routing/. Autorouted, so not yet reviewed for analog/SI quality (see below). PCB review items (autorouter output, not yet hand-tuned):
    • USB D+/D− were not routed as a controlled-impedance differential pair. They are short (~20 mm), but should be re-routed as a 90 Ω pair.
    • Some ±4 V, +3V0 and VCM routes take long detours, and a few digital traces cross the analog section. Re-route the AFE and ADC area by hand.
    • The 10 MHz ADC clock (OSC_OUT/ADC_CLK) should be short and kept away from data lines. Check it.
    • No outer-layer GND pours or stitching yet. Consider B.Cu GND fill under the AFE.
    • About 170 silkscreen warnings (overlaps, silk over copper and near the board edge) and 170 lib_footprint_mismatch warnings. The mismatch warnings come from the stale global footprint library table.
  2. FPGA gateware: ADC capture → SDRAM controller → FT245 sync FIFO readout. Bitstream programming through iceprog -I B.
  3. Host software (libftdi / pyftdi): arm, capture, read back.

Parts

243
QtyValueFootprintReferences
60100nCapacitor_SMD:C_0402_1005MetricC1001, C1002, C1003, C1004, C1005, C1006, C1007, C1008, C1009, C1010, C1011, C1012, C1013, C1014, C1015, C1016 +44
1810kResistor_SMD:R_0402_1005MetricR304, R305, R306, R307, R802, R803, R902, R904, R905, R906, R907, R908, R909, R1002, R1003, R1015 +2
104.7uCapacitor_SMD:C_0603_1608MetricC308, C313, C403, C601, C707, C903, C909, C1023, C1024, C1025
91uCapacitor_SMD:C_0402_1005MetricC118, C218, C304, C501, C605, C606, C702, C703, C706
72.2uCapacitor_SMD:C_0603_1608MetricC120, C121, C220, C221, C705, C708, C709
61kResistor_SMD:R_0402_1005MetricR604, R1008, R1009, R1010, R1012, R1013
633Resistor_SMD:R_Array_Convex_4x0402RN301, RN302, RN303, RN304, RN305, RN306
682pCapacitor_SMD:C_0603_1608MetricC107, C110, C111, C207, C210, C211
41.27kResistor_SMD:R_0402_1005MetricR110, R111, R210, R211
4100kResistor_SMD:R_0402_1005MetricR602, R702, R704, R705
4330pCapacitor_SMD:C_0402_1005MetricC108, C109, C208, C209
446.4Resistor_SMD:R_0402_1005MetricR114, R115, R214, R215
4576Resistor_SMD:R_0402_1005MetricR112, R113, R212, R213
4600RInductor_SMD:L_0603_1608MetricFB301, FB401, FB701, FB901
4698Resistor_SMD:R_0402_1005MetricR108, R109, R208, R209
4MountingHoleMountingHole:MountingHole_3.2mm_M3_Pad_ViaH1, H2, H3, H4
310uCapacitor_SMD:C_0603_1608MetricC602, C603, C808
34.7kResistor_SMD:R_0402_1005MetricR1001, R1004, R1005
3LED_GreenLED_SMD:LED_0603_1608MetricD601, D1002, D1003
21.2nCapacitor_SMD:C_0603_1608MetricC112, C212
21.8nCapacitor_SMD:C_0603_1608MetricC106, C206
2100Resistor_SMD:R_0402_1005MetricR1014, R1016
2100pCapacitor_SMD:C_0603_1608MetricC105, C205
210nCapacitor_SMD:C_0402_1005MetricC119, C219
218pCapacitor_SMD:C_0402_1005MetricC901, C902
21kResistor_SMD:R_0603_1608MetricR103, R203
22Resistor_SMD:R_0402_1005MetricR302, R303
222Resistor_SMD:R_0402_1005MetricR801, R910
2220pCapacitor_SMD:C_0603_1608MetricC103, C203
2232Resistor_SMD:R_0402_1005MetricR107, R207
2270pCapacitor_SMD:C_0402_1005MetricC104, C204
23.3pmy_board:C_Trimmer_SEHWA_STC3MA06C102, C202
233Resistor_SMD:R_0402_1005MetricR401, R402
2374Resistor_SMD:R_0402_1005MetricR106, R206
2453Resistor_SMD:R_0402_1005MetricR105, R205
249.9kResistor_SMD:R_0603_1608MetricR102, R202
25.1kResistor_SMD:R_0402_1005MetricR501, R502
28.2pCapacitor_SMD:C_0603_1608MetricC101, C201
2887Resistor_SMD:R_0402_1005MetricR104, R204
2953kResistor_SMD:R_1206_3216MetricR101, R201
2BAV199Package_TO_SOT_SMD:SOT-23D101, D201
2BNCmy_board:BNC_KH-BNC50-3511J101, J201
2OPA2810IDRPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU101, U201
2OPA810IDBVRPackage_TO_SOT_SMD:SOT-23-5U102, U202
2THS4551IRGTRPackage_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.68x1.68mmU103, U203
110MHzOscillator:Oscillator_SMD_Abracon_ASE-4Pin_3.2x2.5mmY401
112MHzCrystal:Crystal_SMD_2520-4Pin_2.5x2.0mmY901
112kResistor_SMD:R_0402_1005MetricR901
12.2kResistor_SMD:R_0402_1005MetricR903
12.2uHInductor_SMD:L_1008_2520MetricL601
1226kResistor_SMD:R_0402_1005MetricR703
1232kResistor_SMD:R_0402_1005MetricR701
1330Resistor_SMD:R_0402_1005MetricR1006
1453kResistor_SMD:R_0402_1005MetricR601
156.2kResistor_SMD:R_0402_1005MetricR301
16.8pCapacitor_SMD:C_0402_1005MetricC604
1750mAFuse:Fuse_1812_4532MetricF501
193LC56BT-I/OTPackage_TO_SOT_SMD:SOT-23-6U902
1ADS5231IPAGTPackage_QFP:TQFP-64_10x10mm_P0.5mmU301
1Conn_01x03Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ1002
1Conn_01x06Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ1001
1FT232HLPackage_QFP:LQFP-48_7x7mm_P0.5mmU901
1LM27762DSSRPackage_SON:WSON-12-1EP_3x2mm_P0.5mm_EP1x2.65U702
1LP5907MFX-3.3Package_TO_SOT_SMD:SOT-23-5U701
1SMF5.0ADiode_SMD:D_SOD-123FD501
1SN74LVC2G34DBVRPackage_TO_SOT_SMD:SOT-23-6U401
1TLV62569DBVRPackage_TO_SOT_SMD:SOT-23-5U601
1TLV75712PDBVRPackage_TO_SOT_SMD:SOT-23-5U602
1TYPE-C-31-M-12Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12J501
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U501
1W25Q32JVSSIQPackage_SO:SOIC-8_5.3x5.3mm_P1.27mmU1002
1W9812G6KH-6Package_SO:TSOP-II-54_22.2x10.16mm_P0.8mmU801
1XC6SLX9-2TQG144CPackage_QFP:TQFP-144_20x20mm_P0.5mmU1001

Questions

How big is the Built PCB?

It measures 100 × 80 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Built use?

243 parts, built around the XC6SLX9-2TQG144C, SN74LVC2G34DBVR(AT), ADS5231IPAGT and TLV62569DBVR-TP. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Built KiCad files?

From the devbisme/ai-circuit-design-tests repository on GitHub, at the commit this page was made from: the board is boardforge-tests/generate-1/build/work/built.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Built design in my own project?

Its repository states no licence, so its author keeps all rights: ask devbisme before reusing the design.

More from devbisme/ai-circuit-design-tests

9
  • 4 layers130 × 90 mmDual adc usb, the printed circuit board in 3D

    Dual adc usb

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    197 parts10
  • 4 layers150 × 90 mmDual adc usb, the printed circuit board in 3D

    Dual adc usb

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    186 parts10
  • 4 layers140 × 95 mmDual adc, the printed circuit board in 3D

    Dual adc

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    186 parts10
  • 4 layers120 × 69 mmDual adc usb, the printed circuit board in 3D

    Dual adc usb

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    184 parts10
  • 4 layers128 × 85 mmPre ses, the printed circuit board in 3D

    Pre ses

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    182 parts10
  • 4 layers125 × 95 mmPrerouted, the printed circuit board in 3D

    Prerouted

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    179 parts10
  • 4 layers115 × 85 mmDual adc usb, the printed circuit board in 3D

    Dual adc usb

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    175 parts10
  • 2 layers140 × 90 mmDual adc usb v1, the printed circuit board in 3D

    Dual adc usb v1

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    174 parts10
  • 4 layers120 × 88 mmDual adc, the printed circuit board in 3D

    Dual adc

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    163 parts10

Similar boards

  • 2 layers54 × 85.6 mmBoard43, the printed circuit board in 3D

    Board43

    smartbank-inc/Board43

    Board43 is an RP2350A-based microcontroller development board. Flash PicoRuby or your favorite firmware and start hacking.

    583 parts30
  • 4 layers60 × 130 mmParsnip, the printed circuit board in 3D

    Parsnip

    LimesKey/parsnip-node

    A portable LoRa communicator. Custom 4-layer PCB (ESP32-S3 + E22P-915M30S LoRa + NEO-M9N GNSS), designed in KiCad for 915 MHz.

    481 parts6
  • 6 layers104 × 104 mmFC REV A, the printed circuit board in 3D

    FC REV A

    desanv01/Flight-Controller-V1

    STM32H743 flight controller: staged design, six-layer PCB implementation, manufacturing data and engineering history.

    330 parts
  • 6 layers160 × 100 mmBuslab, the printed circuit board in 3D

    Buslab

    tombueng/hilprobe

    HILprobe: multi-function UUT probe for hardware-in-the-loop testing - RS-485, CAN FD, logic analyzer, 4-ch scope, two programmable UUT supplies. KiCad 10, 6 layers, RP2350B + ESP32-S3.

    429 parts
  • 2 layers52.9 × 28.2 mmEasyESPHomeLP, the printed circuit board in 3D

    EasyESPHomeLP

    TyraelWasTaken/EasyESPHomeLP

    41 parts
  • 4 layers125 × 85 mmMotherboard, the printed circuit board in 3D

    Motherboard

    morzack/ece592-nfc-caravan-pcbs

    Design files for breakout and motherboard PCBs for Sky130 NFC chip designed in NCSU's Tapeout Course (spr2025)

    194 parts1
  • 2 layers28 × 28 mmScoopy, the printed circuit board in 3D

    Scoopy

    NiceHatThanks/scoopy-node

    Tiny, local-first room hardware for Home Assistant and ESPHome.

    13 parts41