Sutajio Kosagi
Security & Privacy
FPGA Boards
Mobile, Open Hardware, RISC-V System-on-Chip (SoC) Development Kit
$537,974 raised
of $220,000 goal
244% Funded! Order Below
Recent Updates
- Jun 28, 2024 Xous 0.9.16: Harmonization and Encrypted Swap
- Dec 28, 2023 Xous v.0.9.15 release is now available
- Oct 11, 2023 Call for Developers: Precursor Chat Client
- Aug 09, 2023 New Xous Release 0.9.14: Quality of Life Improvements
Made For a Lab. Fits in a Pocket. Verifiable by Design.
Precursor is an open hardware development platform for secure, mobile computation and communication. This pocket-sized device accommodates a built-in display, a physical keyboard, and an internal battery while remaining smaller and lighter than the average smartphone. Precursor was built for use on the road, but it compromises nothing as a development platform. Powered by an FPGA-hosted, soft-core System-on-Chip (SoC), it gives developers the freedom to inspect, verify, and customize nearly every aspect of its operation. Join us as we build out a world in which silicon-level trustworthiness is attainable.
An End-to-End Solution for Passwords and Authentication
For those in search of a turn-key password-management solution, Precursor features the vault app since Xous v0.9.9. When vault is running, Precursor performs all of the following roles on a single device:
- U2F/FIDO2 authentication (like the USB tokens, but with a display!)
- TOTP authentication (i.e., those six-digit rolling numbers)
- Traditional password storage
And it does so using secret database overlays to provide plausible deniability!
The images above demonstrate the app in each of these modes. Unlike your typical U2F authenticator, Precursor can show you exactly which credential you’re approving. It can also quickly scroll and search through lists of dozens of authenticator tokens and passwords, thanks to its tight integration with a keyboard and screen. Finally, Precursor can "auto-type" passwords into a host computer by appearing as a USB keyboard device. This way, you are in full control of your security: you can create, store, and deploy passwords from a separate physical device that you control. No more worries about Spectre, for the data you entrust to Precursor, and no more cloud vendors mining your metadata!
The vault app also natively supports the Plausibly Deniable DataBase (PDDB), a fully encrypted data store that can dynamically show different views of the same app depending on which secret overlays, or "Bases", are unlocked. Locked Bases (plural of "Basis") look and behave exactly the same as free disk space, so we believe that even an adversary who can forensically image your Precursor will have a difficult time proving or disproving the existence of a secret Basis beyond a reasonable doubt.
Finally, Precursor features encrypted backup and restoration of the PDDB via USB, so you can bootstrap your digital self onto a new device, using the encrypted backup image and a BIP-39 word list, even if your device is lost, destroyed, or confiscated.
Trust It. Because You Can, Not Because You Have to.
We are accustomed to accepting the word of large corporations, like Apple and Google, that our gadgets are trustworthy. Without any hard evidence, we’ve long had to take in on faith that our privacy is being respected and that our personal data is not just one backdoor away from being stolen, exploited, or exposed. (We’ll go ahead and leave "monetized" off that list, since we all know that’s happening.) We’ve had to accept this reality in large part because we’ve had no other choice. Precursor changes the status quo by making evidence-based trust a core principle of its design. We have subjected every aspect of this platform to a level of scrutiny that will allow users to trust their devices. You, the user, will be able to trust Precursor based on scientific evidence that is observable without access to a million-dollar microscope.
The principle of evidence-based trust was at work in our decision to implement Precursor’s brain as an SoC on an FPGA, which means you can compile your CPU from design source and verify for yourself that Precursor contains no hidden instructions or other backdoors. Accomplishing the equivalent level of inspection on a piece of hardwired silicon would be…a rather expensive proposition. Precursor’s mainboard was designed for easy inspection as well, and even its LCD and keyboard were chosen specifically because they facilitate verification of proper construction with minimal equipment.
We’ve even prepared a one-hour walkthrough video to help you navigate Precursor’s design and focus on the relevant parts for inspection. The video takes you from "Boot to Root", touching on not only the usual software chain-of-trust starting from the CPU reset vector going to the root keys, but also from the CPU reset vector back into the CPU’s design source, and the hardware elements that it runs on.
Thanks to this pivotal design principle, Precursor is well-suited as a hardware development framework for security-critical applications such as password managers, authenticators, crypto wallets, and secure messaging platforms.
Carry It. With You When You Need It
Precursor is also distinctive among open hardware gadgets in that it was designed from the ground up for portability. While most open hardware FPGA development boards share Precursor’s evidence-based, compile-your-own-CPU trust properties, none of them are packaged into a slim, 7.2 mm, machined-aluminum case, complete with a charger, a battery, a display, and a keyboard. And speaking of batteries, Precursor draws less power than most other FPGAs thanks to the "-1L" variant Xilinx Spartan 7-Series at its heart. (The "L" stands for "low leakage.") That efficiency — combined with a super-low-power Lattice iCE40 UP5K FPGA for deep-sleep system management and a Silicon Labs WF200 with integrated network co-processor for Wi-Fi connectivity — allows Precursor to achieve a standby time measured in days and an active screen time of about five to six hours.
Precursor gets your bright idea out of the lab and into your pocket. And if that idea happens to involve software for a password manager, a crypto-wallet, a secure messaging platform, or something similar, then Precursor also gets it well on its way toward its destination as a packaged product.
Jailbreak It? Precursor Was Born Free!
The most important difference between a jail and a home is who controls the lock on the door. Most smartphone companies want you to believe that the gilded jail they’ve designed for you is the safest place to spend your time. Precursor takes a different approach. By giving you the keys to the lock, it gives you a home. And, like your actual home, you’re free to make it your own because we’ve published 100% of Precursor’s design source, from the outer case to the inner CPU core. And once you’re done configuring and inspecting your system, you can activate Precursor’s security features to protect your newly redecorated home from unwelcome intruders.
Situating Precursor Within the Device Ecosystem
We are the first to admit that Precursor isn’t for everyone. It’s a new class of development platform, made for security- and privacy-critical applications. We know it’s not going to replace your smartphone today. Rather, we see it as an indicator of good things to come from the open hardware ecosystem.
Toward the lower left, you’ll see some of FPGA development boards that share Precursor’s ability to compile its primary CPU. Such devices are well within the intersection of trustability and hackability, but they are not pocket-ready. (They might fit in your pocket, sure, but they’ll have pretty limited utility when you pull them out. Unless of course you plan on strapping them to a keyboard, a battery, and a display, in which case…why not let us do it for you?)
Toward the upper left, we have a whole category of devices—including FPGA development boards with hardwired internal CPUs capable of running mainline Linux—that will get the job done if all you care about is hackability. But these devices fail the pocket test as well. And, worse yet, they require that you take the vendor at their word about the absence of undocumented backdoors in those hardwired CPUs.
On the top, toward the middle are devices for enthusiasts who desire pocketability and hackability but who don’t have a strong need for evidence-based trust. Products like the Librem 5 and the PinePhone fall into this category.
Toward the upper right, you’ll find the supercomputer-in-your-pocket smartphones of today. Nothing holds a candle to iOS and Android devices if you’re looking for all the power you can get and have no need for hackability or evidence-based trust
And right there in the middle is Precursor, quite possibly the only device around that occupies the intersection of evidence-based trust, pocket-readiness, and hackability.
Comparisons
Precursor is much more than an FPGA development board and much less than a mobile phone. The tables below help to place Precursor within two different continua: one of gadgets and one of FPGA development boards.
Precursor vs. the Gadgets
For each of the Palm, Blackberry, and Nintendo families of gadgets, we’ve picked two devices: one from the generation with slightly less raw computing power than Precursor (such as the Palm m515) and one from the generation with slightly more raw computing power (such as the Palm Treo 600). We’ve also included the Samsung A11 smartphone, just to keep ourselves honest. If we’re willing to set aside evidence-based trust and hackability, today’s proprietary, full-custom, mass-market production techniques can achieve a truly incredible price-to-performance ratio.
Our four main takeaways from the table are as follows:
- Precursor's FPGA-based CPU, in terms of raw computing power, is comparable to an era from about 15 years ago.
- Even 15 years ago, we were doing a lot with the gadgets we could make: planning our days on digital calendars, sending and receiving emails and short messages, listening to music, and playing games, to name just a few examples.
- CPU power aside, peripheral technologies have improved significantly over those same 15 years, giving Precursor advantages such as faster networking stacks, higher display resolutions, and larger data storage capacities.
- At a $512, Precursor is at the middle-of-the-pack in terms of non-contract pricing for a new mobile-gadget class. Considering the relatively low production volume we anticipate, this is quite remarkable. With a campaign goal equivalent to a production lot size of under 500 units, we can't bargain with manufacturers like the big companies can.
| Precursor | Palm m515 | Palm Treo 600 | Blackberry 6210 | Blackberry 8700 | Nintendo DS | Nintendo 3DS | Samsung A11 | |
|---|---|---|---|---|---|---|---|---|
| Release year | 2020 | 2002 | 2003 | 2003 | 2005 | 2004 | 2011 | 2020 |
| MSRP at release year | $512 | $399 | $600 (no contract) | CAD$449 ~$315 | $349 (1-yr contract) | $149.99 | $249 | $138 |
| Release price (2020 equivalent) | $512 | $576 | $847.56 | $445 | $464 | $205 | $287 | $138 |
| CPU/FPGA | XC7S50 | MC68VZ328 | OMAP1510 | ARM7EJ-S (AD6528) | PXA901 | ARM946E-S | ARM11 dual | A53 octa |
| CPU core speed | 100 MHz | 33 MHz | 144 MHz | "It's a secret" (NDA-only) | 312 MHz | 67 MHz | 268 MHz | 1.8 GHz |
| RAM | 16 MiB | 16 MiB | 8+24 MiB | 2 MiB | 16 MiB | 4 MiB | 128 MiB | 2 GiB |
| Storage | 128 MiB OPI SPI | 4 MiB | 24 MiB RAM | 16 MiB | 64 MiB | 256 kiB cartridge | 2 GiB | 32 GiB |
| Display (Primary) | 336x536 mono | 160x160 color | 160x160 color | 160x100 mono | 320x240 color LCD | 256x192 color LCD | 800x240 3D LCD | 720x1560 PLS TFT |
| Wired connectivity | USB 2.0 Type-C | RS-232 | USB | USB 1.1 | USB | Link cable | Link cable | USB2.0 Type C |
| Hack ports | 8x GPIO + I²C internal hack port | None | None | None | None | None | None | None |
| Wireless connectivity | Wi-Fi | IrDA | GSM, IrDA | GSM | GSM, Bluetooth | Wi-Fi | Wi-Fi, IR | Wi-Fi, BLE, GPS, LTE |
| Input | Physical keyboard | Touchscreen | Physical keyboard, touchscreen | Physical keyboard and jog dial | Physical keyboard and jog dial | Touchscreen | Touchscreen, camera | Touchscreen, camera |
| Audio | Speaker, headphone/mic jack, vibe motor | None | Speaker, headphone/mic jack, vibe motor | Speaker, headphone/mic jack, vibe motor | Speaker, headphone/mic jack, vibe motor | Stereo | Stereo speakers, microphone | Speaker, headphone/mic jack |
| Battery | 1100 mAh Li-Ion | 1350 mAh? | 1800 mAh | 900 mAh? | 1100 mAh | 850 mAh Li-Ion | 1300 mAh | 4000 mAh |
| "Screen on" life | 5-6 hours | 4-7 hours | 4 hours | 5 hours | 4 hours | 15-16 hours | 3-5 hours | 28 hours |
| Sleep mode life | 2-3 days | ~1 week? | 10 days | ~2 weeks | ~2 weeks | 1 week | 3 days | 16 days |
| Case height | 7.2 mm | 12.7 mm | 22 mm | 20 mm | 19.5 mm | 28.9 mm | 21 mm | 8 mm |
| PCB design published | Yes | No | No | No | No | No | No | No |
| CPU design published | Yes | No | No | No | No | No | No | No |
Our hope is that Precursor will continue to appear over the next decade and a half as a benchmark in many tables like this one, as the starting point on a trend towards the performance and capabilities of mobile, open hardware solutions reaching parity with today’s proprietary solutions. In the meantime, we have to start somewhere. And with your help, we believe Precursor will live up to its name as a harbinger of good things to come.
Precursor vs. the Dev Boards
The table below helps to place Precursor’s capabilities in a different sort of context, this time alongside a pair of development boards with similar FPGA logic capacity. There are really only two things that Precursor has in common with these boards: 1) they all use an FPGA for their CPU, and 2) they are all open hardware, with published PCB and CPU design source. As a result, this is a bit of an apples-to-oranges comparison, but it’s the best we could come up with.
| Precursor | NeTV2 "just the board" | Arty A7-100T | |
|---|---|---|---|
| Release year | 2020 | 2018 | unknown |
| MSRP at release year | $512 | $215 | $249 |
| Release price (2020 equivalent) | $512 | $215 | $249 |
| CPU/FPGA | XC7S50 | XC7A35T | XC7A100T |
| CPU core speed | 100 MHz | 100 MHz | 100 MHz |
| RAM | 16 MiB | 512 MiB | 256 MiB |
| Storage | 128 MiB OPI SPI | 8 MiB SPI | 16 MiB QSPI |
| Display (Primary) | 336x536 mono | None | None |
| Wired connectivity | USB 2.0 Type-C | Ethernet, HDMI, Rpi Hat, PCIe, microSD | Ethernet, USB |
| Hack ports | 8x GPIO + I²C internal hack port | Serial, "hack" pins on PCIe and header | 4x Pmod + Arduino |
| Wireless connectivity | Wi-Fi | None | None |
| Input | Physical keyboard | None | 4 buttons/4 switches |
| Audio | Speaker, headphone/mic jack, vibe motor | None | None |
| Battery | 1100 mAh Li-Ion | N/A | N/A |
| "Screen on" life | 5-6 hours | N/A | N/A |
| Sleep mode life | 2-3 days | N/A | N/A |
| Case height | 7.2 mm | 51 mm | N/A |
| PCB design published | Yes | Yes | Yes |
| CPU design published | Yes | Yes | Yes |
What’s in the Box?
The Precursor tier includes the following items in the box:
- One fully assembled and tested Precursor device in an aluminium case, complete with display, bezel, QWERTY keyboard, and battery, and pre-loaded with low-level factory test firmware.
- Five alternate keyboard overlays: QWERTZ, AZERTY, Dvorak, Hangul, and blank.
- Press-fit metal shield for trusted domain of the Precursor PCB (to be installed after verification).
Customer Support
Anyone who receives their Precursor will probably want to familiarize themselves with the following:
- Do a firmware update
- Project wiki for quickstart, docs, and other links
- Xous Github issues to report bugs, make feature requests, and to ask other questions about Xous
- Shipping and delivery questions should be directed to Crowd Supply support.
In addition, for crowdfunding backers with a Limited Edition Precursor, we have an explainer on how to use your gift set. And finally, below is a video that demonstrates how to install your debug cable:
Documentation
- SoC FPGA source
- SoC FPGA register set
- EC FPGA source
- Mainboard & case designs
- Project wiki
- Low-level reference firmware
- WIP microkernel
- Guided tour of the mainboard
- IRC channel:
#betrusted:matrix.org - More to come soon!
Features & Specifications
- Made for developers
- Easy-access developer's cable (included)
- Low-level debugging (GDB + Chipscope) and firmware flashing via developer's cable plugged into a custom Raspberry Pi HAT (available for separate purchase)
- Middleware debugging via USB cable via wishbone tunnel
- Open source to the core
- Inspect, modify and compile your SoC and embedded controller from source
- All source files hosted on GitHub for convenient fork, pull request, and issue tracking
- Open source PCB and case design
- Extendable and modifiable
- No adhesives holding the bezels in place – just one screw driver is all it takes
- Want to add hardware? Maybe a cellular modem? No problem!
- Battery compartment is a blank check for your peripherals
- Install a smaller battery for more space
- Flex PCB breakout for 8x FPGA GPIO into the battery compartment
- Bezel is made out of FR-4, and can be user-customized to hold additional components
- Slim and light mobile form factor
- 69 mm x 138 mm x 7.2 mm
- 96 grams reference weight
- Compare to iPhone X at 70.9 mm x 143.6 mm x 7.7 mm and 174 grams
- Accessible mechanical design
- 6063 alloy aluminum case -– 3D files provided, so you can mill your own case!
- FR-4 front bezel -– PCB source provided
- ABS + PC polymer antenna radome -– 3D printable
- User-customizable CPUs
- Xilinx XC7S50 primary System on Chip (SoC) FPGA
- -L1 speed grade for longer battery life
- Tested with 100 MHz VexRISC-V, RV32IMAC + MMU, 4k L1 I/D cache
- iCE40UP5K secondary Embedded Controller (EC) FPGA
- Manages power, standby, and charging functions
- Tested with 18 MHz VexRISC-V, RV32I, no cache
- Xilinx XC7S50 primary System on Chip (SoC) FPGA
- 16 MB external SRAM
- 128 MB Flash
- 100 MHz DDR 8-bit wide bus for fast XIP code performance
- Dual hardware TRNG
- External discrete noise generator
- In-SoC ring oscillator based TRNG
- Inspectable I/O
- Physical keyboard with changeable layout overlays
- 200 ppi black and white LCD (336 x 536 resolution), 100% inspectable with standard optical microscope
- Both keyboard and LCD are backlit for night-time use
- Modular keyboard PCB -- customize layouts, add sensors, or swap in a touch surface
- Audio with safe defaults
- Integrated 0.7 W speaker for notifications
- Vibration motor
- 3.5 mm headset jack
- No integrated microphone -- audio surveillance is not possible when headset is unplugged
- Integrated Wi-Fi
- Sandboxed in a hardware-delineated untrusted domain
- Silicon Labs WF200C chipset
- USB Type-C port
- Supports charging at 5 V; over-voltage protection tolerant to 20 V
- Power negotiation to 5 V @ 1.5 A (source and sink)
- Supports legacy USB 2.0 full-speed PHY
- Basic DRP negotiation hardware support
- 1100 mAh Li-Ion battery
- Integrated gas gauge for more accurate battery life estimate
- Full charge in about three hours
- Runtime depends on user application
- Approx. 100 hours standby with Wi-Fi + embedded controller + static display enabled
- Approx. 700 mW "on-state" (most features enabled and active, backlight off) power draw, or 5.5 hours continuous use
- Anti-tamper features
- User-sealable metal can for trusted components
- Dedicated real-time clock (RTC) with basic clock integrity monitoring
- Power monitors trip reset in case of power glitches
- Always-on accelerometer/gyro to detect movement in standby
- Support for instant secure erase via battery-backed AES key and self-destruct circuit
"Betrusted-SoC" Reference Design
Part of the purpose of Precursor is to validate the system-on-chip (SoC) design we hope eventually to produce as a custom ASIC for use in future such products. This SoC, which we call "Betrusted-SoC," is meant to be the central pillar of security for devices like Precursor. The version of Betrusted-SoC used in Precursor is based on a Xilinx FPGA and has the following features:
- XC7S50-1L CSG324I, 80% utilized as of October 2020
- 100 MHz customized VexRISC-V RV32IMAC + MMU core with 4k caches
- Crypto primitives
- Ring oscillator TRNG (compliments off-chip TRNG)
- JTAG-based self-fusing for on-chip generation and sealing of secret keys
- AES-128, -192, -256 with ECB, CBC and CTR modes
- SHA-2 and SHA-512 digests
- Microcoded Curve25519 field arithmetic engine
- SPI
- High speed, 100 MHz DDR OPI SPI interface for code ROM
- Low speed, 20 MHz SDR 1-bit SPI interface to insecure domain
- I²C (100 kHz) for system integration
- Keyboard switch matrix controller with low power standby
- Bidirectional I²S interface for audio
- Custom frame buffer-based LCD interface
- 32-bit async SRAM interface with standby support
- Standard UART
- Full speed USB device
- Hardware Ticktimer
- 12-bit ADC (system voltage monitor)
- GPIO for power management and extension
"Betrusted-EC" Reference Design
In addition to using Precursor to validate the SoC, we are also validating the embedded controller (EC) that’s in charge of standby power functions, as well as firewalling the untrusted hardware domain in devices like Precursor. The version of "Betrusted-EC" used in Precursor is based on a Lattice FPGA and has the following properties:
- iCE40UP5K SG48, 98% utilized
- 18 MHz LiteX VexRISC-V RV32I core (minimal + debug config)
- I²C (100 kHz) via softcore for system integration
- 2x SPI interfaces
- FIFO buffered peripheral interface to SoC
- Controller interface to Wi-Fi chipset
- Hardware tick timer
- Standard UART
- GPIO for power control
Precursor is an offshoot of the Betrusted project, which aims to make a complete hardware and software solution for secure and private communications. Our team would like to acknowledge partial funding for development of Precursor from the NGI0 PET Fund, a fund established by NLnet with financial support from the European Commission’s Next Generation Internet program.

