ubbcom Works!

Got it working very quickly after a couple of redesigns.

My first etch came out pretty iffy, as you can easily see:

So, I redesigned the board a bit and transferred it.

Ah crap, forgot to mirror my transfer. Let’s try that again:

Nice. The only sketchy trace was the one that connects to the RXD line, but I tested it and electrically, it’s okay. So, I assembled the board and planned to find a broken USB cable and solder it onto the 4 holes at the top of the board.

Unfortunately I couldn’t find a USB cable, so… I made my own by taking a random piece of 4-conductor wire and soldering a PCB USB connector to it.:

Yeah, that didn’t work so well. My computer recognized that a device was plugged in, but failed to talk to it. I think it might have had something to do with the fact that the cables weren’t stranded. Or, I may have killed the FTDI chip because I applied a fair amount of heat when I soldered it.

So, it was back to the drawing board. I designed a new board with a built-in USB connector so that I could just connect it to my computer by plugging it in directly or by using a USB extension cable.

I’ve discussed the MITERS etching process before. It’s pretty great. Basically, the steps are:

  1. Print out the board design onto glossy paper with a laser printer.
  2. Sand down the board you want to etch a little bit to roughen up the surface.
  3. Clean the surface with acetone.
  4. Put the printed design and the board together and stick it through the laminator.
  5. Remove the paper quickly under water. I discovered the technique is to scrub the paper away rather than to peel it; the transfer comes out usually nearly perfectly.
  6. Throw it in ferric chloride and swish it around for 10 minutes.
  7. Wash with acetone.

I wired RXD and TXD together and tested it out. It worked!

Afterward, I put some male headers onto the device and stuck it in a breadboard to create the demo video above.
I’m pretty sure the entire device can operate with just the FT232RL alone. The rest of the components on the board range from somewhat important (ferrite bead, filter caps) to purely asthetic (debug LEDs). I bet you could get rid of it all and it’ll work fine. It’s more expensive than a typical MAX232 design (which probably totals about $2.50), but it doesn’t require RS232, which is kind of a plus. I’ll probably make a cute little MAX232 breakout board in the future as well, though.

ubbcom: Etching Really Small Things

It’s almost time for me to graduate, so I decided to take a little time this weekend to do something other than freak out about making sure I have everything taken care of.

I was staring at a breadboard on my desk and it occurred to me that I’m always ripping up my MAX232 chip and associated components to save space for one project while putting it back so that I can use serial communication for the next project. So, I thought, why not make a decent breakout board that uses one of the FT232RL USB Serial drivers that I have lying around?

The design is very simple; it’s basically the same schematic as Sparkfun’s FT232RL breakout board. However, unlike that board, it’s designed so that it sits in the middle of the breadboard, using only 2 rows (and 4 pins). It also allwos one to use USB to power the breadboard.

First, I wanted to test to see if I could actually etch an SSOP28. They have an extremely fine pitch, so I knew it would be quite difficult to etch them. Using MITERS’s lamination method, I tried it out and had some decent success. I only have a picture of the final etch, but I’m convinced that with a little refinement (not to mention fixing the blatant bugs in the design), this design is totally etchable with minimal manual intervention. I had to clean up a few toner-transferred traces with a knife, but overall, the transfer process went well; the laminator applies a perfect, even amount of heat to the board and toner as it passes through and only takes a few seconds. For a design with such a small pitch, one of the issues is that the toner smooshed and covered a slightly larger area than it should have.

After I cleaned up the traces, I etched the board with very good results. It took a while (probably 15 minutes) to clear out the tiny little spaces between the SSOP traces, but it definitely worked in the end.

I’m going to re-route the board and etch a prototype that should theoretically work, hopefully, maybe, if the stars are aligned.

ubbcom’s github repo is here.

Update on Everything

I haven’t blogged in quite some time now… Time for an “update” post.

  • There’s about left to go before I graduate, which means that things have gotten really busy with schoolwork. I don’t think I’ll have much time to work on my business cards for the time being. :/
  • That also means that I’m spending most of my time on software engineering and not electrical engineering, which is kind of saddening. I miss building cool things.
  • This summer, I’m working at Lincoln on my Master’s thesis, chanem, a multifunction channel emulator. It’s a pretty interesting project.
  • When I’m not at work, I have a whole bunch of project ideas I want to work on. I want to learn more about analog electronics, so I want to build a plasma speaker for starters. In the happy world of signal processing, I want to build a device that sits between an audio output device and an amplifier and reduces the volume when it detects people talking (I’ll probably do a software implementation). I’d like to make ACRIS wireless; I’ve found a way that’s cheap enough to do this. I’d like to modify my speakers to add subtle, non-gaudy visualizations to them. I also have a few other CNC projects that I’d like to work on.

    It’s an enormous number of things to do, I realize. But I plan to spend a lot of time at MITERS, so I’ll probably get at least something done.

  • I really want to learn how to cook. Every once in a while, I browse food-related subreddits and think about what kinds of healthy meals I could make in large quantities and then eat them throughout the week, since I don’t have a lot of time.
  • So yeah, no photos or project updates this time. Hopefully I’ll be able to show off something soon. :)

    Joe

