Surface Mount Repair Practice with Mr. Robot Badge

Years ago at a past Hackaday Superconference, I had the chance to play with a small batch of “Mr. Robot Badge” that were deemed defective for one reason or another. After a long story that isn’t relevant right now, I eventually ended up with a single unit from that batch with (at least) two dark LEDs in its 18×18=324 array of LEDs. I thought trying to fix it would be a good practice exercise for working with surface-mount electronics, and set it aside for later. I unearthed it again during a recent workshop cleanup and decided it was a good time to check my current surface mount skill level.

I’m missing a few tools that I thought would be useful, like a heat plate or hot air rework station. And while my skills are better than they were when I was originally gifted with the badge, it’s still far from “skilled” at surface mount stuff. (SMD for surface-mount devices, or SMT for surface-mount technology.) One relatively new tool is a dedicated LED tester, and I used it to probe the two dark LEDs. One of them would illuminate with the test probe in place, and a dab of solder was enough to make proper electrical connection and bring it to life. The other one stayed dark even with test probe and would need to be replaced.

Looking in my pile of electronics for a suitable doner, I picked out my ESP32 dev module with a flawed voltage regulator that went up in smoke with 13V DC input (when it should have been able to handle up to 15V DC). This module has a red LED for power and a blue LED for status. I probed the red LED and found it dead, but the blue LED lit up fine. Between “keep looking for a red LED” and “use the blue one in my hand” I chose the latter out of laziness. This is a practice exercise with low odds of success anyway.

Lacking a hot air rework station or a hot plate, I didn’t have a good way to heat up both sides of a LED so there was a lot of clumsy application of solder and flux as I worked to remove the dead badge LED. It came apart in two pieces, so I practiced removal again with the dead red LED on my ESP32 dev module. Once I removed it intact, I tossed it aside and used my newfound (ha!) skill to successfully remove the blue LED in one piece. I might be getting the hang of this? Every LED removal was easier than the last, but I still think a hot air station would make this easier. After I cleaned up the badge LED pads, I was able to solder one side of the salvaged LED then the other. I could see a little bit of green on one side of the LED indicating polarity, so I lined it up to be consistent with the rest of the LEDs on the badge.

I turned on the badge and… the LED stayed dark. It then occurred to me I should have verified the polarity of the LED. Pulling out the LED tester again I confirmed I have soldered it on backwards. Valuable lesson: LED manufacturers are not consistent about how they used the little bit of green on a LED to indicate polarity. So now I get to practice LED removal once again, followed by soldering it back on the correct way. I would not have been surprised if the blue LED had failed after all this gross abuse. On the upside a failure would motivate me to go find another red LED somewhere.

Here is a closeup of the problematic area on the badge. The circle on the right was the LED that just needed a bit of solder for proper contact. The circle on the left represents the scorched disaster zone that resulted from SMT rework amateur hour as I unsoldered and resoldered multiple times. The little blue LED clung on to life through all this hardship I had inflicted and shone brightly when the badge was turned on. I’ll call that a successful practice session.

[Update: I didn’t originally intend to do anything with the badge beyond soldering practice, but I looked into trying to write my own code to run on the badge and successfully did so.]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s