29 Jun '10

Bluetooth Classic

Hack, iPhone

By Coulter

 

Classic Bluetooth Headset Power

Although it was produced for 30+ years and in quantities of millions, this handset is now a relic.  My eight year old nephew has never seen it before.  Technology has progressed and phones are now designed to facilitate ever increasing levels of functionality.  As is often the case, with all that is gained, something is lost. 

iPhone Bluetooth Classic Headset

Everyone who gives the phone a try immediately cracks a smile.  The nostalgia is fun but there are also functional benefits.   First, the proximity of the microphone to your mouth and the large speaker make it drastically better at capturing and outputting audio.  Secondly, the face enveloping form creates a more focused and intimate conversation. Somehow this small change in device shape causes the user to stop multitasking and focus on the conversation.

This electronics mash up combines the retro handset with a standard Bluetooth headset, a headphone amp, a few RadioShack components, and some bespoke parts. 

The existing microphone and speaker were scrapped in favor of the Bluetooth headset’s microphone and RadioShack speaker.  The Bluetooth headset is mounted to a custom rapid prototyped carrier in the microphone side of the headset.  The speaker and amp are mounted to another custom carrier located on the other side of the phone.  The headphone amp was used because the Bluetooth headset couldn’t provide enough power for the larger RadioShack speaker.  A pair of digital switches allow the single external button to manage the amp power and headset power. 

The bespoke power/answer button needed to have the right look to really emphasize the irony.  The button was created from an acrylic tube, aluminum rod, snap dome switch, and white LED.   The LED color was tinted yellow with Kapton tape to give the illusion of a filament based lamp.

The end result is playful, surprisingly functional, and draws many second looks from passersby. 

The next revision will employ an accelerometer to allow the user to answer a call by simply picking up the phone, further emulating the original experience.

IMG_0693_E

Components:

  • Vintage ITT phone handset – Removed from late 1970’s Princess phone. No, I’m not joking.
  • Samsung WEP 460 Bluetooth headset – The cheapest one sold at RadioShack.
  • FiiO headphone amplifier – Available through eBay and shipped straight from Hong Kong.  The battery from this devices is used to power the phone.   
  • STG719 SPDT Switch – There are lot of options out there but I had these lying around.
  • Cree XP-E LED – Serious overkill but, again, I had it lying around.
  • RadioShack 8 Ohm speaker
  • 3/8” OD, ¼” ID Acrylic Tubing
  • ¼” OD Aluminum Rod

Bluetooth Headset Digital Switches

Technical Notes:

Although the Bluetooth headset and headphone amp share a battery, the switching circuit is required because of the differences in how the power button is wired in the two devices.  In one of the devices the button closes a circuit to ground while the other closes a circuit to the positive battery lead.  Ideally a speaker that makes the most of the headsets modest output would be used and the amp would be omitted.  This would make the entire device much less complex.

Update: Nicholas Zambetti has updated LiveView to support the iPad. If you’re a developer looking to create pixel-perfect iPad creations this is a no-brainer must-have. Look for landscape support coming soon!

—-

January 2009: Well, our Nicholas is at it again. This time he’s taken up iPhone application development, and has released a very cool (and, for a limited time, free!) little app intended to help interaction designers and other would-be iPhone software developers easily test pixel-perfect prototypes on their iPhones.

The system has two parts: the LiveView ScreenCaster and the LiveView iPhone application. The ScreenCaster is a simple application that puts a virtual iPhone skin on your screen, its dimensions corresponding to a real iPhone such that the pixels inside of the virtual skin are precisely as many as on a real iPhone display.

Once you’ve got the ScreenCaster running on a mac, all you need to do is make sure your iPhone is on the same wifi network and launch the LiveView iPhone app. Instantly you should see the name of your mac (and any others running ScreenCaster at the time). Clicking on your machine instantly brings up just the portion of the screen that you’ve ‘highlighted’.

But wait – there’s more! The ScreenCaster has an option to interpret touches as mouse clicks. Turn this feature on and your screencast becomes a two-way interactive prototype. Virtually any application on your mac, from the Finder to custom Flash apps, can quickly be ‘launched’ on your iPhone.

