Source, APIs & Libraries

The main development github repository is:

We endeavor to make all blink(1) source and APIs work on these platforms:

  • Mac OS X 10.7+ (10.6 in many cases)
  • Windows 7+ (XP in some cases)
  • Linux Ubuntu (and other Linuxes and *nixes like FreeBSD)

We come from a Unix background, so most of our tools work on Mac & Linux first.

We currently have APIs for:

  • C / C++ / Objective-C / Qt
  • Java
  • Processing
  • Python
  • Node.js
  • .NET
  • Ruby
  • Go
  • Linux kernel
  • and more added continually

Additionally there are several community-created APIs for specific higher-level tools that do system monitoring or continuous integration.  Most all of these are published. If you are curious, do a web search for your tool and “blink1”.

The blink(1) github is laid out along these lines, with one directory per language and sometimes a directory per OS.

  • docs — documentation about APIs and such
  • commandline — blink1-lib C library and blink1-tool command-line tools
  • commandline/blink1raw — HID raw mode for Linux servers
  • commandline/blink1-mini-tool — minimal dependency version of blink1-tool for Linux WiFi routers
  • java — Java / Processing library
  • processing — Processing applications (
  • python — Python APIs
  • go — Go library
  • libraries — libraries common to all systems (mostly just HTML app code)
  • qt — Blink1Control lives here, along with some Qt sample apps
  • mac — Mac OS X details and GUI control application
  • mac/scripts — command-line scripts to do cool things
  • windows — Windows details and GUI control application
  • windows/Blink1Lib — .NET library wrapping blink1-lib
  • windows/ManagedBlink1 — 100% .NET library
  • windows/scripts — Windows command-line scripts to do cool things
  • linux — Linux details and scripts
  • linux/contrib — contributed Linux scripts
  • hardware — all hardware-related info (firmware & schematic & enclosure)

Also check out:

  • blink(1) mk1 enclosure CAD files on Thingiverse