Tag Archives: atmega328

The Process of SkeinMinder Design

It’s been a pretty busy couple of months!  I’ve been going full speed on SkeinMinder design, whipping it into production-ready shape.  When I show the pre-production Minder to my non-engineery friends, they tend to get a glazed look in their eyes, shake their head, and think that I’ve somehow magically conjured this mysterious circuit-board-thing out of thin air.  Well, it’s not magic, though it still feels kind of magical when you email files off and get real parts in the mail.  And it’s even more magical when those parts actually work just like you expect them to.  OK, maybe there is some magic involved.  And magnets.  There are definitely magnets.

But seriously, how does one techie chick with a computer and a small home workshop (and maybe like 12 years of PCB widget manufacturing experience) pull off a serious product design?  Let’s find out!

First, I cobbled together a proof-of-concept model out of off-the-shelf-parts, jumper wires, and breadboards.  (Apparently the original electronics breadboards really were boards used for cutting bread.  Crazy, eh?)  This let me play around with the idea without spending a lot of money.  A lot of ideas seem simple at first, but when you actually try to implement them, they grow in complexity.  A proof-of-concept allows you to suss out the main technical challenges right away.  Most of the software development I’ve done, and probably the setup with the most winding hours on it, is my initial messy-looking jumble-of-wires POC model:

Not too inspiring-looking, huh?  I cobbled together an Arduino Mega2560 processor board, an LCD and some buttons on a breadboard, and I started off with a Powerswitch Tail for turning on and off AC power.  Pretty much all of these parts are plug-and-play.  I didn’t even solder anything.  After a couple months of pulling C programming out of very dusty corners of my brain, I had something that totally worked.  Yay!

You might think that at that point, the majority of the work was done.  Heh.  The real work had just begun.

Ok, so I had this thing that totally “worked” on the bench.  Too bad that I couldn’t move it from the bench for fear of the wires coming loose.  Not to mention that when I wiggled some of them, weird things would happen.  Enter Phase 2 (aka, the ??? phase).  I needed to make a prototype.  And not just one that I could move around, but one that I could give to someone else to use.  Other people will always do things you didn’t expect.  Especially in the SkeinMinder’s case – every dyer has a slightly different setup.  We have different brands of winders, different swifts, we wind different numbers of skeins at a time of different types of yarn.  It was impossible to sit on my couch and predict how all of those factors would affect the Minder’s behavior.  So I got my first prototype into the hands of a dyer friend pretty early.  I wanted to know if the assumptions I made about how the Minder would be used corresponded to the reality of how it was actually used.

Better-looking, right?  The prototype was a first shot at parts I thought I would actually use in the production unit.  The Mega2560 was totally overkill for the job, so I switched to an Arduino Pro Mini with the 328P chip.  I soldered the breadboards together, wired up buttons and connectors, and shoved everything in a generic box.  I still kept the 120VAC switching as a separate Powerswitch Tail unit, though I also started to prototype my own power-switching unit using a Sparkfun SSR kit.  I also bought a lot of experimental parts at the time.  I think I went through 8 LCD displays, at least a dozen large buttons, and probably 50 small buttons until I got the look and feel that I wanted.  While simultaneously making sure the parts were readily available and wouldn’t make the Minder too expensive.  It turns out that 90% of good engineering design is being good at shopping.

One person testing your design is great, but more is better.  I decided to form a beta group of about 5 companies, all with different winders and winding needs.  I put out a few feelers to friends and colleagues, and happily got immediate and highly interested responses.  That was incredibly inspirational and motivational.  I had been trying to decide how “real” to make the beta units.  I knew I couldn’t hand-wire 5-10 more units like I had the prototype, there was too much wiring, too much potential for mistakes or intermittent connections.  After seeing those responses, I pretty much knew my answer.

Twelve years of experience with making electronics widgets has taught me this: when you think you have everything totally designed for production and set, you generally will learn something new from those units and need one more revision.  It seemed like the right thing to do was this: make what I considered to be completely ready production units, and deliver those to the beta group.  They’d still probably need one more revision, but it was not likely to be major.  I want to have a pretty well vetted design before launching a Kickstarter campaign for the SkeinMinder.  Pre-selling a mostly new design as a production unit is really just a recipe for missed expectations and a faking-your-own-death-on-the-internet style of disaster.

Designing for production, then.  Let’s do this custom circuit board thing!  This is probably the most magical step to most people.  It’s still pretty darned cool to me too.  I mean, I basically play an advanced version of connect-the-dots for a while and generate something that looks like this:

SM Processor Snapshot

And then I upload and order it and get a rendering that looks like this:

And then the actual part comes in the mail and looks like this:

And then when it’s all soldered together, it looks like this:

