Share this project


Share this project

blink(1) is a small USB light to give you glanceable notice of anything on your computer or the internet.
blink(1) is a small USB light to give you glanceable notice of anything on your computer or the internet.
blink(1) is a small USB light to give you glanceable notice of anything on your computer or the internet.
Created by
2,655 backers pledged $132,317 to help bring this project to life.

Over 2000 backers. Welcome, everyone, to blink(1)!

Thank you to everyone who has backed us so far.  It's incredibly cool to find others who also think the blink(1) idea is a neat one.  Here's what we've been up to since the last update.

Sketching in Hardware 12

One thing that ate over a week of our lives was our annual Sketching in Hardware conference. This was Sketching's sixth year. Each year we try to bring together the best minds in hardware prototyping to chat about the future of hardware tools to quickly explore ideas in ubiquitous computing and the Internet of Things. This years theme was "clouds & atoms" and two recurring topics were Javascript control of devices, like with Breakout JS, and Websockets, a way of creating TCP-like connections over HTTP. But perhaps most thought-provoking were the questions of why we make and what kind of mass-customization world are we headed towards. Finally, in one of the breakout sessions, the community of product makers could really use a knowledge resource that archived expertise in the wide gamut of fields needed to create a product: electronics, firmware, materials, processes, etc.

Stay tuned for links to the Sketching talks.

Survey Results

Thanks to all the backers who participated in the "blink(1) use" survey. (over 60% filled out the survey!) We broke the survey up into bins, based on how many blink(1)s you wanted, so we could see how those who ordered 40 blink(1)s differed from those who ordered two.
The general trend is that the majority of people who got a single blink(1) will be using blink(1) at home on a laptop. There was a slight preference of Mac OS X over Windows.  For those purchasing many blink(1)s, Linux servers were a strong showing.

If you'd like to see the survey summaries yourself, here they are in PDF format:

More Enclosure Work & Customization Options

We moved to a slightly different USB plug that is easier to use in automated assembly (see the difference below) and reworked the outline of the circuit board to make it a little smaller.  This means we've had to make a few changes to the enclosure to match.

For those of you who want different light output pattern than what the stock enclosure provides, we will be providing alternate enclosures on Shapeways and Thingiverse. If you've worked with BlinkMs, you know the LEDs we use can be painfully bright. We've been tuning the enclosure so the light from blink(1) isn't blinding but a soothing glow. But we also want to give the option of experiencing the fun of raw LED light.  So we've made the case top removable for your own experiments.  For instance, here's two blink(1) prototypes, one with a 3d-printed prototype enclosure, another topless but a glue gun stick used as a light pipe.  LEDs are fun!

SDKs & APIs for blink(1)

There have been a few questions as to how you'll be able to control blink(1). We will be offering a variety of ways to talk to blink(1), from the very low-level to non-programmer apps.

First up, APIs we currently have:

  • Raw USB HID SetFeature & GetFeature reports – Many programs allow sending arbitrary data to USB HID devices via "feature reports".  blink(1)'s use of these reports are documented so you can do this low-level communication.
  • C library – compiles on Mac OS X, Windows, Ubuntu/Debian Linux, Beaglebone/Angstrom Linux, Raspberry Pi Linux, DD-WRT Linux, and just about any other POSIX system with libusb/hidapi.  This library should work with Objective-C, C++, and Visual C++ too.
  • Command-line tool – Pre-compiled executable works on all systems supported by the C library.
  • Java library – for Mac OS X and Windows officially, can work on any system with Java & libusb/hidapi.
  • Processing library – Same requirements as Java library.
  • REST local web service – Anything that can talk HTTP can control blink(1).
Additional APIs we will have at launch:
  • Python API – the backers have spoken! We'll have a Python API too. This will likely be a wrapper of our C library instead of using PyHID, for maximum cross-platformness.
  • Javascript/HTML5 API – Control blink(1) from your browser or web app.
  • OSC UDP receiver – Send Open Sound Control UDP messages to control blink(1).

With the command-line tool and the REST web service, just about any alert system on your system can use blink(1).

What's Next

Our next update will talk about how to connect web services to blink(1).  We should have something pretty cool to announce regarding that.



Only backers can post comments. Log In
    1. Donovan Sandey on August 13, 2012

      Is there plans to release some of the API documentation early, so we can develop and have things usable by the time it's available? I'd certainly like more information on the raw HID interface, at least. I don't care much about the other APIs, but I'd like to build my own in a couple languages I don't see on the list.

    2. Tyler Bell on July 31, 2012

      Congrats! Looking forward to more updates