ACRIS at the Cambridge Science Festival!

I demoed ACRIS at the Cambridge Science Festival’s Mini Maker Faire. Charles and Shane were also there demoing their spectacular skills.

One of the organizers, Chris Connors, took a few photos. Here’s me:

I got a few ideas from talking to people concerning color temperature adjustment. ACRIS might become a lightbulb replacement one day. :)

Failure :(

Well, my first attempt at assembling bcard was a complete failure. But, ultimately, I learned a way that this won’t work and have some ideas for how to modify the design.

My idea was to drill slots for each of the 4 LEDs so that they would be mounted sideways and cut out a hole for the watch battery. Unfortunately, the slot drilling was really messy and non-repeatable. It also required a lot of manual filing. Yuck:

It would be nice to mill slots, but mill bits are expensive and MITERS doesn’t have an unlimited budget, so I’d rather not grind down a ton of mill bits. A friend suggested slicing into the corners of the card to make a slot for the LED. That’ll make routing a lot harder (maybe impossible?) but it will be feasible to install the LED that way.

However, that still doesn’t solve the fact that it’s basically impossible to solder to the side of a surface mount LED. I’m very much stuck on what to do there.

I didn’t think through the battery holder very well and couldn’t find any sheet metal, so I improvised something out of wire. It’s cute, but the battery connector needs serious revision. I have some new ideas in my head, but I’ll need to buy some thin sheet metal first.

Oh well, now I know how to not make a PCB business card… back to the drawing board. :/

Woo — Etched Business Card!!!

Finally, I got a chance to try etching a bcard board using MITERS’ awesome PCB etching process. The results were absolutely fantastic. Here are a few photos from the process:

The key thing that made this possible was the laminator, which evenly applies a coating of heat to transfer the toner cleanly and without smudging.

There was only like 1 tiny length of trace that didn’t transfer, so I cleaned that up quickly with a pen.

After washing off the paper, I let the PCB sit in the agitator for about 15 minutes, checking it every 2 or 3 minutes to make sure I wasn’t over-etching.

The results were almost flawless. There are a couple of weak-looking traces on the edges, but I should be able to clean those up for the next iteration by making them much thicker (it’s harder to transfer traces on the edges). Overall, though, it was basically painless to etch 10 mil traces with this process.

Next up, I’ll be attempting to solder and program the boards… Oh yeah, I need to actually write the firmware now.

Receiving IRC Messages as Text Messages

Bah, I’m a nerd. I’ve been using IRC for… like… ever. More recently, I decided to integrate all of my IM accounts into my IRC client (Weechat! — the superior alternative to irssi) with Bitlbee. So, now everything goes through my IRC client — Google Talk, AIM, Twitter, etc. Awesome.

But sometimes, I’m away and someone sends me something important over IRC or one of my IM clients and in my continuing effort to be omnipresent on the internet, I’d like those messages sent to my phone. I could just use a Jabber client for my phone, which would give me two-way communication, but what I really wanted was a one-way “paging” system.

So I built irc2sms. This is a very simple ZeroMQ-powered script that will take messages received when away and forward them via SMS to a mobile phone using Google Voice. It’s absurdly dependency-heavy, requiring Weechat, the zmq_notify plugin, Ruby, the ZMQ Ruby Gem, Python2, the ZMQ bindings for Python, PyYAML, and pygooglevoice.

But, configuration is very simple: make a ~/.gvoice by just running Python and importing googlevoice. Then, edit it, and run irc2sms.py -h to find out the command-line options.

Yay niche use cases!

First steps toward a PCB business card

I have been toying around with some ideas for PCB business cards. I wanted something cheap, clever, and not gaudy. I also wanted to make something that I could potentially etch myself to save on cost. What I’ve come up with so far is bcard. In addition to having my name, contact information, and QR code linking to my website, I designed a simple capacitive touch sensor scheme whereby pressing your finger on the button will make the LEDs located at the corners of the card light up. These are blue LEDs, so I’m actually thinking of inverting them so that they point into the PCB. As a result, the PCB should actually fluoresce. But that might not work… IDK.

Here’s my initial design. It uses an ATTiny10, a small transistor, 4 LEDs, a cap, and a resistor. The cap is probably unnecessary. There’s also two pads which I’ll probably make generate signals or something fun. The battery holder isn’t showing up correctly, but basically it’s just two pieces of metal that will sandwich the battery, which fits fully flush in the board.

I’m going to try to etch it soon and see how it turns out. It might be a total disaster, but I’m hoping otherwise. :)

