The LightBlue Bean is a legacy product and is no longer being sold

The Bean loader apps will continue to function, but no further updates will be provided. Updates to your OS may change Bluetooth functionality and therefore may break the functionality of the Bean apps.

Hardware files are available here.

We're proud to have helped people prototype their products with the Bean, and for all the incredible things they've built. The Bean was an incredibly fun and challenging product to work on, and we will miss it..

Our goal at Punch Through is to help companies develop products. Our consulting services and software products have been growing so quickly that they require our full focus and attention. If you're developing a connected product, we'd love to help in any way possible.

terminator

Bean+ Terminator

Introduction

What did the Bean+ Terminator shield say to the giant mess of wires? “HASTA LA VISTA, BABY!” The Terminator shield is a convenient, and cool 😎 , solution for tidying up those wires.

We connected an Adafruit NeoPixel strip to the Bean+ Terminator shield in this example and programmed the Bean+ to control the strip. The Bean+ sketch simply turns the NeoPixels on and off.

This tutorial assumes you have completed the Getting Started guide and that you understand how to upload a sketch to Bean using Bean Loader.

Software

Hardware

  • Bean+ Terminatorx 1
  • Or LightBlue Bean+ Terminator Bundlex 1
  • Adafruit NeoPixel Stripx 1
  • Small Screwdriverx 1

Program Your Bean

Program your Bean+ with this code:

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354#include <Adafruit_NeoPixel.h>

#define PIN 6

// Parameter 1 = number of pixels in strip
// Parameter 2 = Arduino pin number (most are valid)
// Parameter 3 = pixel type flags, add together as needed:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
//   NEO_RGBW    Pixels are wired for RGBW bitstream (NeoPixel RGBW products)
Adafruit_NeoPixel strip = Adafruit_NeoPixel(60, PIN, NEO_GRB + NEO_KHZ800);

// IMPORTANT: To reduce NeoPixel burnout risk, add 1000 uF capacitor across
// pixel power leads, add 300 - 500 Ohm resistor on first pixel's data input
// and minimize distance between Arduino and first pixel.  Avoid connecting
// on a live circuit...if you must, connect GND first.

void setup() {
  strip.begin();
  strip.show(); // Initialize all pixels to 'off'
}

void loop() {
  // Each NeoPixel can draw up to 60mA when displaying bright 
  // white (red AND green AND blue LEDs at full brightness).
  // Care should be taken to ensure average current drawn from 
  // the Bean+ battery is less than 600mA when using the NeoPixel strip.

  // We set the brightness to 32 here to minimize current draw.
  colorWipe(strip.Color(0, 32, 0), 50); // Green
  colorWipeReverse(strip.Color(0, 0, 0), 50); // Turn off LEDs
}

// Fill dots one after the other with a color
// Skip every other dot to minimize current draw from the battery on Bean+
void colorWipe(uint32_t c, uint8_t wait) {
  for(uint16_t i=0; i<strip.numPixels(); i=i+2) {
    strip.setPixelColor(i, c);
    strip.show();
    delay(wait);
  }
}

// Fill the dots one after the other with a color
// Skip every other dot to minimize current draw from the battery on Bean+
void colorWipeReverse(uint32_t c, uint8_t wait) {
  for(int16_t i=(strip.numPixels()); i>=0; i=i-2) {
    strip.setPixelColor(i, c);
    strip.show();
    delay(wait);
  }
}

Make It

Put the terminator shield onto your Bean+:

terminator shield

Attach the NeoPixel strip to the following terminals using a flat-head screwdriver:

  • D6 – White wire (Din)
  • 5V – Red wire (5V)
  • GND – Black wire (GND)
Bean+ Terminator

You will want to make sure that the NeoPixel strip is facing the correct way, with Din from the NeoPixel strip connecting to D6 on the Bean+. You will also want to be sure that your Bean+ is in 5V mode by flipping the 3.3V/5V switch to 5V.

After you’ve programmed your Bean+ and made the above connections, you can grab the popcorn, your 3D glasses, and turn on your Terminator-outfitted Bean+.

Learn More