If you’re even thinking about building iPhone apps in the future we highly recommend grabbing this little app. Kudos, Nicholas!

LiveView for iPhone

Serialist is a helpful little utility we built to list your serial ports under Windows and easily launch terminal programs or other utilities on those ports.

This is handy when you are developing with Arduino or other microcontrollers and have multiple COM ports that can be difficult to keep track of. Also you may wish to launch different terminal programs with different settings, or use programs such as LabView or Processing scripts to interface with your serial devices.

screengrab-crop2

Serialist is a Windows system tray application to list serial ports and make it easy to run applications that make use of those ports.

arduino-menu

Arduino lists only the COM port number, not the name or type of device that is connected.

Serialist will display the type of port, in this case a "USB Serial Port" and allows you to connect to that port using your favorite terminal program (or other utility).

Serialist will display the type of port, in this case a "USB Serial Port" and allows you to connect to that port using your favorite terminal program (or other utility).

We often use TeraTerm when interfacing with Arduino and other COM devices since it works better than Hyperterminal and adds capability over the Arduino terminal window. Serialist users should install TeraTerm or change their Serialist configuration to launch another program.

configure-narrow

If we had another program, called Grapher that could do something interesting with data on a COM port, we can add it to the list of programs available to be launched.

Now Grapher is available to be launched.

Now Grapher is available to be launched.

You can also launch the Windows Device Manager from Serialist in case you need to change Serial Port number assignments or other serial port properties.

Download Serialist here: serialist. (source is also available on Google Code)

We recently completed a prototype that called for expressive LED lighting.  The team wanted the device to have a personality; simply turning LEDs on or off wasn’t enough. We wanted LED’s to “wake up” slowly,  gently turn off, and “breathe” (continually fade brightness up and down) with variable rhythm. More importantly, these LED animations needed happen at the same time. This requires the LED software to “multitask.” I used Arduino because it reduces complexity and development time.

There is no native support for multitasking in Arduino, so I developed a custom solution. Each LED output would be updated in sequence every time around the “loop.”  For example, if there are three LEDs, LED1 updates, then LED2, then LED3. The software loops and the LEDs are updated again. Each time an LED is updated, the Arduino software calculates the LED output brightness based on the desired animation behavior.

A software LED description (C++ class) of LED behaviors and LED attributes called LEDController was created. Each real LED is represented in Arduino software as an LEDController software object. Every time an LED is updated, its LEDController object calculates its brightness, then sends the brightness value to the Arduino (PWM) output that drives the LED.

Not much later, a project came along requiring simultaneous animation of 36 LEDs. There aren’t 36 PWM outputs readily available on Arduino, so I used two LED driver ICs (LTC3220), each capable of driving 18 LEDs. An I2C interface was added to the LEDController class so instead of controlling an Arduino PWM output, the brightness value for each LED is sent on the I2C bus to its LED driver IC.

The multitasking approach developed for LEDs can be adapted for other kinds of output devices.  For example, the LEDController PWM output could be converted to a reference signal for motor position or velocity control. Imagine controlling a set of motors, or a combination of motors and LEDs. Any project needing to control multiple analog outputs could benefit from this class or adaptations of it.  IDEO’er Dave Vondle has verified this class works with the Arduino Mini shield he created.  This would be useful if you have a project that requires rechargeable batteries or high power outputs.

I expect to continue to use and adapt LEDController, and I hope you find a use for it as well.  If you do, please post it in the comments and show off what you made!

(more…)

lion1

I taught a workshop with Anijo Mathew in October at the Illinois Institute of Technology on prototyping in electronics or “sketching in hardware.”  The class was a variation on a concept created by IDEO’s Haiyan Zhang called “Game On!”  The idea is to demonstrate how fast the participants can move from concept to interactive prototype.  It’s incredible what people with little to no previous experience can achieve in the span of a few hours.  We constrain the workshop to the creation of a game because it allows people to be silly, excited and not over complicate the challenge.

Sketching in Hardware

Sketching is a tool for conveying and capturing the right level of information as quickly as possible. When designing for interactive systems there is often value to bringing sketching off of the notepad and realizing the interaction in technology. In this workshop you will be introduced to a set of tools (in this case, Arduino + Flash/Actionscript) and will break into teams to create a game that incorporates a variety of physical interactions.

In the workshop, we had a bunch of electronic sensors that were plugged into a prototyping board called Arduino.  The Arduino was plugged into the computer with a USB cable that allows the sensors to control a game on the screen.  We started the day getting Arduino working with Adobe Flash on everyone’s computer.  After everyone got it working we split into groups and started brainstorming ideas for games.  The teams spent the last 4 hours cutting, gluing, wiring, drawing, learning and coding to end the day with working, playable games.  Check out the games they made and some technical details after the jump.

(more…)

final image

A few months ago, Martin and I were in New York doing the final photo shoot for I Miss My Pencil with Nicolas Zurcher. One of our tasks for that week was to create photography for each of the 3 chapter title pages: aisthetika, punk manufacturing, love + fetish.

We dipped a teddy bear in black latex (love + fetish). We wrote graffiti on a brick wall with yarn (punk manufacturing). For aisthetika, we wanted to represent the idea that objects we see everyday can be part of a multi-sensorial experience…even if it’s unexpected or just plain weird.

We immediately called Andre Yousefi (our master prototyper) and the guys in the IDEO shop. They’re up for anything, and it was not at all hard to convince them to find an old Mac laptop and cut off one corner and ship it to us in the New York office.  IT provided a broken laptop and Jim Feuhrer was at the band saw within minutes, and loving every minute of it. Then we had to glue all the bits back together to give it that perfect assembled look that we just sliced the corner off with a bread knife.

(more…)

IDEO’s Fabricio Dore (Munich) has published an article at Core77 about the virtues of hardware sketching and prototyping. Though admittedly biased, we recommend the piece to all you hands-on hackers out there…

1_dore.jpg

Hardware sketches are the tools or building blocks of technology design. They allow the designer to explore experiences mediated by products or staged in spaces without requiring engineering support during creative phases.

Lots more at Core77.

I live in Logan Square in Chicago and have this glass block window in the front of my building.  Because I spend too much time with computers, every time I looked at the wall it seemed like a grid of pixels.  I had seen LED pixel walls before, but never ones that would let light through during the day.  I had been thinking about this challenge when I heard Mike Kuniavsky and Tod Kurt talked about the BlinkM modules that their company ThingM makes.  These modules seemed perfect, so I ordered 126 of them and set to work.

Because the wall is public facing I wanted to make it interactive, so as someone walks by it reacts to their movement. I couldn’t resist the idea of making a “bricks” style game out of bricks, so this was the first project.  The video below shows this game in progress.  I wanted to design it so as people walked by, they would control the paddle and would start to play the game without intending to.

(more…)

We have developed a small “shield” board for the Arduino Pro Mini that allows us to easily prototype small battery-powered devices that contain motors, lights, speakers or sensors.  This shield adds the following features to the arduino board:

  • Battery charging of a lithium polymer or lithium ion battery
  • Voltage converter of battery voltage to 3.3V.  This will regulate any voltage in the range of 1.8-5.5V to 3.3V.  Without this the things that are powered would get less power as the battery dies (i.e. the lights would dim, motors would run slower)
  • 8 MOSFETs that allow I/O pins to control higher current loads.  The arduino can only source 40mA from a single pin.  This allows a pin to control up to 5A of current.  This is necessary for things like motors or large banks of LEDs

(more…)

As a going-away present for our intern Alex, an avid photographer, we decided to hack a toy camera.  Alex has an awesome signature hair cut, so we thought it would be funny to make a camera that prints his hair on all the portraits he takes.  The final design is super simple and only takes a little trial and error to get right.  We used a Diana, the plastic camera from the 60’s with a cult following.  It would also work with the newer Holga camera.

(more…)