SPIDriver

$27,758 raised

of $2,700 goal

Funded! Order Now

Jul 13

funded on

1,028%

funded

584

pledges

Product Choices

$5

Support Us!

Thanks for helping make SPIDriver a reality! You will be rewarded with regular backer updates, and my thanks.


$27

SPIDriver Core

A SPIDriver from the first batch, complete with a set of hookup jumpers.


$57

SPIDriver Expert

A SPIDriver from the first batch with hookup jumpers, an Arduino-style SPI adapter, a sweet 160x128 SPI LCD display, and an in-circuit flash programming clip.


$69

SPIDriver Gold

As SPIDriver Expert, plus the SPIDriver's USB Serial ID custom programmed to an 8-character name of your choosing.

Details

The SPI adapter/multi-tool that lets you easily drive SPI devices from any computer or SBC

As Featured In

Hackster.io

"SPIDriver appears to be the easiest way to use SPI components with your computer."

CNXSoft - Embedded Systems News

"The tool can also be used as an SPI flash programmer."

EEWeb

"For $27 you would be mad not to want one of those; I want one now!"

Electronics-Lab

"...you never have to ask yourself again, 'What’s it doing now?'"

LinuxGizmos.com

"...designed for hackers and computer educators alike."

Open Electronics

"The tool to control and monitor SPI Devices."

Hackster.io

"What if you want to take advantage of SPI from your computer instead of a microcontroller? That’s what SPIDriver is for."

MickMake

"Allows complete control using an open source application, so you can read and write to SPI flash or LCD screens."

Hackaday

Hackaday

"SPIDriver looks to us like a Bus Pirate with a screen — giving you a fighting chance"

GoJimmyPi

"The initial out-of-box experience was quite good; I had the device working almost immediately thanks to the great documentation page."

SPIDriver is an easy-to-use tool for controlling SPI devices. It works with Windows, Mac, and Linux, and has a built-in color screen that shows a live logic-analyzer display of all SPI traffic. It uses a standard FTDI USB serial chip to talk to the PC, so no special drivers need to be installed. The board includes 3.3 and 5 V supplies with voltage and current monitoring.

If you use SPI devices - LCD panels, flash memory, sensors, LEDs - you’ll know that the most frequently asked question is “what’s it doing now?” SPIDriver shows you what’s happening on the SPI bus in real time, so no more guessing about the bus state. It’s designed to make talking to SPI hardware a smooth, intuitive process. That’s good whether you’re a hardware debug wizard or are introducing a class to SPI for the first time.

The current and voltage monitoring let you catch electrical problems early. The included color coded wires make hookup a cinch; no pinout diagram required. It includes 3.3 and 5 V supplies for your device, plus a high-side current meter.

SPIDriver comes with free (as in freedom) software to control it from:

  • a GUI
  • the command-line
  • C and C++ using a single source file
  • Python 2 and 3, using a module

Who Needs It and Why?

If you use SPI hardware, you need SPIDriver. You can directly control LEDs and LCD displays without having to go near a microcontroller. If you need to examine, backup, or clone an SPI flash, SPIDriver is the ideal tool. It can read, backup, and restore standard SPI flash chips in-circuit, and is supported by the popular flashrom tool. If you work with SPI sensors, you can debug, test and calibrate them from your desktop using the programming tools you use every day.

Want to get a picture on a graphic display?

Graphic displays can be a pain, so it can feel like a real achievement getting them to display an image. SPIDriver is a natural fit for driving, testing, and evaluating different displays. Of course, SPIDriver also works perfectly with the Gameduino series of graphic touch screens.

SPIDriver driving a Gameduino 3 LCD panel.

Want to program SPI flash?

SPI flash is very common, and by using a test clip, SPIDriver makes it convenient to read and write SPI flash in-circuit. Just attach the clip and you can backup and restore flash contents directly. Atmel’s microcontrollers in-circuit programming use standard SPI pins, so a short script is all it takes to read or write an Atmel’s flash.

SPIDriver programming an Arduino Pro.

SPIDriver programming an Arduino Pro.

Light up LED strips from your desktop

SPI LED strips are also simple to hook up to SPIDriver, and being able to control them directly makes them much more fun! It’s fast enough to smoothly animate long strips and achieve POV effects. Short strips can be powered directly by the SPIDriver’s beefy 470 mA built-in supply.

SPIDriver driving a LED strip.

SPIDriver driving a LED strip.

Features

  • live display shows you exactly what it’s doing all the time
  • sustained SPI transfers at 500 Kbps
  • USB line voltage monitor to detect supply problems, to 0.01 V
  • target device high-side current measurement, to 5 mA
  • two auxiliary output signals, A and B
  • dedicated power out lines. two each of GND, 3.3 V and 5 V
  • all signals color coded to match jumper colors
  • all signals are 3.3 V, and are 5 V tolerant
  • uses an FTDI USB serial adapter, and Silicon Labs automotive-grade EFM8 controller
  • also reports uptime, temperature, and running CRC of all traffic
  • all sensors and signals controlled using a simple serial protocol
  • GUI, command-line, C/C++, and Python 2/3 host software provided for Windows, Mac, and Linux

Specifications

  • maximum power out current: up to 470 mA
  • signal current: up to 10 mA
  • device current: up to 25 mA
  • dimensions: 61 mm x 49 mm x 6 mm
  • interface: USB 2.0, micro USB connector

Comparisons

Tool Open hardware / software Indicators or display Additional sensors No driver install Host Software Price (USD)
SPIDriver Yes Graphic protocol analyzer Bus, voltage, current, temperature Yes GUI, command-line, Python, C/C++, and flashrom $27
Totalphase Aardvark No None None No Command-line, Python, C/C++ $300
FTDI MPSSE cable No None None No C/C++ $27.30
Bus Pirate Yes Power LEDs ADC input Yes Command-line. Python, flashrom $27.15

Manufacturing Plan

PCB manufacture is being handled by JLCPCB in Shenzhen, who have done a great job with the prototypes. We’re assembling and testing the first batch of units here in Pescadero, USA, with components sourced directly from Digikey USA. Each unit goes through an extensive automatic test and calibration, so that the voltage and current sensors are accurate to within 1%. Finally, thanks to ftx-prog, we properly program the FTDI USB chip to allow up to 500 mA over USB instead of the default 90 mA.

Fulfillment schedule

Immediately after the campaign closes, I’ll be placing the orders with the manufacturers. We estimate that we’ll have all rewards tested and shipped by August 24th.

Production and Risks

The designs have been prototyped through multiple iterations. The firmware has been tested with fanatical thoroughness. This mitigates a lot of risk. The remaining risk is in manufacturing execution:

  • There is some risk that the PCBs could be mis-manufactured
  • There is some risk that component availability is lower than needed at the time of procurement, in particular the LCD screen units

These are generally the same issues that may occur with any PCBA fabrication.

Ask a Question

Have a question not answered in the description above or in the Updates?

Ask Excamera Labs a Question or Browse the Crowd Supply Guide

Credits

Excamera Labs


James Bowman

Creator

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