OpenLogix · Overview

OpenLogix

Project overview

November 2026

What is Open Logix?

  • An open source foundation for enabling FPGA design tools.
  • Free to use and adapt, under MIT or Apache 2.0, your choice.
  • An extensible, open board model and catalog.
  • An MCP engine to build, verify and program the boards.
  • An intuitive open API for third-party tools, AI agents and automation, in any language.
  • Ready-made frontends for IDE, command-line and schematic-based design.
  • Runs on macOS, Windows and Linux.

How it fits together

Logix IDEwrite code, click to run
Logix CLIcommands and scripts
Logix Studiodraw schematics
Logix Remoteconnects to remote frontends
Third-partyyour tool, AI agent or script
Logix Catalogopen, extensible board catalog
Logix Enginebuild · verify · simulate · program
Your FPGA boardstandard or custom
Open API · MCP, from any language
Downloaded and managed open source tools

Logix Catalog

Every FPGA board, described once.

  • FPGAs and boards: definitions of the supported FPGAs and boards.
  • Board resources: LEDs, buttons, clocks, UARTs, headers and more, mapped to FPGA pins.
  • Custom boards: users provide their own definitions, in the same format.
  • Source of truth: drives FPGA operations and code generation.
  • Designed for partial information: boards start with what's known and grow over time.
  • Language independent: based on standard JSON.
  • Open data: free to use and copy; served to any tool through Logix Engine.
  • Grows with the community: a custom board becomes a contribution with one pull request.

Catalog family model

People see chip families. The engine maps each to a toolchain.

FPGA families · Logix Catalog
Toolchains · Logix Engine
Runs
iCE40
ice40
nextpnr-ice40 · icepack
ECP5
ecp5
nextpnr-ecp5 · ecppack
GW1NGW2AGW5A
gowin
nextpnr-himbaechel · gowin_pack
Artix-7Spartan-7Zynq-7000
openxc7
nextpnr-xilinx · openXC7 tools

The catalog has one FPGA file per family, and a board gets its family from its FPGA. Toolchains are internal to the engine.

Catalog board resources

What each board's pins are wired to, by name.

Clockspin and frequency
LEDspins, active high or low
RGB LEDsred, green and blue pins
LED matricesa pin per LED and color
Buttons, switchespins and active level
UARTsTX, RX, and RTS and CTS
PMODs8 pins, in header order
Headersevery position, in order
Unclassifiedother wired pins

Any resource can also give its I/O standard, its source, and what it needs, such as a jumper.