Ask a Question
Produced by Sutajio Kosagi in Singapore.
Sold and shipped by Crowd Supply.
Precursor
One fully assembled and tested Precursor. Includes a debug interface but no USB Type-C cable or charger. Comes with an installed QWERTY keyboard and alternate QWERTZ, AZERTY, Dvorak, Hangul, and blank keyboard overlays.
$590 Free US Shipping / $18 Worldwide
In stock
Raspberry Pi Debug HAT
An adapter board between a Precursor and a Raspberry Pi 3B+ or 4 for low-level debugging and reflashing.
$25 $8 US Shipping / $18 Worldwide
In stock
Raspberry Pi 4 Model B 2 GB
From the Raspberry Pi 4 Model B project.
2 GB version of the Raspberry Pi 4 Model B single-board computer, featuring a Broadcom BCM2711 quad-core Cortex-A72 64-bit SoC at 1.8 GHz, 2.4 GHz, and 5 GHz 802.11ac Wi-Fi, two USB 3.0 and two USB 2.0 ports, two micro HDMI ports, and a microSD card slot.
$45 $8 US Shipping / $18 Worldwide
In stock
Replacement LCD Screen
A 336 x 536 resolution, 200 PPI black-and-white memory LCD by Sharp, including an integrated backlight module.
$40 $8 US Shipping / $18 Worldwide
In stock
Replacement Keyboard PCB
A replacement Precursor keyboard PCB – no overlays included.
$15 $8 US Shipping / $18 Worldwide
In stock
Replacement Keyboard Overlay: QWERTY
A QWERTY keyboard overlay for Precursor.
$12 $8 US Shipping / $18 Worldwide
In stock
Replacement Keyboard Overlay: QWERTZ
A QWERTZ keyboard overlay for Precursor.
$12 $8 US Shipping / $18 Worldwide
In stock
Replacement Keyboard Overlay: AZERTY
An AZERTY keyboard overlay for Precursor.
$12 $8 US Shipping / $18 Worldwide
In stock
Replacement Keyboard Overlay: Dvorak
A Dvorak keyboard overlay for Precursor.
$12 $8 US Shipping / $18 Worldwide
In stock
Replacement Keyboard Overlay: Blank
A blank (unprinted) keyboard overlay for Precursor.
$12 $8 US Shipping / $18 Worldwide
In stock
Replacement Keyboard Overlay: Hangul
A Hangul keyboard overlay for Precursor.
$12 $8 US Shipping / $18 Worldwide
In stock
About the Team
Sutajio Kosagi
Singapore · kosagi.com
Sutajio Ko-usagi supports and produces open hardware products designed by bunnie and xobs.
![]()
![]()