And when the code is loaded and it’s up and running, it looks like this:

Ideas to reality, just like that!

While I was designing the circuit boards (there are 2 in the SkeinMinder), I was simultaneously developing the mechanical box design and layout.  There are a lot of mechanical constraints – connectors are a certain size and some are relatively fixed, the LCD is a certain height, the small buttons are a different height that need to be adjusted to correspond to LCD height, the big red button is a certain depth, the power switching parts need clearances and heat sinks, the buttons need to be far enough apart to push easily, and NEVER FORGET TO LEAVE ROOM FOR MOUNTING HOLES.  To top it off, circuit boards are generally priced by the square inch.  So the smaller you can make them, the less expensive they will be to make.  Does this sound like a bunch of conflicting requirements that requires a good deal of spacial awareness to resolve?  :)  I love it.  Hate Rubik’s cubes, love tricky circuit board layout.

When the circuit board design was done, the final mechanical enclosure design basically fell out of it.  I do have fancy circuit board software, but I don’t have fancy mechanical design software.  Plus, the box itself was an off-the-shelf part, so I really just needed to make drawings for the custom machining operations that indicated hole size, shape, and location.  It was a total pain in the ass, but I managed to browbeat my circuit board software into spitting out some 2D mechanical drawings.

SM Mech Drawings

Which the box company turned into much nicer drawings.

Polycase_snip

Which UPS has told me has turned into boxes that are shipping to me today!

Some of you might be asking yourselves “Couldn’t she have saved some money on the beta units by drilling those holes and cutouts by hand?”  Uh, actually, no.  ABS plastic is a pain in the ass to work using hand tools.  It tends to melt and spooge out of the way instead of cut nicely.  Holes turn out oblong for no apparent reason.  The centerpunch always manages to slip at the last minute, making your hole locations off so you have to drill them out.  I did manage to do one box by hand, and it’s even good enough for some very controlled beauty shots, but I wouldn’t give that ugly ducking to a paying beta tester, that’s for sure.  If I’m going to make a production unit, it’s going to look like a production unit.

Lastly (I know, right?  There’s yet another thing?!), there was the overlay design.  I originally thought about having a custom membrane switch made for the top.  They’re the style used on a lot of kitchen appliances and cheap remote controls.  They’re relatively flat plastic but have little domed buttons you press.  Well, a full-on custom membrane switch with the integrated buttons and flexible circuitry was prohibitively expensive.  Even in quantities of 100, they were still $50ish each.  Not including setup costs.  So that wasn’t gonna happen.  The next best thing (and much less expensive thing) was a custom plastic label with embossed sections, which would stick to the top of the cover and over physical button stalks that would poke up through holes in the cover.  It was mechanically more complex for me to implement because I had to coordinate button placement on the circuit board , hole cutouts in the cover, and embossed sections on the overlay.  But they’re  only about $8 in qtys of 100, have good tactile feel from the physical buttons, yet have the same professional look of a membrane switch, so they’re a much better solution.

Overlay_snip

I should also mention that the overlay is the one place where I sought external professional help.  As much as I’m good with dyes and yarn and circuit boards, I am not so good with graphic design.  I mean, I have a discriminating eye and can tell you what I like and don’t like and why, but when I put something together myself, it tends to look like it was done by an engineer.  You know?  Everything is too square and neat.  I’m fortunate to work with a terrific graphic designer (who is also a terrific knitter), Kimberly Roy, who put the finishing touches on the SkeinMinder.

Why the fancy overlay in the first place?  I mean, why not just use a sticker with some holes for the buttons?  Well, if you’ve ever done a boatload of yarn winding, you’ll know exactly why.  It’s pretty dirty business.  Dust and tiny little yarn fibers go everywhere and pile up, and I don’t want them to get into the enclosure and muck up the button works.  It’s also nice to have a clear plastic layer over the LCD, to protect it from scratches.  Plus, it also gives the enclosure a tiny bit more splash resistance for when you knock your beer over.  :)

So, yeah.  That was pretty much my July and August right there.  Everything from designing circuit boards to specifying enclosures, to designing overlays.  I can’t even tell you how rewarding it is to see it all coming together.  My poor friends are getting pictures of electronics and texts with A LOT OF CAPSLOCK AND EXCLAMATION POINTS EVERY DAY!!!!!

Are you ready for a peek?  Fortunately you can’t see my really badly hand-drilled misaligned holes though the paper overlay mock-up.  :)

Drumroll, please.  May I present….

The SkeinMinder ™

Not bad for a techie chick with a computer and a small workshop, huh?

Want SkeinMinder news?  Sign up here.
Want to be on the beta program waiting list?  Fill out this form here.


%d bloggers like this: