Fomu for One - ICE40 FPGA Development Board

SKU: CE07318 Brand: Maker Community

Retired Product

Replaced by: FPGA
This product has been replaced by: FPGA
This product is no longer available. This page is only for reference.

Fomu is the easiest way to get started with FPGA or RISC-V development.

Fomu is a programmable FPGA device that fits inside a USB port. It has four buttons, an RGB LED, and an FPGA that is compatible with a fully open source chain and capable of running a RISC-V core. Fomu comes in a custom plastic enclosure that slots perfectly into a USB Type-A port.

Features & Specifications

Fomu fits entirely inside a standard USB Type-A slot, except for a small area that pokes out to give you access to four copper pads. There is one RGB LED that lights up the case and is fully user-controllable. The main chip is an FPGA with about 5000 LUTs, enough for a CPU with some room left over.

  • FPGA: Lattice ICE40UP5K
  • Speed: 48 MHz external oscillator
  • RAM: 128 kB RAM for a soft CPU¹
  • Storage: 1 MB SPI flash²
  • Connectivity: USB 2.0 FS (12 Mbps)
  • Buttons: Four³
  • LEDs: One RGB

¹: The FPGA has 1024 kilo-bits of memory available. A separate block of memory is used for things like the processor register file, in addition to temporary memory for things like USB buffers. The CPU can use 64 or 128 kilobytes of memory, depending on configuration. ²: This is the minimum configuration amount — more may be available in the final version.
³: Fomu has four copper pads near the edge. We have not yet validated any capacitive touch solutions.

Python, RISC-V, FPGA, All Open

  • Fomu has Python: With 128 kilobytes of RAM and a large amount of storage, Fomu is powerful enough to run Python natively. And since it lives in your USB port, installation is super simple. FPGAs are complicated, but the latest Python tools make it easy to use Fomu without any specialized training.
  • Fomu runs RISC-V: Underneath the Python interpreter lies a RISC-V softcore running on the FPGA fabric. RISC-V is an up-and-coming processor architecture that is poised to take over everything from deeply-embedded chips to high-performance computing. Fomu’s RISC-V softcore is a great introduction to the processor architecture of the future.
  • Fomu is an FPGA: An FPGA is a piece of reconfigurable silicon. The default Fomu firmware exposes a USB bootloader running a RISC-V softcore, but you can load whatever you want. Softcores are also available for LM32 and OpenRISC. You can practice adding instructions to the CPU, or add new blocks such as LED blink patterns or better captouch hardware blocks.
  • Fomu is entirely open: Developing with Fomu is incredibly easy: just load code via USB and go. Whether you’re writing RISC-V code, Python code, or HDL, it’s all uploaded to Fomu in the same way. The ICE40UP5K FPGA is supported with a fully open toolchain, meaning you can start development without creating an account, signing an NDA, or downloading a multi-gigabyte installer.

Why FPGA?

An FPGA is an Array of Gates that is Field-Programmable. When you buy a chip such as a CPU, the logic cells are all fixed in place. A CPU can run any amount of code, but if you want to do anything exotic you need to create software and, depending on what you want to do, that software can be very slow.

For example, many embedded projects use WS2812 LEDs such as NeoPixels that require a specialized timing signal. A CPU can generate this signal in software, but it can’t do anything in the background while talking to the light. If the string of LEDs is very long, then the CPU wastes a lot of time and power generating the signal.

With an FPGA, it becomes possible to create an "LED driver" that allows the CPU to keep running while a hardware component handles the timing. The CPU could do other work, or could put itself in a low power state.

In fact, the "CPU" in the FPGA is created from a hardware description language, meaning it can be modified or swapped out. If you wanted, you could create a brand-new CPU instruction. Do you want to have fast 64-bit multiplies? Or maybe you want a way to get random numbers easily? With Fomu and its FPGA, you have the source code to the CPU itself.

Resources

Fomu is designed to be as open as possible. So, even if Fomu doesn’t quite do what you’d like out of the box, it’s possible to modify it to meet your needs:

This product is listed in:

Retired

Product Comments

Exact shipping can be calculated on the view cart page (no login required).

Products that weigh more than 0.5 KG may cost more than what's shown (for example, test equipment, machines, >500mL liquids, etc).

We deliver Australia-wide with these options (depends on the final destination - you can get a quote on the view cart page):

  • $3+ for Stamped Mail (typically 10+ business days, not tracked, only available on selected small items)
  • $7+ for Standard Post (typically 6+ business days, tracked)
  • $11+ for Express Post (typically 2+ business days, tracked)
  • Pickup - Free! Only available to customers who live in the Newcastle region (must order online and only pickup after we email to notify you the order is ready). Orders placed after 2PM may not be ready until the following business day.

Non-metro addresses in WA, NT, SA & TAS can take 2+ days in addition to the above information.

Some batteries (such as LiPo) can't be shipped by Air. During checkout, Express Post and International Methods will not be an option if you have that type of battery in your shopping cart.

International Orders - the following rates are for New Zealand and will vary for other countries:

  • $12+ for Pack and Track (3+ days, tracked)
  • $16+ for Express International (2-5 days, tracked)

If you order lots of gear, the postage amount will increase based on the weight of your order.

Our physical address (here's a PDF which includes other key business details):

40 Aruma Place
Cardiff
NSW, 2285
Australia

Take a look at our customer service page if you have other questions such as "do we do purchase orders" (yes!) or "are prices GST inclusive" (yes they are!). We're here to help - get in touch with us to talk shop.

Have a product question? We're here to help!

Write Your Own Review

Guides

The Maker Revolution

The Maker Revolution celebrates the creation of new devices and the modification of existing ones - ...
The Maker Revolution celebrates the creation of new devices and the modification of existing ones - ...

Projects

Raspberry Pi Cyberdeck (SDR Edition)

I’ve always wanted a compact, rugged, and portable computer that can withstand any environmen...
I’ve always wanted a compact, rugged, and portable computer that can withstand any environmen...

Pico-Dog Motion Activated Audio Alarm

An instant response security system that actually works!If you've got security cameras tied to clou...
An instant response security system that actually works!If you've got security cameras tied to clou...

WaveJumper: Music Sample Slicer on a Breadboard

It was a dark and stormy night, and Pix was bumbling around with nonsense again. I was thinking of...
It was a dark and stormy night, and Pix was bumbling around with nonsense again. I was thinking of...
Feedback

Please continue if you would like to leave feedback for any of these topics:

  • Website features/issues
  • Content errors/improvements
  • Missing products/categories
  • Product assignments to categories
  • Search results relevance

For all other inquiries (orders status, stock levels, etc), please contact our support team for quick assistance.

Note: click continue and a draft email will be opened to edit. If you don't have an email client on your device, then send a message via the chat icon on the bottom left of our website.

Makers love reviews as much as you do, please follow this link to review the products you have purchased.