boards/icesugar-1-5.json { "name": "iCESugar v1.5", "fpga_id": "ice40up5k-sg48", "resources": { "sys_clk": {"type": "clock", "pin": "35", "mhz": 12}, "rgb_led": {"type": "rgb_led", "active": "low", "red": "40", "green": "41", "blue": "39"}, … its switches, UART, PMODs and other pins … }, "variants": [ … how to program it … ] }
becomes the design's ports
module main ( input sys_clk, // 12 MHz output [2:0] rgb_led // active low );

Logix Engine

One engine. Every FPGA tool.

  • Abstracts FPGA operations: build, verify, simulate and program the board.
  • Manages its tools and catalog: no setup by the user.
  • Intuitive API: standard MCP over stdin/stdout.
  • Any language: a frontend launches it as a child process and calls its tools.
  • For AI agents and plain programs: IDEs, scripts and CI use the same API.
  • Self-discovery by AI agents: for ad-hoc operations, scripts and frontends.
  • Explicit and stateless: each request names its files, folders and board.
  • One native executable: nothing else to install.

Open Logix Frontends

Many ways to work. One engine.

  • Built on Logix Engine and Catalog: reuse data and logic, focus on the user experience.
  • Their own model: each defines its own project model and design paradigm.
  • Their own examples: each creates its examples based on Logix Catalog.
  • Simple installation: one download, no toolchain to install.
  • Third-party frontends welcome: leveraging the Logix Engine API and sample frontends.

Logix IDE

The Arduino experience, for FPGAs.

  • An Arduino-like IDE frontend: inspired by Arduino's minimalist look and feel.
  • The whole design cycle: edit, verify, build, test, simulate and run on the board.
  • Simple installation: one download, no toolchain to set up.
  • Manages its dependencies: Logix Engine, Logix Catalog and their tools.
  • Simple projects: the sources and a small project file in a single directory.
  • Custom boards, if needed: use your own board definitions.
  • Ready to start: example projects, and template projects for new ones.
  • Runs on macOS, Windows and Linux. Available Q4 2026.

Logix IDE is not affiliated with or endorsed by Arduino. Arduino is a trademark of Arduino SA.

Logix IDE

The Logix IDE window: a Verilog design in the editor, and the build results below

Logix CLI

FPGA builds, from the command line.

  • A command-line frontend: inspired by Apio.
  • One command, one operation: each logix <command> <args> does one thing.
  • The whole design cycle: verify, build, test, simulate and run on the board.
  • Simple installation: one download, no toolchain to set up.
  • Manages its dependencies: Logix Engine, Logix Catalog and their tools.
  • Custom boards, if needed: use your own board definitions.
  • Ready to start: example projects, and template projects for new ones.
  • Runs on macOS, Windows and Linux. Available Q1 2027.

Logix Studio

Draw your FPGA design.

  • A schematic-based frontend: inspired by IceStudio.
  • The whole design cycle: draw, verify, build, test, simulate and run on the board.
  • Simple installation: one download, no toolchain to set up.
  • Manages its dependencies: Logix Engine, Logix Catalog and their tools.
  • Custom boards, if needed: use your own board definitions.
  • Ready to start: example projects, and template projects for new ones.
  • Runs on macOS, Windows and Linux. Available Q1 2027.

AI agents, directly

Any MCP agent can use Logix Engine, with no frontend.

  • Connect once: add the engine to an agent such as Claude Code.
  • Ask in plain words: the agent learns the tools from the engine itself.
  • End to end: it writes the design, builds it and programs the board.
  • Done already: an agent changed a design, built it and programmed an Alhambra II through the engine alone.
  • Runs on macOS, Windows and Linux. Available Q4 2026.
# connect the engine to Claude Code, once $ claude mcp add logix-engine -- logix-engine \ --engine-folder ~/.logix/claude-code/engine > Make the LED on my Alhambra II blink once a second, then program the board. ● get_catalog the board's clock and LED pins ● writes main.v and pinout.pcf ● build synthesis, place and route ● list_devices finds the connected board ● program_board ✓ Programmed. The LED blinks once a second.

AI agents write scripts

A one-off request becomes a repeatable operation.

  • Ask once: "Write a Python script that builds my project and programs the board."
  • Run it anytime: from the shell, a Makefile or CI, with no AI involved.
  • Any language: Python, JavaScript, Rust or any other language with an MCP client.
  • Runs on macOS, Windows and Linux. Available Q4 2026.
# program.py: build the project and program the board import asyncio, os from mcp import ClientSession, StdioServerParameters from mcp.client.stdio import stdio_client ENGINE = StdioServerParameters(command="logix-engine", args=["--engine-folder", os.path.expanduser("~/.logix/scripts/engine")]) SRC = os.path.abspath("."); BUILD = SRC + "/_build" async def main(): async with stdio_client(ENGINE) as (r, w), ClientSession(r, w) as s: await s.initialize() await s.call_tool("build", { "board": "icesugar-1-5", "top_module": "main", "source_folder": SRC, "source_files": ["main.v"], "constraint_file": "pinout.pcf", "build_folder": BUILD}) found = await s.call_tool("list_devices", {"build_folder": BUILD}) await s.call_tool("program_board", {"build_folder": BUILD, "device": found.structuredContent["devices"][0]["id"]}) asyncio.run(main()) # error handling left out

Third-party frontends

Anyone can build on Logix Engine and Logix Catalog. A few ideas:

  • Editor extensions: JetBrains, Neovim, Emacs or Zed (Logix VSCode covers VS Code).
  • Web frontends: nothing to install, with the engine in the browser (planned) or via Logix Remote.
  • Python and other languages: Amaranth, LiteX or MyHDL designs, built by the engine.
  • Test automation: scripts and CI that build designs, run testbenches and program boards.
  • Tool testing: regression suites that check the open source FPGA tools on many boards.
  • Education: classroom tools, labs and automatic grading.
  • Board makers: factory tests and setup tools, using the board's catalog entry.

Looking ahead

Longer-term goals.

  • Remote development: work with boards anywhere on the network, with Logix Remote.
  • Shared libraries: reusable design code across frontends, with Logix Lib.
  • Closing the test loop: tests that run on the real board, with Logix HIL (hardware in the loop).
  • Learning: Open Logix training material and media.