I love the concept of serial bus servos, writing them up for the Hackaday audience and designing my Sawppy rover around the low-cost LewanSoul LX-16A serial bus servo. After a few years of actual use, it’s fair to say the honeymoon period is over. LX-16A availability were unreliable even before the global supply chain crunch, and now it’s even worse. Furthermore, the hardware has some really bad failure modes. Two people have experienced failure where battery voltage (~7.4V) get sent out to the USB 5V bus, killing whatever Raspberry Pi was connected via USB. I have firsthand experience where a failed LX-16A shorted battery power to ground, blowing the fuse and required field repair in the middle of Maker Faire. Due to these problems, I intend to move away from LX-16A for future projects.
Now I’m going to open up “FAILED SHORT” servo to look inside. Maybe there’s something visible relating to its failure.
On the upside, the mechanical bits look great. The gearbox used well-lubricated metal gears throughout, and there’s a decent looking ball bearing supporting the output shaft.
Nothing has obviously failed on this side of the control circuit board. The square chip appears to be the main processor. There are four lines of markings on this chip:
HL004 642GB 2634B071 ARM
A web search found this forum thread that identified the chip as a Nuvoton MINI54ZDE, a little Cortex-M0 processor at 24MHz. If I get into playing with ARM microcontroller programming, I might be tempted to connect to the row of five pins and see if I can get a debug connection to that chip. Obviously, if I were to do this, I would use a different LX-16A that doesn’t short power to ground.
The next two largest chips appear to be identical, both labeled with:
A search found these to be AO4606 MOSFET by Alpha & Omega Semiconductor.
On the upside, the lack of visible failure meant the fuse did its job well, blowing before anything really bad happened to this board. The downside is I have no visual indication of what went wrong. I’m mildly tempted to power up this servo without a fuse just to see what component blows up.
I have another failed LX-16A, this one “merely” stopped moving. It was still communicating with the rest of Sawppy controller system, with all diagnostics information showing OK. Except it doesn’t move. Powering the DC motor directly got me some motion, so at least the mechanical side is fine.
Given the lack of motor movement, I thought perhaps one or both of the MOSFETs have fried. But they look fine on this unit. Nothing’s obviously gone wrong with the CPU, either.
Potentiometer looks fine, and the 1117 LDO appears intact.
These two teardowns failed to provide any illuminating insight. I saw nothing at all that would explain faulty behavior of these units. Looking on the bright side, I’m glad neither of these devices went up in smoke and their mechanicals are still sound. I could still control the mechanicals by replacing these failed control boards with a DC motor H-Bridge controller like the classic L298N or the newer DRV8833. Turning them into a pair of gearmotors with metal gears and a ball bearing on the output shaft.