Fixing an infrared robot controller

1. Initial look

The robot turns on and acts just like the other one, so maybe the problem is with the controller not sending signals.

Fresh batteries all around has no effect.

Removing four screws opens up the controller to reveal rubber dome switches for the buttons and a single-sided PCB. The 14-pin IC is the brains and transmits via a pair of infrared LEDs with some sort of driver circuit.

board 2
Figure 1. Single-sided controller board
close 1
Figure 2. Close up view of the IR LED driver circuit

Probing the output of the IC pin 9 with the oscilloscope shows a typical infrared remote signal, amplitude-shift keyed carrier of about 40 kHz square wave. Then, probe the cathode of the IR LED and see no signal.

So we know that the rest of the circuit is apparently working fine, but the signal isn’t getting transmitted. This is good news! Perhaps there is hope for this situation.

2. Upping the ante

Around this time, the 8 year old says to himself out loud (just the two of us were in the shop):

It’s good that my Dad is a professor, because then he knows fix things like this.

Busting out ye olde Tektronix TDS 210 would make for an impressive scene to the uninitiated. It’s also time to start to manage expectations and it’s also time for dinner.

3. Revealing the controller’s secrets

6:15 AM the next morning: “Can we go to your office and fix the controller?”

Take a few minutes to head down to the shop and poke at the circuit again, perhaps the problem is repairable — Dad-cred is on the line.

Trace out the circuit and figure out what the SOT-23 parts are. Put the multimeter in diode check mode and get +0.66 V between the lower-left pins and each of the other two terminals for both parts. So, they are both behaving like npn bipolar transistors, with a pinout that matches a jellybean npn like the MMBT3904.

The circuit is apparently the following:

robot controller led driver
Figure 3. Schematic of the IR LED driver circuit

I expected just R3-Q2; why the Q1-Q2 stack? It’s not even a constant current structure. Double the number of parts is suprising for a consumer-grade toy. I’d love to hear what you think is the reason!

R1 and R2 are also serving as jumpers to get the battery (+) node over the button’s trace coming from the right.

The emitter of Q2 is indeed connected to the battery − according to the continuity tester. It turns out that the copper at the emitter:

  • goes under the transistor and out to the left between the E and C pins

  • goes under D1 between its pads

  • is not connected to LED3 nor the IC from here, but

  • sneaks under R4 to a large copper pour

  • which goes around S4 in the upper-left, and

  • around the left side of S1

before reaching the battery’s − terminal.

These are the largest currents in the controller, and switched at the highest rate, albeit only in the 40 kHz range. This much loop area makes my EMI and signal integrity alarms sound.

It would be interesting to measure what sort of radiation this creates. Maybe I can sneak it to the lab and lash up a field probe to the spectrum analyzer some time.

4. Crushing situation

But this hasn’t found the problem.

Both transistors have pn junctions in the right places, no opens or shorts.

Signal on the left side of R3 are fine while the signal on its right side are clamped to about 0.6 V by the B-E junction of Q2 as expected.

Hmm, D1 doesn’t measure right, No characteristic 0.6 V in any direction, just open-circuit-like.

Looking at it under the magnifier does look a little “white-er” around the middle. Fingernail along the glass package catches an edge. Perhaps it’s physically shattered?

I guess it could be, but the unit worked in the past. This seems to be a weird damage mode from being dropped too many times, this is literally in the middle of the controller enclosure.

Take a look at the other half of the enclosure:

cover wide
Figure 4. Top half of the enclosure with the buttons insert

There is no screw in that center stud below the red insert for the power LED’s light pipe. It is just a locator boss for the button caps molding. Not sure why it’s really there since the buttons themselves would locate the part during assembly just fine.

But look closer at that central bit:

cover close
Figure 5. Indentation on the button molding

It looks out of place; not something from the injection molding process.

Check the suspicion by putting the buttons over the PCB and we have an exact match.

overlay wide
Figure 6. Indent is from the diode

Stepping on the controller on this position would compress the top, which pushes the circle part onto the diode’s glass package.

Unfortunate placement, but at least we did confirm how the diode got smashed. I wonder how many of these controllers have failed in this way?

overlay close
Figure 7. Closer view of the tight spacing

5. Repair

Flip on the soldering iron and look around for the heated tweezers. Don’t see them, so grab some tweezers to use with the iron to remove the diode.

Heat up one pad and the thing falls apart.

broken diode
Figure 8. Diode shards

Search around for a replacement diode on some random boards from a dead UPS. Find a 1N4148 in a never-assembled kit for a ham radio CW transmitter for 40 meters.

diode repair
Figure 9. Replacement diode

6. Testing

Put the battery back in and start probing the transmit signal path.

IC output still looks fine.

scope 1
Figure 10. Signal at IC pin 9

Base of Q2 is as expected also.

scope 3
Figure 11. Signal at Q2 base

Emitter of Q1 and collector of Q2 node matches what would be expected.

scope 4
Figure 12. Signal at Q2 emitter

The base of Q1 is the most interesting. When the IC pin goes low, the series diode prevents the base of Q1 from getting discharged immediately. A combination of leakage and (maybe) photovoltaic effect eventually has this node voltage decay to zero.

scope 5
Figure 13. Base of Q1

Cathode terminal of the IR LEDs is confirmed to be as it should.

scope 6
Figure 14. LED cathode voltage

Switch on the robot, hit a button again, and the robot flops around. We have a successful repair!

Time to get back to the robot smack down for some father-son bonding time.