Thursday, September 27, 2012

1-Day Project: Pantry Light

We have two pantries in our flat, one of which could use some light.

There's an outlet in there, but a simple solution won't do: I have more circuitry and time on my hands than I can handle, and the least I can do is make an over-complicated pantry light.

Parts lying around to use:

  • AC-DC converter blocks with screw-terminals outputting 12V at 2A. I have a bunch of these-- came with the LED strips.
  • A length of white LED strip.
  • Lots of TIP-120-style MOSFETs, intended for a second light suit. It's fun to have a lot of high power switches around.
  • Spare Arduino-compatible board "StripDuino" by "Tinkeract.com," now defunct it seems. Thanks for sending the free board!
The idea is simple-- rest your hand on the large strip on the door sill as you scan the pantry contents. The light will turn on if you tap the strip, or it will fade if you leave your hand on it.

This design solves the problem uniquely with:

  1. Very large switch surface,
  2. Variable brightness by holding the switch,
  3. Indirect lighting from compact, dense LED strip tucked out of view.
I have a hardware sketch working in terms of the key elements of the controlling Arduino system:
  • Capacitive touch sensing works between pins D5 and D6 with a 1M resistor
  • Touch surface works: aluminum foil with soldered wire plus a layer of hot glue and tape.
  • PWM works with the MOSFET to control the LED strip nicely, with the board's 3.3V logic.
For the light strip at full power, I measure 240.8 mA at 11.85 V, so 2.85 W of power. This is not much but it scales proportionally to the length of the strip.

To do:

  1. Capture the working circuit in an Eagle schematic.
  2. Build a looping sketch with the tap/hold fading behavior.
More to come...

Saturday, July 28, 2012

More Boards

Arduino-compatible boards I've noticed lately, to be added to the spreadsheet: What else is out there?

Friday, May 25, 2012

Arduino Leonardo Available!

It has been a while since the design was announced, but Arduino Leonardo boards are actually making their way to vendors-- you can get one now! (Er, if you can find one, they seem to have sold out of Adafruit and SparkFun...)

The big change with this board is the switch from the ATmega328 to the ATmega32u4, which includes built-in USB, so no more FTDI chip or secondary ATmega to handle USB. Other substantial changes that will affect compatibility:
  • SPI not connected to digital pins
  • I2C pins now D2 and D3
  • more analog inputs
  • separate USB serial
I feel bad for shield-makers needing to rework things for this layout, but such is progress I suppose.

With 32U4-based boards being available and officially supported in the new IDE, I'll [sigh] add just added them and a few clones to the spreadsheet over the next few days:

Tuesday, May 1, 2012

Flight Suit Project Review

Since building my Flight Suit last year, I haven't posted many photos or videos of the finished suit or of its inner workings, so I will make a series of posts about it over the next few weeks. I would not have been able to complete the project without the generous sharing of the OSHW community, and I hope some bit of my project's details will be of some use to somebody.

All work on the suit revolved around a composite image I put together early to lay out the LED light strips, with each level numbered (0-11) and each segment getting a unique letter designation (A-X). Arms are shown up and down since the suit adapts to the arms' positions, lighting up each segment according to its current level.

From that composite image, I built a segment spreadsheet to keep track of the 22 LED strips through construction and programming. It includes all of the segments' lengths and progress steps, plus designations of levels, segment letters, and channels.

The system's electronic components are distributed throughout the suit (image at right; click to go to Flickr for more notes) using existing fittings on the suit when possible:
  • The 12V Li-ion battery pack which powers the suit fits nicely in the right thigh pocket.  Its switch acts as the main system on/off switch.  Spare battery packs fit in zippered ankle pockets.
  • The main system board sits in the upper left arm pocket: an Arduino-compatible board with a shield containing the left arm accelerometer board and jacks for the right arm accelerometer, MOSFET boards, ZX-Sound, and remote control.
  • The right arm accelerometer sits in a small pocket sewed onto the right upper arm.
  • MOSFET boards hang in the chest pockets, attached to the leads routed through the suit to the LED strips.
  • The ZX-Sound audio board is mounted with Velcro to the included patch on the left chest.
  • The remote control dangles from its cat 5 cable or attaches to an existing Velcro strip at the waist.
I plan to post at least once on each of these topics:
  • System layout, schematics and final firmware
  • LED strips: planning, splitting/making, mounting
  • MOSFET boards: driving the LED strips
  • ZX-Sound: incorporating audio response into the system
  • Arm accelerometers: reading and filtering and controlling segment/level mapping
  • Remote control
  • Main program design: fast looping, modes, ShiftPWM
  • Wearability: marrying the system and the suit, sewing, gluing, maintenance
