Signaloid
FPGA Boards
Machine Learning

Signaloid C0-microSD

A programmable FPGA SoM in the tiny microSD form factor

$12,639 raised

of $2,500 goal

505% Funded!

Back this project to help bring it into existence.
Funding ends on Dec 19, 2024 at 03:59 PM PST.

$45 - $180

View Purchasing Options

Recent Updates

You'll be notified about news and stock updates for this project.

The Signaloid C0-microSD is a tiny programmable FPGA System-on-Module (SoM) that makes it possible to extend your existing industrial automation, manufacturing, and robotics systems with an FPGA-based hardware accelerator. It comes in a microSD form factor, fits in any unused SD or microSD slot, and can be interfaced with as a standard SD block device. This makes it possible, for the first time, to implement hardware acceleration for many data-processing tasks at the edge, even if your system lacks traditional expansion options such as a PCIe M.2 slot!

The Signaloid C0-microSD is based on the Lattice Semiconductor iCE40 FPGA. It comes preloaded with a version of our C0 RISC-V processor SoC but you can also load your own custom FPGA designs.

A Versatile New FPGA Platform

The Signaloid C0-microSD has two main use cases: You can either (1) use it as a hot-pluggable FPGA module, or (2) use it as a hot-pluggable Signaloid C0 RISC-V co-processor module. When plugged into a host computer, it appears as an empty and unformatted SD storage device. You can easily load custom FPGA bitstreams and applications for the built-in Signaloid SoC via the SD interface.

A Hot-Pluggable FPGA Module

When using the Signaloid C0-microSD as a hot-pluggable FPGA SoM, you can plug it into your computer, flash new FPGA bitstreams, and then either plug it into a breadboard using a microSD breakout board or integrate it into a legacy (or custom) PCB that has an unused microSD slot. Once powered on, the built-in bootloader will check if the device has been connected to an SD host, and if not, will load the latest custom user bitstream. In this configuration, the C0-microSD offers six configurable I/O pins by repurposing the microSD pads, and five additional I/O pins in the form of test pads.

You can find example FPGA designs that you can load onto the Signaloid C0-microSD, along with instructions on how to use them, in the official GitHub repository.

We provide support for the popular LiteX framework for building custom SoC designs that target the Signaloid C0-microSD. As just one example, we have published a demo repository that uses the I²C interface to communicate with an OLED display and a pulse-oximeter sensor.

A Hot-Pluggable Co-Processor Module

If you don’t wish to load a custom FPGA design, the Signaloid C0-microSD comes preloaded with a version of Signaloid’s C0 RISC-V processor SoC, which you can use to run your applications. In this mode, host computers can use the SD protocol to exchange data with applications running on the Signaloid C0-microSD. You can do that either by creating custom applications that run on the host platform and that access the SD storage device, or using Unix tools such as dd.

You can also integrate the Signaloid C0-microSD into existing embedded systems that feature slots for microSD cards. These range from low-power development boards, to handheld gadgets, to Programmable Logic Controllers (PLCs) for industrial automation.

Applications running on the Signaloid C0-microSD’s C0 processor SoC can take advantage of a subset of our uncertainty-tracking technology to quantify how uncertainties in data affect their outputs.

You can find example applications that use the Signaloid C0-microSD as a co-processor, along with host applications and instructions on how to use them, in the official GitHub repository.

Features & Specifications

Signaloid C0-microSD

Comparisons

Signaloid C0-microSDFomuICEBreakerTinyFPGA BX
Main Chip iCE40UP5K iCE40UP5K ICE40UP5K ICE40LP8K
Internal RAM120 Kbit + 1024 Kbit 120 Kbit + 1024 Kbit 120 Kbit + 1024 Kbit 128 Kbit
Flash128 Mbit SPI 16 Mbit SPI 128 Mbit QSPI DDR 8 Mbit SPI
LUTs5,280 5,280 5,280 7,680
Oscillator48 MHz internal 48 MHz crystal 12 MHz MEMS 16 MHz MEMS
InputsNone 4 capacitive touch sensors 4 buttons 1 reset
Outputs2 LEDs 1 RGB LED 5 LEDs None
GPIO6 on SD interface & 5 on test pads None 27 + 7 41
Fits in USB portWith a small USB-to-MicroSD adapter Yes No No
Fits in recessed, "locking" slotYes No No No
USB InterfaceVia USB-to-MicroSD adapter Built-in FTDI Softcore
SD InterfaceYes No No No
SD-over-SPIYes No No No
Price$45 $50 $69 $49

The SD-Dev carrier board