IDK, how about some music?

I disappeared for a while, I know. I’ve been really hosed with schoolwork. This semester has been turning out to be much more work than I originally anticipated it to be.

In my spare time, I’ve been working on a design for a really cheap, easy-to-produce PCB business card. I’m going to be posting about that soon.

Anyways, I haven’t touched my turntables in forever, so I decided to mix a little today. After screwing around for a while, I came up with is starting to become a mashup of Dodge and Fuski’s Aerophobia with Labrinth’s Earthquake. Here’s a first pass at it:

The levels at the beginning are screwed up, but my overall idea for the mashup is there. Maybe I’ll work on improving it later.

Glowscape – An Experiment with Glowstick Dye

It’s been like forever since I’ve blogged. Sadness. Here’s something cool though. :)

A while back, I bought an absurd amount of glowsticks for a few bucks on Woot.com. I was wondering what I could do with some of them.

One idea I had was to make some kind of art thing or whatever. After a little preliminary investigation, I discovered that the glass vials in the glowsticks were full of the fluorescent dye that can also be activated by ultraviolet light. So I decided to test it out.

Basically, I just taped a UV LED to the bottom of the glass vial that normally goes in the glowstick. It actually looks not bad. I set up a quick demo with some UV LEDs. Hmm… what could I do?

Maybe a VU meter for sound? Yeah, that might work. :)

So, I grabbed 16 red, orange, yellow, and green glowsticks and headed over to MITERS to get to work.

The first step was to sand down the LEDs so they were flat. First they got the bandsaw treatment, followed by some more gentle loving with fine-grained sandpaper.

Hell yeah. All right, time to cut the glowsticks open and extract the glass vials.

So the other stuff left in the plastic part of the glowsticks is high concentration hydrogen peroxide. I decided to save it in a bottle. The concentration is so high that it’s actually very sludgy.

Next step was to sand down the end of the glass vials to make them as flat as possible. Then, I used duct tape to hold them against the UV LEDs.

All right. So then, I ended up letting the project sit for several weeks because I got super busy at the start of the semester. I also had to layout a PCB for the design I wanted. Essentially, my plan was to make something compatible with ACRIS but also provide a standalone mode so that it can independently analyze music.

But, I didn’t want to pay people to produce a board. I wanted to do my own etching. Previously, doing this was extremely difficult because MITERS didn’t have the right tools to do it.

To refresh your mind, etching goes like this. First, print out the PCB layout onto photo paper with a laser printer. Then, use a heat source to transfer that laser printer toner onto sanded copper-clad board. Next, throw that board in PCB etchant and wait for the copper you don’t want to disappear.

But it’s never that simple. The real problem is the transfer. My awesome girlfriend Jordan used a clothes iron to perform the transfer. This method is incredibly unreliable. It’s really hard to get right and every time I’ve done it, I’ve always lost huge portions of the transfer. Jordan made several boards and the later ones she built looked absolutely spectacular — she figured out the exact amount of ironing time and pressure. I’ve tried to do this too, but I’ve never been able to get it right.

But I got to bypass all that because MITERS recently bought a laminator. Laminators provide an even amount of heat across the board with relatively little pressure, so they transfer the toner perfectly every time. Check this out:

The other awesome thing is that MITERS found some new paper that’s really perfect. Usually, it is recommended that you use glossy photo paper. But, a lot of photo paper is very plastic-y. So, when you iron it, the plastic actually forms a boundary so that when you try to wash off the paper after the transfer, it never gets soaked. This new paper isn’t photo paper — it’s just regular glossy printer paper. And it works perfectly because it washes off really easily.

Another thing is that I made the traces really thick because I didn’t want to take any chances. You can’t really do very complicated boards this way. In the future, I’m going to

Next step was to throw it in the etchant. MITERS reuses etchant a lot, so in combination with an agitator, the etching time was about 30 minutes total. It’s important to constantly check it because you don’t want to etch longer than you have to — otherwise you may etch underneath the toner.

Nice.

Okay. Time for drilling. This one is really hard. It’s very difficult to drill small holes through fiberglass — you can easily blow through a pack of bits if you don’t know what you’re doing. MITERS has this cute little drillpress that I forgot to take a picture of. But it does a great job of drilling stably so that the bit doesn’t break.

Okay, time for board assembly.

Ugly jumpers are ugly. :(

My first idea was to align the tops of all the tops of the glowstick vials.

Then I didn’t like the lead spacing at the bottom, so I put it back.

On the first power-up, one of the UV LEDs blew out. Not sure why — I think the quality control on these LEDs is kind of bad.

IDK, it’s not as bright as I would have liked, but I’m trying to figure out what I can do about that. Here’s a video of it just doing a simple chaser effect:

Schematics and board layouts are available on the project page.