If there's something else you're curious about, please email me or post a comment. As I post more, I will continue to upload photos to my Flickr set.

Wednesday, April 25, 2012

Arduino-Compatibles on Make:

Phillip Torrone posted in his Soapbox column on Make: yesterday: 'My Top 10 Favorite Arduino-Compatible “Clones” and Derivatives' with examples showing the broad spectrum of board variants. All of them (except the Menta) were already on my Arduino-compatible boards spreadsheet, and after commenting with a link, I've been inundated with emails suggesting other boards to add-- wonderful!!

Yesterday I added: Suggested boards I'll look into: AllgaierShops Breadboard Adapter (BYO ATmega), SMDuino (design only), MHVBoard (also design only), two boards from Ro-Bot-X Designs, JeeNode Micro, and maybe Akafuino X and a few other xmega boards which are not strictly Arduino-compatible (yet?).

Wednesday, April 11, 2012

New Workshop!

We moved recently, and one of the features that drew us to our new home was a sun room in the back, about 9'x15', full of light and perfect for a workshop!

One corner is ideal for the laser, with a dryer vent for routing its (filtered) fumes outside. With two rolling racks for storage and two desks, I hope we'll have room for a small heavy bench and drill press stand. Good thing the Printrbot is (er, will be) small, we have big plans for this (not so) little room.

Funny to look at my "Workshop!" post from two years ago, most of those projects haven't advanced much, but the grinder timer has gone through a few versions and the flight suit ended up being by far my most complicated project so far.

Tuesday, February 28, 2012

Projects Lately: Helmet, Printrbot, ...

I've been busy lately tinkering on and off and thought readers might be interested in what I've been working on.

I spent a few nights of spare time last week rebuilding my bluetooth ski helmet, which is now working perfectly with a new main board. It's a glove- and snow-friendly conversion of a Motorola S305, retaining nothing but the main PCB, with the earphones and mic broken out to 3.5mm jacks, all buttons broken out to .1" pin headers, a much bigger battery, and an Adafruit USB LiIon/LiPoly charger. I'll post a few pictures soon, and it will get a full shakedown this weekend at Alpine and/or Squaw.

I backed the Printrbot project on Kickstarter a few months ago and received the printed parts in the mail recently, so I've got the 3D printing bug. After raising over 33x of the target funding, its creator Brook Drumm is understandably busy getting promised kits out to other backers. That leaves a lot for me to get together, mainly the hardware, electronics, and hot end, but without an official BOM I'm picking through lots of incomplete lists and RepRap parts wikis. The mechanical design being so much simpler than a Prusa Mendel is what got me interested, and I'm happy working on it when time allows over the next few months. It could be Arduino-driven but that's still up in the air; Sanguinololu electronics are included in the complete kit, so I have a few Pololu A4988 stepper driver boards on the way to play around with.

I did use an Arduino (actually a Boarduino) a few weeks ago to build something for work, but as cool as it is, I can't discuss it here except to say that it's camera-related... of course :)

Tuesday, January 31, 2012

MRF24WB0MA Not Working... Yet

I tried the test sketch from the i/o Blog, and... nothing! The Script got stuck in the initializing() function, and kept resetting every few seconds. I added a little debugging to narrow it down, looks like it just won't connect. To do:
  1. The wiring: I need to check everything, I really thought it was wired up right. Also I wonder about grounding more of the module's pins, to be closer to the WiShield schematic (right).
  2. The module might be having a hard time talking to my AirPort, so I'll try turning off security for testing. If that doesn't work, I'll try setting up a second network with one of the misc. wireless routers I've got in the digital dustbin.
  3. Look around for other simple example sketches, there might be more info on this module and Arduino in the links I scraped together for the first post on the module.

Wednesday, January 4, 2012

MRF24WB0MA Breakout

I soldered this up last night, using an EAGLE CAD board layout to guide me. The headers are set up and labeled and I'm ready to use the example from i/o blog-- more tonight!

Tuesday, January 3, 2012

WiFi Module for Arduino Projects

Microchip offers a small (21 mm x 31 mm) WiFi module-- the MRF24WB0MA (rolls off the tongue, eh?), datasheet here (pdf)-- for under $24. Talking to it looks straightforward, and a few people have folded it into their projects with great results.

THANKS to the fine folks at Farnell (Newark if you're in the US, like me), I find myself with one of these amazing little modules, and I'm starting to explore using it in a project or two.

The module is wired up for easy use in the products listed below (and probably more), but the prices all seem high to me given that you're paying more for the supporting circuitry than for the WiFi module itself:
  • AsyncLabs used to sell a few products based on the MRF24WB0MA: the BlackWidow Arduino-compatible board ($75), compact YellowJacket ($55) Arduino-compatible, and the WiShield Arduino shield ($55). AsyncLabs stopped sales last March, but fortunately EAGLE-format schematics and board files are still online (eg. WiShield V1 and V2) and the library for Arduino too.
  • Diligent sells a PmodWiFi ($60) module with a 12-pin (2x6, .1" pitch) header.
  • Microchip sells a Wi-Fi PICtail/PICtail Plus breakout module ($60) with a 28-pin (2x14, .1" pitch) header,
  • MikroElektronika has two options using MRF24WB0MA's: WiFi PROTO ($54) and EasyWiFi ($59).
  • OpenPICUS sells the Flyport module (€49, ~$64) which includes a Microchip PIC 24F and has an IDE for programming as a standalone module.
  • Seeed Studio sells the WiFi Bee ($70) with 2.0mm XBee header breakouts and an ATmega328 on board.
I first saw details on using the module on its own on i/o Blog, where Manis chronicled his success using the module with minimal components, building a stripped down version of the AsyncLabs WiShield and building a sketch with the library. More on that in the next post...

Monday, November 7, 2011

IEEE Spectrum: The Making of Arduino

An excellent article in IEEE Spectrum magazine gives a rundown of the origin of the Arduino board, outlining the motivations behind the open source design and the increasing impact it has on creative communities all over the world. It's a good read for answering the question, "What is Arduino?"

Thursday, November 3, 2011

Flight Suit Excursions, Grinder Timer V4

I've had a lot of fun with my Arduino-based projects lately! I got the flight suit working again for Decompression last month and had a blast dancing and hanging out in the crushing crowds. I wore it again last Saturday night for the work Halloween party and then again Monday night for 7 Walkers at the Great American Music Hall where Liz balanced out my high tech audio meter with her low tech VU meter-- analog and fully manual :)

Next up is V4 of the coffee grinder timer, a one-off to replace the V2 timer we're using now. It's an all-in-one circuit board designed to fit in a Hammond 1455-series case. There's an AC-DC converter on the board to supply 5V, and breakouts on the left (in white) for power and on the right (black) for the display, light sensor, rotary encoder, and lit button. I may finish it without the light sensor since it's so close to being done and looks so much better (especially on the inside!) than what we're running now.

Sunday, September 11, 2011

Suit Success, Refurbishment...

Three nights out on the playa, the light suit did not disappoint! So much fun to embody the bouncing red LED, for me and folks around me. It ran so much the second night-- music response mode and a high brightness can really draw current-- that I went through both batteries, ending the night unlit! The third night with all batteries charged and on-hand, there was no shortage of power and I ran it bright, but it was getting rough after so many miles, with a few segments not responding and a few dead 3-LED groups. All the time, the system worked beautifully, and I left it running when I finally took it off and stuffed it in a box Sunday morning, rippling and flickering, so bright before switching off.

Taking it out of the box Thursday in a puff of dust, a few segments did not respond but the system worked just as when I put away. I stripped out the main left arm board, all board-to-board cabling, the MOSFET boards, and then the light strips, pulling them off one at a time, removing the right arm accelerometer last. The suit and (surprisingly) sneakers made it through the wash and look great. I'm checking LED strips now, making a to-do list of fixes, remakes, and changes. I'll clean off all the boards and hook it together for a full pre-test, and then stuff it back in the suit.

Tuesday, August 30, 2011

Flight Suit Works!

So much to do before we take off for BRC but the suit is fully functional!

I'll post photos and videos and all design files after the long weekend at some point, but here's a video showing the audio mode, which was the target all along:


Polishing work to deal with:
  • Test foot "A" and "B" strips Velcroed to shoes; hook and loop glue should be cured by tonight.
  • Finish remote control: straighten display, sand outside, glue top layers.
  • Tidy up buttonhole wiring and shift bands to correct alignment along Velcro loop bands.
  • Finalize light strip lengths: clip any extra length and seal ends.
  • Come up with a better remote control attachment... clip? hook? Velcro?
  • Make a cover for the ZX-Sound audio input board.

Wednesday, August 24, 2011

(F)Light Suit Progress: Almost There!

So much progress in the last two weeks, the big milestones being...
  • I got the MOSFET boards and built three-- they worked right away! As expected I needed resistors between the 595 outputs and the MOSFETs; didn't notice that until I hooked up the third one and things weren't behaving. I'm not crazy about the screw terminals but they'll be OK.
  • Testing the MOSFET outputs with all 22 segments-- 53' of light, so bright! The first tests were just "All Fade" mode.
  • Expanding the program to sense arm angles. The routine automatically sets arm levels, either up/down or matching angle, and how many levels there are (since arms up can create a new level).
  • Adding a proper "Rolling" mode to sweep a band or bands over the whole suit, top to bottom, with variables delay (ms), brightness, direction, and number of bands (density). Seeing all the bands rolling through was a relief.
  • Sewing is awesome. I've sewn 10 out of 19 "loop" side Velcro bands into the suit: both legs and the hips and waist.
  • ZX-Sound works! Filtering and sampling will be the last things I dial in, but I have working bouncy light code, smoothed and at whatever Hz I want, dynamically computing the high and low so it will bounce if it's quiet or loud.
Still big items:
  • Integrate audio sketch into main line, finish filtering code, and use filtering code for gravity sketch,
  • Finish sewing hook-side Velcro strips onto the suit,
  • Cut the loop-side Velcro for the light strips and stick it on with silicone,
  • Measure and cut and route in-suit leads: 4 solder points each, 6 pieces of shrink,
  • Sew in conduit for left-to-right board, battery, audio, and accelerometer leads.
  • Address shoes, hat(s), headband mounting and routing...
That's all I can think of for now, back to sewing...

Thursday, August 11, 2011

Nanode: Arduino-compatible with Ethernet

The Nanode project from (the?) London Hackspace has been on my radar but didn't make the spreadsheet since I was waiting for it to become available. Well, it's out ($40 kit), and it seems to be a hit!

Unlike the Arduino Ethernet and shield and other boards with built-in ethernet, the Nanode does not use the Wiznet W5100, instead using the Microchip ENC28J60 found in JeeLabs EtherCard, and you can even program it over ethernet!

Not all rotary encoders are created equal...

I had a hell of a time getting the (F)Light Suit remote control to work with the Modern Device LCD117 backpack and inexpensive BI EN11-HSM1AF15 rotary encoders. It turned out that I was having two issues:
  1. The LCD117 was getting its updating commands too quickly, so chose to reset instead of display, and
  2. the rotary encoders make contact so quickly when stepping up or down, my debounced code for bigger rotary encoders with more even click timing wasn't working.
Preventing the LCD117 from updating too quickly solved the first problem, and redoing the rotary encoder code from scratch solved the second problem. I'll post code later when the project is complete, but I based it on Max Wolf's very simple first example from the Arduino Playground rotary encoder page. The interrupt-based examples are too cryptic and (I think) unnecessary in a sketch that loops at a few KHz, which all of my sketches run at.

Wednesday, August 10, 2011

(F)Light Suit Major Components

The main components of the (F)Light suit:
(Updated 8/15/11)
Component(s)SourceStatus
LED stripsDealExtreme 22 strips with connectors, need sealing and velcro backing.
8-channel MOSFET Output BoardsDorkbotPDX board orderThree built and tested, work perfectly
Arm accelerometers Modern Device Left one on main board, right attached with 3-wire lead across shoulders
Black flight suit Amazon Needs velcro for LED strips
Arduino-compatible main board: Minimalduino 105 DorkbotPDX board order
Arduino interface board: Adafruit protoshield Adafruit Industries Done, ready for mounting and cable threading. Ports for MOSFET output boards, right accelerometer, remote control, audio sensor
Remote control homemade, various parts Needs laser-cut acrylic surround, rot 2 flaky
Batteries eBay 12V, 4800mAh Li-ion battery packs with barrel connectors, powering third MOSFET board.
Audio input: ZX-Sound board RobotShop.com Test, add light, change connector, paint, velcro back
Missing anything?

Wednesday, July 27, 2011

Ethernet Arduinos (and Compatibles)

Also on the spreadsheet, three boards with built-in ethernet:
  • There's finally an official Arduino Ethernet ($60), complete with RJ45 port. It has an FTDI cable header for programming (no USB), a microSD card slot for storage, and there's an optional PoE daughter card.
  • SparkFun also released an Arduino-compatible board with ethernet, the Ethernet Pro ($55), but without the SD card slot. It's less cluttered than the official board, hopefully the price will come down as more people build projects around them.
  • Additionally, the Freetronics EtherTen ($70) includes a microSD slot and (mini) USB interface.
All of these are compatible with an Arduino (or Arduino-compatible) board with the ethernet shield ($40) on top, but I wonder: will shields fit on any of these without hitting the magjack? Or do they use taller female pin sockets? They're also equivalent to an Arduino hooked up to a Wiznet W5100, eg. with a WIZ811MJ module ($20!). Too bad Adafruit doesn't sell the ethernet module breakout shield anymore, but at least the design files are still available.

Call me cheap, but these all seem overpriced, being based around a $4 microcontroller! With a basic Arduino board at $20 and WIZ811MJ module at $20, why isn't the SparkFun Ethernet Pro $40 or $45?