

MACHXO2 test
Custom MachXO2 FPGA Development Board - KiCad Design - Power, Clock, JTAG, LEDs - By Jay Waghmare
- Size
- 65 × 48 mm
- Copper layers
- 4
- Thickness
- 1.6 mm
- Parts
- 52
- Nets
- 138
- Pads
- 313
- Tracks, vias
- 641, 175
- Pours
- 10
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 17 Jul 2026
- Updated
- 17 Jul 2026
Overview
MACHXO2 test is an open-source printed circuit board by jay-waghmare, from the jay-waghmare/MachXO2-KiCad-Board repository on GitHub, published under the MIT licence. It is a 4-layer board of 65 × 48 mm with 52 parts on 138 nets, routed with 641 tracks and 175 vias.
It is built around the LCMXO2-640HC-6MG132I, FT231XQ-R and USBLC6-2SC6, with the 1N5819HW among its other parts. Its parts include 24 capacitors, 13 resistors, 5 ICs, 5 connectors and 4 diodes. It belongs with the fPGA and programmable logic boards and the FPGA and CPLD boards of this library.
Main components
4LCMXO2-640HC-6MG132I
CSPBGA-132-40℃~+100℃ 18432bit 2.375V~3.465V 640 79 80 MachXO2 Supports hot swap、Supports watchdog timeout detection CSPBGA-132 Programmable Logic Device (CPLDs/FPGAs) ROHSLatticeProgrammable Logic Device (CPLDs/FPGAs)FT231XQ-R
QFN-20-EP(4x4)-40℃~+85℃ 125uA 3.3V~5V 8mA USB 2.0 USB to UART QFN-20-EP(4x4) USB Converters ROHSFTDIUSB ConvertersUSBLC6-2SC6
SOT-23-60.35pF、0.8pF 100nA 150W@8/20us 15V 2 5V 6A@8/20us 6V ESD SOT-23-6 ESD and Surge Protection (TVS/ESD) ROHSUMWESD And Surge Protection (TVS/ESD)1N5819HW
SOD-123-65℃~+150℃ 1 Independent 1A 1mA@40V 25A 40V 450mV@1A SOD-123 Schottky Diodes ROHSDiodes IncorporatedSchottky Diodes
README
README.mdMachXO2-640HC FPGA Breakout Board - KiCad Design 🛠️
Custom breakout board for Lattice LCMXO2-640HC-6MG132I - Designed in KiCad 9.0.3 - 8 Sheets Hierarchical - By Jay Waghmare
3D Render - MachXO2-640HC Board (KiCad 3D View)
🌟 What Is This? (From My Schematic PDF)
Custom FPGA development board designed from scratch in KiCad for Lattice MachXO2 LCMXO2-640HC-6MG132I (640 LUTs, 132-ball CSBGA).
Full breakout board, not simple LED:
- USB Mini-B (J1) for power + data with ESD protection USBLC6-2SC6 (U2)
- Dual LDO: 5V→3.3V TL1963A-33DCYR (U4) and 5V→1.2V LD1117S12CTR (U5) for core + I/O
- FT231XQ USB-UART bridge (U7) for serial
- JTAG header 1x10 (J2) for Lattice HW-USBN-2B programmer (10 flywires - White TCK, Orange TDI, Brown TDO, Purple TMS...)
- All 4 I/O Banks broken out: Bank0 Top (PT6A...), Bank1 Right (PR28... LVDS), Bank2/3 Left (PL2A...), Bank Bottom (PB4A...) + GND/NC
- Power LEDs D1 D2, User LEDs, Button SW1 for PROGRAMN
Why I made my own? To learn FPGA hardware - Power sequencing, decoupling, JTAG, I/O banks.
8 Sheets Hierarchical (KiCad 9.0.3, file MACHXO2_test.kicad_sch):
| Sheet | File | Content |
|---|---|---|
| 1/8 | MACHXO2_test.kicad_sch | Top Level - Power, User_IO/Banks, Device_Management blocks |
| 2/8 | Power.kicad_sch | Power: USB Mini, 3.3V/1.2V LDOs, FPGA VCC/VCCIO decoupling C6 0.1uF C7 4.7uF etc, VCCIO table |
| 3/8 | USER_IO_Bank_T | Bank0 Top - U6B LCMXO2 Bank0, JTAG TDO/TDI/TCK/TMS, J3 12-pin socket |
| 4/8 | USER_IO_Bank_R | Bank1 Right - U6C Bank1, LVDS1/2/3, PCLK, J4 10-pin header |
| 5/8 | USER_IO_Bank_L | Bank Left - U6D Bank Left PL2A...PL7B |
| 6/8 | USER_IO_Bank_B | Bank Bottom - U6E Bank Bottom PB4A...PB14B |
| 7/8 | USER_Config | Config - JTAG J2, PROGRAMN button SW1, FT231XQ UART, JTAG header flywire table |
| 8/8 | GND&NC | GND & NC - U6F/U6G NC pins and GND balls |
✨ Board Features (From Schematic)
- FPGA: U6 LCMXO2-640HC-6MG132I, 640 LUTs, MG132I, Speed 6
- Power: J1 USB Mini-B, D3 1N5819HW?, U2 USBLC6-2SC6 ESD, U4 TL1963A-33DCYR 5V→3.3V (C2 4.7uF, C3 10uF, C21 10uF), U5 LD1117S12CTR 5V→1.2V (C22 4.7uF, C23 10uF, C24 10uF), D1 D2 power LEDs with R8 1K, C6 0.1uF C7 4.7uF per +1V2, C8 0.1uF C10 1uF C9 4.7uF per +3V3 bank - Proper decoupling!
- Recommended VCCIO (Your Table): PB left 3.3V (sensors, SPI flash), PL lower 1.8V (low-voltage memory), PR right 1.8V/2.5V (high-speed), PT top 3.3V (UART, SPI, USB-UART)
- JTAG: J2 1x10 header, R6 R7 R8 22R series for TDO/TDI/TCK/TMS, R11 4K7 pull-up for PROGRAMN, SW1 dual push button, Notes: INITN B13 open-drain float OK, JTAGENB B9 float OK (internal weak pull-up)
- UART: U7 FT231XQ with C26 4.7uF C27 0.1uF C28 0.1uF, TXD_FTDI, RXD_FTDI, RTS_FTDI, CTS, VBUS detection R1 4K7 + R13 10K divider
- JTAG Programmer: Lattice HW-USBN-2B USB cable with 10 flywire - Official tool - TCK White 4.7K to GND, TDI Orange 22R series, TDO Brown direct, TMS Purple 22R series, GND Black, VCC Red 0.1uF, PROGRAMN Yellow 4.7K+btn, DONE Blue LED+330Ω, INITN Green float, JTAGENB Gray float
📁 Files (Your Actual Uploads - Live)
You uploaded: .kicad_pro, .kicad_sch, .kicad_pcb, .kicad_prl, schematic.pdf, 3d-render.png, pcb_preview.png - Full project!
📸 Photos / Renders
| Schematic PDF | PCB Preview | 3D Render |
|---|---|---|
| schematic.pdf (8 pages) | ![]() | ![]() |
📦 How to View
- Install KiCad 9.0.3: https://kicad.org/download/
- Clone: git clone https://github.com/jay-waghmare/MachXO2-KiCad-Board.git cd MachXO2-KiCad-Board
- Open
MACHXO2_test.kicad_pro→ Schematic Editor (8 sheets) → PCB Editor → 3D View
🗺️ Roadmap
- KiCad hierarchical schematic 8 sheets - LCMXO2-640HC - Done (your PDF)
- Upload .kicad_pro, .kicad_sch, .kicad_pcb, .kicad_prl - Done (5-6 greens today!)
- Upload schematic.pdf + 3D renders - Done 5 mins ago!
- Add hardware/bom.md with exact values from schematic
- Add docs/design.md - Why 640HC, why TL1963A + LD1117, why 132-ball
- Export Gerbers: File → Fabrication Outputs → Gerbers → hardware/pcb/gerbers.zip
- Fabricate at JLCPCB
- Bring-up: Power test 3.3V/1.2V, JTAG scan with HW-USBN-2B, first blinky
- Add real board photos
👨💻 Author
Jay Waghmare - FPGA
- GitHub: @jay-waghmare
- Board: LCMXO2-640HC-6MG132I custom breakout - Designed from scratch in KiCad 9.0.3
If you like FPGA hardware boards, please ⭐ star!
📄 License
MIT License
Designed from scratch in KiCad 9.0.3
Parts
52| Qty | Value | Footprint | References |
|---|---|---|---|
| 9 | 0.1uf | Capacitor_SMD:C_0402_1005Metric_Pad0.74x0.62mm_HandSolder | C1, C6, C8, C11, C14, C17, C25, C27, C28 |
| 8 | 4.7uf | Capacitor_SMD:C_0402_1005Metric_Pad0.74x0.62mm_HandSolder | C2, C7, C9, C13, C16, C19, C22, C26 |
| 5 | 22R | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R1, R2, R6, R7, R8 |
| 4 | 1uf | Capacitor_SMD:C_0402_1005Metric_Pad0.74x0.62mm_HandSolder | C10, C12, C15, C18 |
| 3 | 10uf | Capacitor_SMD:C_0402_1005Metric_Pad0.74x0.62mm_HandSolder | C3, C21, C23 |
| 3 | 1K | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R3, R9, R10 |
| 3 | 4K7 | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R11, R12, R14 |
| 3 | LED | LED_SMD:LED_0402_1005Metric_Pad0.77x0.64mm_HandSolder | D1, D2, D4 |
| 2 | 10K | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R13, R15 |
| 2 | Conn_01x12_Pin | Connector_PinHeader_2.54mm:PinHeader_1x12_P2.54mm_Vertical | J3, J5 |
| 1 | 1N5819HW | Diode_SMD:D_SMA_Handsoldering | D3 |
| 1 | Conn_01x05_Pin | Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_Vertical | J4 |
| 1 | Conn_01x10_Pin | Connector_PinHeader_2.54mm:PinHeader_1x10_P2.54mm_Horizontal | J2 |
| 1 | FT231XQ | Package_DFN_QFN:QFN-20-1EP_4x4mm_P0.5mm_EP2.5x2.5mm | U7 |
| 1 | LCMXO2-640HC-6MG132I | CSBG132:BGA132C50P14X14_800X800X135 | U6 |
| 1 | LD1117S12CTR | LD1117S12CTR:SOT-223_STM | U4 |
| 1 | SW_Push_Dual | TL3301AF160QG:SW_TL3301AF160QG | SW1 |
| 1 | TL1963A-33DCYR | TL1963A-33DCYR:VREG_TL1963A-33DCYR | U1 |
| 1 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U2 |
| 1 | USB_B_Mini | Connector_USB:USB_Micro-B_Amphenol_10118194-0001LF_Horizontal | J1 |
Similar boards
- 4 layers36 × 39 mm

- 2 layers101.5 × 53.3 mm

- 2 layers68.5 × 53.3 mm

- 2 layers30 × 30 mm

TFUSBSERIAL01
ThunderFly-aerospace/TFUSBSERIAL01
USB-C to serial converter with Pixhawk telemetry JST-GH connector
39 parts1GPL-3.0 - 2 layers11.8 × 28.8 mm

- 4 layers220 × 100 mm

- 2 layers40.1 × 30 mm

- 4 layers90.9 × 50.3 mm

Questions
How big is the MACHXO2 test PCB?
It measures 65 × 48 mm and has 4 copper layers, 1.6 mm thick.
What parts does the MACHXO2 test use?
52 parts, built around the LCMXO2-640HC-6MG132I, FT231XQ-R, USBLC6-2SC6 and 1N5819HW. 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 MACHXO2 test KiCad files?
From the jay-waghmare/MachXO2-KiCad-Board repository on GitHub, at the commit this page was made from: the board is MACHXO2_test.kicad_pcb and its schematic MACHXO2_test.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the MACHXO2 test design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).