This Crowd Supply campaign also features the Signaloid SD-Dev, an optional compact carrier board and development system for testing and characterizing the Signaloid C0-microSD.

When you connect the Signaloid SD-Dev to a host computer via USB, it acts as a generic USB-to-SD adapter, exposing one microSD and one full-size SD slot to the host (peripheral mode). Alternatively, you can attach a Raspberry Pi CM4 to the carrier board, producing a compact SBC with hot-swappable FPGA modules in a standalone configuration. In this mode, the carrier board provides power-measurement capabilities for the on-board FPGA modules and allows you to power cycle them programmatically.

Carrier-Board Specifications

Support & Documentation

Our online documentation includes technical details, pinout diagrams, a system architecture specification, sample applications, and user-friendly guides on how to flash and use the device. You can find sample code and PDFs of the schematic in the official GitHub repository. We also offer a set of utilities to help you program the Signaloid C0-microSD and develop applications that run on it.

The Signaloid C0-microSD is compatible with existing open-source toolchains that can target the iCE40 FPGA, such as Icestorm, Yosys, NextPnR, and Icestudio. We also support AmarathHDL and LiteX.

Manufacturing Plan

We will outsource PCB fabrication and assembly to PCBWay and handle final programming and testing ourselves, here in Cambridge UK. We have developed a programming jig, along with a suite of extensive automated tests to speed things up.

Fulfillment & Logistics

After our production run is complete, we will package everything up and send it along to Crowd Supply’s fulfillment partner, Mouser Electronics, who will handle distribution to backers worldwide. You can learn more about Crowd Supply’s fulfillment service under Ordering, Paying, and Shipping in their guide.

Warranty & Liability

We warrant that the Signaloid C0-microSD and Signaloid SD-Dev will be free from defects in materials and workmanship under normal use for a period of 90 days from the date of receipt by the original buyer. If a defect arises and a valid claim is received within the warranty period, we will, at our option, either repair or replace the product or provide a refund. This warranty does not cover damages resulting from accident, misuse, unauthorized modifications or normal wear and tear. No other warranties, expressed or implied, are provided. Please note that the Signaloid C0-microSD and Signaloid SD-Dev are not designed, intended, or authorized for use in life-critical or safety-critical applications.

We are not liable for any indirect, incidental, special, or consequential damages, including but not limited to loss of profits, revenue, or data arising out of or related to your use of the Signaloid C0-microSD, Signaloid SD-Dev, online documentation, sample code, PDFs of the schematic, utilities, or Signaloid’s uncertainty-tracking technology, regardless of the legal theory and even if we have been advised of the possibility of such damages. In no event will our total liability exceed the amount you paid for the Signaloid C0-microSD and/or Signaloid SD-Dev.

Risks & Challenges

We are working on ensuring the compatibility of the Signaloid C0-microSD along various platforms and operating systems. We have tested the device and the accompanying software infrastructure on Unix based operating systems (Ubuntu and MacOS), but have not thoroughly tested it on Windows machines. We aim to publish updated releases of the bootloader, Signaloid SoC, and utilities repositories that will expand the device’s compatibility.

Signaloid C0-microSD is part of PCBWay Assembly Hub

In the Press

Hackster News

"The Signaloid C0-microSD from Cambridge-based Signaloid is a tiny iCE40 FPGA development board with a unique interface and programming model. As the name suggests, it fits into a standard microSD card socket — and that's how you program it!"

eeNews Europe

"The C0-microSD contains an iCE40UP5K FPGA, 128Mbit of SPI flash and fits in a microSD card socket for programming. This can be used to prototype designs or to add functionality to a larger PCB that contains a microSD slot using the available pins as GPIO."

Circuit Digest

"Equipped with an iCE40 FPGA, this board features a unique programming model and interface."


Ask a Question

Produced by Signaloid in Cambridge, UK.

Sold and shipped by Crowd Supply.

Signaloid C0-microSD

A programmable FPGA SoM in a microSD form-factor

$45 Free US Shipping / $12 Worldwide

Signaloid SD-Dev

A compact Raspberry Pi CM4 carrier board for developing applications on the Signaloid C0-microSD. Includes one Signaloid C0-microSD

$180 Free US Shipping / $12 Worldwide

About the Team

Signaloid

 ·   · 

We provide a computing platform that allows our customers to make safer and faster data-driven decisions by seeing how uncertainties in data affect the outputs of their legacy software and AI models. Our platform is orders of magnitude faster than alternatives like Monte Carlo methods and could be the missing piece of the puzzle to enable widespread and safe deployment of data-driven systems.

See Also

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects