FormLabs Form 1+ Z-Axis Assembly

I think I can find new useful homes for several components of a broken FormLabs Form 1+ laser resin 3D printer. After carefully removing its laser optical core, I proceed to attempt salvaging its Z-axis actuator.

The Z-axis motion in this printer is driven by a stepper motor turning an Acme thread leadscrew. This concept is pretty commonly found in FDM 3D printers as well, but closer inspection unveiled a higher quality design. The first hint was the limit switch at the top. Cheap FDM printers use a microswitch, this printer uses an optical interrupter. Eliminating the flexible spring in a microswitch makes this limit switch more precise in marking its location. The print platform is mounted on a ball bearing carriage traveling on a guide rail, again more precise than the typical FDM printer usage of sleeves traveling on rods.

And finally, I noticed a detail significant in its absence: there is no shaft coupler between motor and leadscrew. A leadscrew as motor output shaft eliminates all problems introduced by couplers. No set screws to back out, no errors in concentricity between the two shafts, etc. Markings on the motor says LDO-42STH34-L291E. We can find LDO Motor’s page for their LDO-42STH line of 42mm hybrid stepper motors, but this particular model number is not listed. Searching for similar items revealed several other LDO motors with a leadscrew output shaft, all at significantly higher cost than generic NEMA17 stepper motors + leadscrew + coupler. Looks like this particular FormLabs motor variant is an engineering tradeoff of higher parts cost for higher precision.

However, all this precision means I have to make a decision on salvaging these parts. The linear rail, optical interrupter limit switch, and stepper motor are all mounted to the printer chassis. The chassis is constructed from several sheets of stamped sheet metal, folded and riveted together for rigidity. Good for optical stability, bad for me. If I remove each component separately, their relative precision alignment would be lost. If I want to remove the Z-axis as an intact sub assembly from the printer chassis, I have to perform the irreversible act of drilling out some rivets. After some thought I decided on the latter option.

Drilling out rivet heads would generate a lot of metal shavings. So before I got started with that destructive act, I wanted to remove the main mirror and get it away from scratch-inducing shavings.

The back side of the mirror has been glued to a metal plate with two embedded threaded rods. Removing two nuts freed the mirror assembly.

With the mirror stored safely away, it’s time to make some chips.

Roughly half an hour later, I’ve freed the Z-axis subassembly from all other pieces of stamped and riveted sheet metal.

I thought about grabbing my angle grinder to cut off the bottom, as it is not strictly related to the Z-axis assembly. But this is where the laser optical subassembly was mounted, and it’s also where the mirror was mounted. There’s a chance these pieces of sheet metal may yet be useful. Besides, it’s only minimally more than keeping the Z-axis itself. Even with this bottom portion, this subassembly is a lot less bulky than keeping the rest of the printer chassis together. And small enough for me to lay out everything on my workbench.

NEXTEC Work Light LED Array

While experimenting with 5V power delivery over USB-C, I thought of an experiment that will utilize my new understanding of computer cooling fan tachometer wire. For this experiment I will need a light source in addition to the fan itself. I wanted a nice and bright array of many LEDs, and preferably something already set up to run at around 12V so I wouldn’t have to add current-limiting resistors. A few years ago, I took apart a Sears Craftsman NEXTEC work light for its battery compartment. Now it is the LEDs turn to shine. That battery pack used three lithium 18650 cells in series, so it is in the right voltage range.

I think there was only a single fastener involved in this LED array, and it was already gone from teardown earlier so now everything slid apart easily.

I like the LED housing and intend to use it, but I wanted to take a closer look at the LED array.

I confirm the 24 white LEDs visible before disassembly, and there’s nothing else hiding on this side of the board, just the power supply wires looping through for a bit of strain relief. We can also see that Chervon Group was the subcontractor who produced this device to be sold by Sears under their Craftsman branding.

Everything is on the backside of this circuit board. From here we can see the 24 LEDs are arranged in 12 parallel sets of 2 LEDs in series, each set with a 240 Ohm resistor between them. Beyond that, to lower left I see a cluster of components and I’m not sure what they do. My best guess is battery over-discharge protection. Perhaps the component marked ZD1 is a Zener diode to detect voltage threshold, working with power transistor Q1 to cut power if battery voltage drops too low.

The most important thing is that I don’t see a microcontroller that requires time to boot up. I will be pulsing this LED array rapidly and want minimal delay between power and illumination. If delay proves to be a problem, I’ll try bypassing those lower-left bits: Relocate the power supply wire (brown wire, connects between markings R1 and ZD1) so it connects directly to the LED supply plane. Either to the transistor tab adjacent to the Q1 marking, or directly to the high end of any of those 12 parallel LED strings. But I might not need to perform that bypass. I will try my experiment with this circuit board as-is.

Asus Wireless Router (RT-N66R)

Taking apart a broken Ethernet switch reminded me that I have another piece of networking equipment that had been retired and sitting in a box. It was my Asus RT-N66R wireless router that I retired because its gigabit Ethernet ports started failing. After years of use I lost one port, and within two weeks I lost another port. I took those two consecutive port failures as a sign of impending total failure and quickly replaced it.

One thing that I remembered about this router was that it ran hot. Really, really hot. The power supply is rated at 19V DC @ 1.58A. That’s 30 watts of electricity pumped into a device without active cooling or even a metal case for passive heat dissipation. I wouldn’t be surprised if its failure can be traced to heat.

Four rubber feet on the bottom concealed four Philips-head fasteners. Once they were removed, though, the router was not inclined to come apart. Its top and bottom halves were held together by hooks inside these very robust loops. While undoing these assemblies, I noticed that plastic on one side of the router is much more brittle than the other side. Might this be a result of long-term heat exposure?

Removing the top exposed this aluminum heatsink up top, oddly situated far away from vents along the sides and bottom of the device. It explained why the top surface was so warm to the touch. Bare copper traces visible on the circuit board show signs of discoloration that may or may not be heat.

Towards one corner I saw two items of interest: a 4-pin header labeled with VCC, RX, TX, and GND that indicated an UART connection. And not far away, what looks like an empty microSD card slot. Asus routers run their fork of DD-WRT and it is possible to install custom builds of DD-WRT. I assume this UART and microSD would be handy for such enterprises. But we now live in the age of Raspberry Pi and BeagleBone so having a small network-capable Linux computer is not the novelty it once was. I’m not going to bother, especially as this hardware has started to fail.

Flipping the assembly over, I expected to see another finned heatsink for dissipating heat out of those ventilation slots on the bottom, but I only saw this sheet of metal. Likely aluminum.

And it’s not even a heatsink. There was no surface contact with any electronic components. It made contact only with six brass standoffs, none of which had any connection to the finned heatsink on the other side. If anything, the air trapped between it and the circuit board would have kept heat inside. I’m very mystified by the thermal engineering of this router.

Said heatsink were held on by four plastic retainers, two on each side. Here’s a closeup of one side. They have become very brittle and shattered when I tried to release them.

Once the heatsink was removed, we have our first sighting of thermal pads, but they sat on top of thin metal shields for radio-frequency (RF) isolation.

Prying off those shields revealed four more thermal pads, one on each of four important-looking chips.

The biggest thermal pad sits on the most important looking chip, a Broadcom BCM4706KPBG. A quick web search indicates this is a MIPS32 architecture CPU. Remaining three chips with thermal pads all have a Broadcom logo on top, but text information below that logo were very hard to read.

I saw no obvious damage that would explain why two out of four Ethernet ports failed, nor do I see anything I could conceivably salvage and reuse with my current skill level. Plastic enclosure will go to landfill, aluminum heat sink and sheet will head to metal recycle, and the circuit board will go to electronic waste disposal.

TP-Link 8-Port Ethernet Switch (TL-SG108)

Latest visitor to the teardown workbench is a TP-Link 8-port Gigabit Ethernet Switch. When plugged in to power, I see the power LED illuminate. But when I plug in an Ethernet cable, its corresponding activity LED stays dark. It’s not just an indicator light failure, no networking traffic flows through this switch at all. All the cables act as if they were not plugged in.

I don’t expect to see very much inside, but I still wanted to take a look. Also, disassembly will allow me to separate its metal enclosure (sent to normal recycle) from its internal circuit board (for electronic waste.)

Removing two externally accessible fasteners allow me to slide the top lid away, reveling the circuit board held by four more fasteners. Removing them released the circuit board. Nothing tricky here.

There is one obvious large chip in charge of the operation, but there is a heatsink epoxied to its surface so I could not read its label. There are eight large rectangular Group-Tek HST-2027DAR network transformers, one per port. Each of them embeds many little coils inside to carry network data while keeping things electrically isolated. (A picture showing internals of a similar Ethernet transformer is available in Open Circuits.)

With so few components, it didn’t take long for me to inspect them and verify there were no obvious signs of failure. There were several unpopulated footprints, but those looked deliberate. The lone exception is C88 which looks to have been torn off. There should have been a tiny capacitor complementing its twin C87. I don’t think a single capacitor would explain a complete failure of the switch, though.

Another feature visible in this closeup is a large sprinkling of dimples that I associate with circuit board vias – holes drilled through the substrate to connect to another circuit board layer. They’re usually done to conduct signal to another layer. (For an example see the near end of R38, visible in this picture towards the left.) But this board had so so many vias! Do they all go to the other side of the board?

Yes they do! I’ve seen generous vias done in the name of heat dissipation, but thermal management vias would be concentrated around heat-generating components. These vias are scattered throughout the board, surrounding the many traces carrying Ethernet data. Which leads to my new hypothesis: these are all part of the ground plane, helping maintain integrity of signal traveling over data wires.

Logitech Wireless Trackball (M570)

I have always preferred trackballs over mice for my desktop pointing device. A preference very much related to the fact that I’ve always had a cluttered desk and a trackball requires less desk space than a mouse. Trackballs also come in varying layouts. I prefer those that put the trackball under my fingers, and I click buttons with my thumb. (Like this design I’m currently using. *) Others put the trackball under the thumb instead and leave buttons to be pressed like a mouse.

This Logitech M570 trackball used the latter layout. I tried it for a few weeks and decided I didn’t like it, so it’s been gathering dust ever since. Now I’ll take it apart to look inside, evaluating it for a project idea.

There was one visible fastener on the bottom, which is curious because it was adjacent to a rubber foot. There are three other rubber feet on this trackpad, each of which hid a fastener. Why was the fourth foot unable to hide a fastener?

After removing those four fasteners, I had expected the trackball to come apart easily. It did not, acting as if there were at least one more screw holding things together. Applying lesson learned from my Microsoft Arc Mouse teardown, I peeled back the battery tray sticker. Aha! Gotcha, you little sneak.

Once that final fastener was removed, the top and bottom halves came apart easily. There was only a very small circuit board inside. Two if you count the tiny raiser board hosting SW4 and SW5. The trackball position sensor is at an angle relative to the main circuit board, and engineers solved that challenge with a short length of flex cable.

The most significant chip on the top of the circuit board is an ATmega168PA, a close relative of the ATmega328P made popular by Arduino.

The two main buttons were large pieces of plastic that could be unclipped. Their motion actuates two long black Omron tactile switches. Between them lies an optical emitter and receiver to read scroll wheel motion.

Looking at the scroll wheel we can see slits for the optical encoder. A short length of spring pushes against the interior surface of this wheel, which has a wavy texture. Combination of spring and texture results in scroll “step” tactile feedback.

A few components are visible on the bottom of the circuit board including the power switch.

The most significant looking chip on the bottom is a nRF24L01+, a popular 2.4GHz wireless transceiver chip that we can get in cheap breakout boards (*) for hobbyist wireless projects.

Between the ATmega168PA up top and the nRF24L01+ on the bottom, it is tempting to see if I can reprogram this trackball for complete firmware control. We even see an array of eight potential test and diagnostics pads on the bottom of this board. That might be a fun project, but I had something much more straightforward in mind.


(*) Disclosure: As an Amazon Associate I earn from qualifying purchases.

Monoprice Monitor Internals: Round 2 (10734)

Leveraging Bitluni’s work, I was able to convert one of my ESP32 into a VGA signal generator that outputs full-screen white. This gave me a low-impact way to convert a malfunctioning monitor into a lighting fixture. But the low-impact way is definitely not the optimal way, because it meant I would need a VGA cable dangling outside of the screen, connected to an ESP32, which needs its own power supply. What are my other options? The first time I opened up this monitor, I didn’t understand very much of what I had looked at. A few years of tinkering lessons have been added to my brain, so I’ll open it up again for another look.

This display was spared from the Great Backlight Liberation because it could still be powered on, but once I had it open, I wanted to examine its backlight in light (ha ha) of new knowledge. I found the likely wire harness for this panel’s backlight, a respectable bundle of twelve wires. Flipping over the circuit board, I see those wires were labeled with:

  • G_LED1-
  • G_LED2-
  • G_LED+
  • B_LED+
  • B_LED1-
  • B_LED2-
  • B_LED3-
  • B_LED4-
  • B_LED+
  • G_LED1
  • G_LED3-
  • G_LED4-

Based on these labels, we can infer there are four “G” LED strings and four “B” LED strings, each with their own “-” wire. There are two wires for “B_LED+”, but the “G” LEDs have separate “G_LED+” and “G_LED1”. I don’t know why they were labelled differently, but my multimeter found electrical continuity between “G_LED+” and “G_LED1” so they are wired in parallel, as are those two “B_LED+” wires. Leading me to believe that “G” and “B” LEDs each have two “+” wires corresponding to four “-” wires. So far, so good. I then turned on the monitor to probe voltage levels of these wires. I had expected something in the neighborhood of the 24V DC power supply that feeds this monitor, but my meter said the voltage level is actually in the neighborhood of 64V to 68V DC. Yikes! That’s well above maximum voltage of any boost converter I have on hand, so driving the backlight without this board wouldn’t be my top choice.

I see inductors and capacitors that are likely the boost conversion circuit for this backlight, but I didn’t see a promising chip that might be a standalone LED driver like I see in some laptop panel teardowns. I think it is all controlled by that central main chip sitting under a heatsink. I couldn’t make it drive the backlight with a PWM signal like I could the laptop panel, so I have to stay with the ESP32 VGA signal generator.

The next question is then: could I use this board to drive just the backlight? To test this possibility, I unplugged these two cables connecting to the LCD array. Some of these wires carry power, the rest carry LVDS pixel data. When fed with VGA data from my ESP32, this control board happily powered up the backlight even when it couldn’t communicate with the LCD array. This is a very promising find, but I’m not ready to commit to a destructive separation just yet.

By itself, without an incoming video signal, this monitor quickly goes to sleep mode. I know that my ESP32 VGA signal can keep it awake past that initial sleep mode, but I’m not yet confident everything else will continue running for the long term. The only diagnostic channel I have for this system is the on-screen display, and if I should separate the LCD from its backlight, I would no longer be able to read the on-screen display.

It’s very tempting to separate them now, because I know a lot of light is trapped back there. Look at the brightness difference when I compared a bare backlight with the same non-broken (and non-separated) Chromebook panel. I expect there to be a very bright backlight behind this LCD. But for the sake of doing things incrementally, I’ll leave the LG display module intact for now and focus on integrating my ESP32 VGA signal generator.

Notes on “Open Circuits” by Eric Schlaepfer and Windell H. Oskay

I am interested in electronics, in teardowns, and in electronics teardowns. Thus I was the exact audience for a book coming out soon: Open Circuits by Eric Schlaepfer and Windell H. Oskay. I preordered directly from publisher No Starch Press, which also granted me access to an early access eBook. I’ve finished browsing through that PDF and loved every page of it. I look forward to having the print book in my hand.

I first became aware of these cutaways from Twitter, where author Eric Schlaepfer tweeted a few cross sections shot with a cell phone camera via @TubeTimeUS. Feedback was positive, encouraging Eric to repeat the same treatment for more components, improving the techniques as he went. Things got popular enough that a vocal subset of his new Twitter following got grumpy when he went back to his regular programming. (Paraphrasing his reply: “Come on, guys, this account isn’t @CrossSectionTimeUS.”) Still, people loved the cross-sections and some said “I would love to have these pictures in a coffee-table book.” Thus this book Open Circuits.

Every component cross-sectioned in the book is accompanied by a brief explanation of the component. Knowing what a component does and how its internals accomplish the objective helps give us context to understand what we see in the pictures. Sometimes there’s a diagram with subcomponents called out as a visual explanation augmenting the text description. I knew roughly what some of these components did, but most of them were new information for me. But even if I had known of a component, usually I hadn’t known what it looked like inside! Every page is a new discovery. Occasionally, I even recognized something that I’ve seen before. For example, I recognized a thermal switch as something I took out of a retired coffee maker but I wasn’t sure what it was until I saw one explained and cross-sectioned.

This book is aimed at people who want to know more about what happens behind the scenes, so naturally the book covered that as well: the afterword section describes the techniques that went into this book’s photography. From cutting and polishing of components, to cleaning and mounting, to the photography process. Starting with cameras and lenses, to macro photography, and finally focus stacking to compose the sharp pictures in the book.

If you’ve read this far, you will enjoy the book as well.


I earn nothing from endorsing this book, I just love it.

Radeon HD 7950 Video Card (MSI R7950-3GD5/OC BE)

This video card built around a Radeon HD 7950 chip is roughly ten years old. It is so outdated, nobody would pay much for a used unit on eBay. Not even at the height of The Great GPU Shortage. I’ve been keeping it around as a representative for full sized, dual-slot PCIe video cards as I played with custom-built PC enclosures. But I now have other video cards that I can use for the purpose, so this nearly-teenager video card landed on the teardown bench.

Most of its exterior surface is covered by a plastic shroud, but the single fan intake is no longer representative of modern GPUs with two or three fans.

Towards the center of this board is a metal bracket for fastening a heat sink that accounted for most of the weight of this card. In the upper left corner are auxiliary PCIe power supply sockets. The circuit board has provision for a 6-pin connector adjacent to an 8-pin connector, even though only two 6-pin connectors are soldered to this board. Between those connectors and the GPU itself, I see six (possibly seven) sets of components. I infer these are power-handling parts working in parallel to feed a power-hungry chip.

This was my first 4K UHD capable video card, which I used via the mini-DisplayPort connectors on the right. As I recall, the HDMI port only supported up to 1080p Full HD and could not drive a 4K display. Finally, a DVI port supported all DVI capabilities (not all of them do): analog VGA on its DVI-A pins, plus dual-link DVI-D for driving larger displays. I don’t recall if the DVI-D plug could output 4K UHD, but I knew it went beyond 1080p Full HD by driving a 2560×1600 monitor.

The plastic shroud was held by six plastic screws to PCB and two machine screws to metal plate. Once those eight fasteners were removed, shroud came off easily. From here we get a better look at the PCIe auxiliary power connectors on the top right, and the seven sets of capacitors/inductors/etc. that work in parallel to handle power requirements of this chip.

Four small machine screws held the fan shroud to the heat sink. Fan label indicates this fan consumes up to 6 Watts (12V 0.5A) and I recall it can get move a lot of air at full blast. (Or at least, gets very loud trying.) It appears to be a four-wire fan which I only recently understood how to control if I wanted. Visible on the fan’s underside is a layer of fine dust that held on, despite a blast of compressed air I used to clean out dust bunnies before this teardown.

Some more dust had also clung on to these heat sink fins. It seems like a straightforward heat sink with stamped sheet metal fins on an aluminum base, no heat pipes like what we see on many modern GPUs. But if it is all aluminum, and there are no heat pipes, it should be lighter weight than it is.

Unfastening four machine screws from the X-shaped rear bracket allowed me to remove the heat sink, and now we can see the heat sink has a copper core for heat distribution. That explains the weight.

The GPU package is a high-density circuit board in its own right, hosting not just the GPU die itself but also a large collection of supporting components. Based on the repeated theme of power handling, I guess these little tan rectangles are surface mount capacitor arrays, but they might be something else.

Here’s a different angle taken after I cleaned up majority of thermal paste. An HD 7950 is a big silicon die sitting on a big package.

When I cleaned all thermal paste off the heatsink, I was surprised at its contact surface. It seems to be the direct casting mold surface texture with no post-processing. For CPU heatsinks, I usually see a precision machined flat surface, either milling or grinding. Low-power/low-cost devices may skip such treatment for their heatsinks, but I don’t consider this GPU as either low power or low cost. I know this GPU dissipated heat on par with a CPU, yet there was no effort for a precision flat surface to maximize heat transfer.

I think this is a promising module for reuse. Though in addition to the lack of precision flat surface, there’s another problem that the copper core is slightly recessed. The easiest scenario for reuse is to find something that sticks up ~2mm above its surrounding components, but not by more than the 45x45mm footprint of this GPU. This physical shape complicates my top two ideas for reuse: (1) absolute overkill cooling for a Raspberry Pi, or (2) retrofit active cooling to the passively-cooled HP Split X2. If I were to undertake either project, I’d have to add shims or figure out how to remove some of the surrounding aluminum.

Solar Powered Dancing Duck

A small solar cell doesn’t get much power with indoor lighting. As far as consumer electronics go, I haven’t seen much beyond a solar-powered desktop calculator. I had thought there’d never be enough power for an indoor solar mechanical device, but a few years back little solar-powered pendulum toys started showing up. I usually see them as little waving cats (maneki-neko) like the teardown and analysis posted to Hackaday.

This device is a variation of the same basic idea. Instead of waving a cat’s arm, the pendulum swings the body. An additional sophistication in this design is a second linkage that swings the head in the opposite direction of the body, creating a dancing duck. It was purchased for a buck and a half from Daiso Japan, so we’re looking at something produced for raw material cost somewhere a quarter (if even that much.) It was an impulse buy and wasn’t expected to last very long, but it actually ran for years before suffering mechanical issues and frequently getting stuck. It was then moved to a window ledge, where it could occasionally swing its head and hips under power of direct sunlight. But the sun that gave it a second life also took away its shine: brightly colored plastic started fading rapidly and became brittle. Finally, an unfortunate fall from that window ledge ended this duck’s performance career.

Poor duck broke its neck in the fall. The neck linkage was lost, but we can see the head’s pivot point inside the neck, where plastic shaded from direct sun is a visibly more vibrant shade of yellow.

I think the bottom of the base was originally glued in place, but that glue has weakened with age (or sun) and could be easily pried apart.

A small solar cell feeds into a circuit board, home to just two components: an electrolytic capacitor and a chip under a blob of epoxy. A coil wound from super fine copper wires is attached to this board as well. As explained in the Hackaday link above, this coil is both input and output: for sensing position of the magnet and for creating a magnetic field to boost the magnet’s swing.

The coil looked off-center, so I broke off the rear side of the base and reinstalled it to verify the coil is indeed off center when the magnetic pendulum (black plastic with black magnet on the bottom) is at rest. There is only about a millimeter of air between the coil and the magnet, a much closer distance than found in the cat mentioned in the Hackaday post.

This old dancing duck has a bit of arthritis and could not self-start under indoor light. I gave the pendulum a small tap and it started rocking but halted again after a few seconds. We can see the problem in the pivot point, which was designed to minimize friction. The pendulum axle has a triangular profile, so only a tiny sharp point touches the circular hole in the base. Years of dancing in the sun has worn both components. The triangular wedge’s sharp edge has been rounded off, and the hole perimeter is no longer circular. Together these two parts presented too much friction for the pendulum to overcome.

Daiso has long since stopped carrying this device, and I had no luck finding an exact replacement. There is no shortage of solar-powered dancing ducks for sale, but they all looked different from this cute little thing. Some are the opposite of cute, and a few looked downright scary! I have to say goodbye to this dancing duck now, it gave its all for dance and was quite an entertaining $1.50 spent.

Fundraising Keychain LED Flashlight

Sometimes an organization will send a little gift in the mail accompanying a plea for donation. These small tokens are sent as a psychological tactic to generate a return that far outweigh their low cost. I’ve received things like address stickers, notepads, and the occasional calendar. And now, I can add “keychain LED flashlight” to the list.

This item was included in a request to donate to Doctors without Borders, a well-respected organization well worth donating more money to. Whether they sent me a keychain flashlight or not. But it is on the teardown bench because I’m curious about the implementation details of a freebie giveaway that must have been designed for the lowest possible cost.

A power switch slider illuminates the commodity 5mm white LED. Judging by the exterior, I expect to find a LED and a coin cell battery inside, based on the width probably a CR2032 or CR2035. The power switch would have been designed to open/close the circuit with minimal parts. I see a seam on the side of the device, so the silvery plastic body must consist of at least two pieces. The switch would be the third silvery plastic piece. White plastic on top and bottom may be two pieces or a single piece. So not counting the keychain itself, I expected five pieces of plastic plus the LED and coin cell for seven parts.

My expectations were proven wrong as soon as I removed the first piece. White pieces top and bottom were indeed separate pieces, held together in a friction fit. A good friction fit requires tight tolerances which costs money. I had expected cheaper loose tolerances which would have meant holding things together with glue, but this wasn’t glued together.

Once I removed top and bottom white plastic pieces, rest of the flashlight was easily disassembled. Power comes from a trio of tiny LR621 coin cell batteries, not the single CR2035 I expected. As a result, there was more empty space inside than I had expected including an empty rear cavity that is big enough to hide a microSD card or three. The power switch was indeed a clever mechanism, but it required an extra piece of metal that I thought it might have done without.

This little LED flashlight was indeed an extremely simple and low-cost device, just not quite as simple or low cost as I had thought it would be. Nice to see my assumptions proven wrong.

RGB LED Fan Hub and Remote (Asiahorse Magic-i 120 V2)

I bought the Asiahorse Magic-i 120 V2 package from Newegg, which bundled three 120mm fans with embedded RGB LEDs with a hub and a remote to control those LEDs. Now that I have successfully created a control circuit for my own independent control of those fans and their LEDs, I no longer have any use for the hub and remote.

The remote has an array of 21 membrane buttons. Across the top, we can turn the LEDs “On” and “Off”. “Auto” will start running an animated pattern. Just below the “Off” button are brightness controls. S+ / S- controls the speed for animations, and M+ / M – cycles through different animated patterns. Bottom 12 buttons will show the selected solid color.

Top membrane is held on with moderately strong adhesive that could be peeled off, exposing the less interesting side of its circuit board.

Flipping the board over showed a single chip with its support components. There were no visible markings on the chip. Battery contact springs are at the bottom, the top features an infrared remote control LED emitter, and a few passive components in between.

After disassembling the remote, I started on the hub.

There were no exposed fasteners top or bottom. I pushed on the bottom sticker and felt the corners move.

The bottom sticker is glued on more tenaciously than the remote membrane keyboard and refused to come off cleanly. But at least those four Philips head fasteners are now exposed.

Not much to see on the bottom.

Flipping the circuit board over exposed… not many more chips than the remote. Most of the surface area are consumed by connectors all around the perimeter, and traces to connect them.

I’m glad to see fan connector pin labels are consistent with my reverse-engineered pinout table. A large component on this board appears to be a power transistor. I probed its pins and one of them is connected to all “F-” pins, so it is present for fan control. There are three sets of unused pads across the middle, provision for WS2812 LEDs wired in parallel with the fans. These three are chained together, left-to-right, with the leftmost LED receiving the same “DI” (data input) as all fans. When present, these three LEDs would act identically to first 3 out of 12 LEDs on board each fan.

There were a few other unpopulated pads on this circuit board, but there is one part I found fascinating for its absence: an infrared receiver like the one I found in a Roku. I don’t see one, and I don’t see solder pad provision for one. How could the hub receive IR remote signals without one? I know the remote and hub works together, so does this mean they communicate by radio frequency instead of infrared? I don’t know enough about RF circuits to look for components that would implement such a thing. I had thought all RF devices sold in the United States are required to have an FCC ID printed on it, but none are visible. Perhaps certain unlicensed frequency bands are exempt from FCC ID requirement? Shrug, doesn’t matter to me anymore as I won’t be needing this remote or hub to put their associated fans to use.

FormLabs Form 1+ Galvanometer Power Failure

I tried to revive a FormLabs Form 1+ resin printer that had been sitting unused for years, but the test print was a failure. Comparing against videos on YouTube showing a Form 1/1+ in action, I noticed two differences. First, the resin vat tilting action (to peel it off a print between layers) was not happening. And more seriously, the laser beam was not moving around to trace out the shape. Instead, it stayed focused on one spot solidifying resin and damaging the resin vat at that point. There are four mechanical actuators on this device: the vat tilt stepper motor, X/Y-axis galvanometers (shortened below to galvos), and the Z-axis stepper motor. Out of four, three aren’t working! Quite disappointing, but at least they should be electromechanical issues that I have a better chance of fixing than software issues. I’ll take it apart and look around.

My disassembly was guided by Bunny Studios’ Form 1 teardown blog post from almost ten years ago. I was glad for the reference, but as the blog post pointed out, FormLabs designed the machine for easy disassembly, inspection, and repair. All fasteners are easily accessible and use the same 2.5mm hex key.

Once I got to remove the back panel, majority of control circuitry became accessible. Only one circuit board is not visible in this picture, as it is mounted in the front for power button and screen.

The large horizontal circuit board has a power-handling section to the right, as indicated by the presence of many transistors, diodes, and inductors. To the left is the brain, including a SanDisk 4GB SD card that wasn’t accessible until the back panel was removed. The smaller vertical circuit board on the right is dedicated to X/Y position control, judging by cables connecting it to the X/Y galvos.

This printer had been shipped around without its original packaging materials, so I had hoped the problem was as easy as a loose connector I could plug back in. Thus my attention was immediately drawn to headers on these circuit board without a wire, but there were no candidate loose wires to plug into those headers. Apparently FormLabs has intentionally chosen not to use those connections, likely related to changes from original Form 1 to this Form 1+.

One of the unused connectors was labeled GALVO Y POWER. I see cables on GALVO Y SIGNAL and GALVO X SIGNAL as well as GALVO X POWER. I guess both galvos are powered from GALVO X POWER cable. This might be relevant to what I find later.

Disappointed that I didn’t find a loose connector I could plug back in or any other obvious easy-to-fix problems, I proceeded to unplug and reinstall every connector to reseat them. Working from left-to-right, everything looked and felt fine until I unplugged the right-most galvo connector. Once it was removed, I got a clear view of the galvo power connector below it.

Discoloration from overheating and possibly soot from a small fire. The toasty connector is the other end of GALVO X POWER. I don’t know enough about this device to say sharing X and Y galvo power from a single connector caused the failure, but it certainly looks suspicious.

I saw no obvious places where GALVO Y POWER could have connected to this galvo control board. I guess it is a later revision that integrated both galvo controls on a single board powered by a single cable. Compare this to Bunny’s earlier device, where we see two separate and seemingly identical galvo control boards, one for X and one for Y, each with their own power and signal cables.

This device is long out of warranty, and official support ended in 2017. I don’t expect FormLabs to have a replacement galvo control board for this Form 1+, but it wouldn’t hurt to ask and see what they say.

Failed LewanSoul LX-16A Servos

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:

4606
GA7N3C

A search found these to be AO4606 MOSFET by Alpha & Omega Semiconductor.

I see no obvious signs of failure on the other side of the circuit board, either. I see an ALPS potentiometer for position sensing, and a 1117-3.3 LDO voltage regulator.

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.

Electronic Mosquito Trap

It’s summertime in Southern California, which means a surge of mosquito trying to harvest human blood. I do not appreciate being an excellent source of protein, and the weapon I find most satisfying for fighting back are electronic mosquito zapping paddles. Some call them electronic flyswatters but I think that’s a misnomer. At least around here, where our usual species of flies grow far too big to be caught in the mesh.

This one says “Electronic Mosquito Trap” right on the handle. There is an activity light visible through a clear plastic window, and barely readable on that clear plastic is “Little Angel”, possibly a brand. Powered by a pair of AA batteries, the voltage is drastically increased to build up a high potential difference between layers of metal meshes. When a mosquito tries to fly through those layers, they short the circuit ending their bloodsucking quest.

A household commodity made at great volume for low cost, they are practically disposable. This particular zapper was damaged when one of my vigorous swings crashed into the wall. The shattered rim of brittle plastic is cosmetic, but the mesh has also been bent so that the layers touch. It is no longer possible to build a high voltage potential between mesh layers, so it is time for a teardown before disposal.

I expected a voltage boost converter circuit within, implemented in the simplest and lowest cost method possible. I only recently learned to recognize a boost converter when I see one, and this guy certainly qualifies. Implemented with large through-hole components, it looks we have the basics of: a transistor, a coil, a capacitor, and a diode.

Boosted voltage are sent to metal layers via these wires, whose insulation was damaged during assembly at the factory. At least the plastic is still an insulator.

Indicator light wires were also damaged in assembly.

The yellow output wire was connected to the center layer of the mesh sandwich, the two red output wires (both soldered to the same point on the circuit board) are connected to the top and bottom meshes.

Learning more about boost converters is on my to-do list. After I have a better idea of what’s going on, I want to look at this circuit again. Perhaps I can make my own improvements on a mosquito zapper paddle!

OCZ Core Series V2 120GB SSD (OCZSSD2-2C120G)

My first SSD was a Patriot WARP V.2 32GB SSD. It not quite the bleeding edge, that “V.2” signified a revision that solved some issues in the first wave. Early experience with my first SSD was amazing enough for me to look for a larger 120GB unit to gain a little more elbow room in day-to-day use. They both represented early technology with flaws that needed solving before SSD became long-term reliable. I didn’t know that when I bought them, but it was certainly made clear as their performance degraded over a few years and then dying entirely when they no longer showed up as SATA drives when plugged them in. I took apart the first Patriot drive, now it’s time for the second OCZ drive.

Since they were both built around the JMF602 controller and arrived on market around the same time, I expected them to both utilize a JMF602 reference design. Before I opened up this SSD, I expected the circuit board to look identical to the smaller Patriot, just with higher capacity flash memory chips.

I found I was wrong when I opened up the case, this drive used a very different circuit board layout. This design placed the JMF602 at the center, and I don’t see an obvious debug header. There is still a connector adjacent to the SATA data port and it is populated on this drive: a USB mini-B socket that lets this SSD act as a USB flash drive.

Four more flash chips live on the other side of this board, again in a different layout compared to the Patriot drive. They seem to have the same production information sticker, but that might be some sort of industry standard sticker.

Thanks to the USB port, I could still access this drive even though the SATA port no longer enumerates. It is only an USB 2.0 connection, but I don’t think that is a constraint. Write performance has degraded to an atrocious level on this drive. Here I’m copying a single large ISO file to the drive. 25MB/sec throughput and a response time of nearly 500ms are well below limits of USB2.

Read throughput is only slightly better at nearly 40MB/sec and a 20ms read response time is significantly faster but still not great. Since this drive still works via USB, for now I’ll spare it the hot air treatment I performed to the Patriot. But given this level of performance I’m not sure if I can do anything useful with it.

Patriot WARP V.2 32GB SSD (PE32GS25SSD)

When the cost of flash memory dropped low enough for consumer-level solid state drives to come to market, it was a time when multicore multi-gigahertz processors sit mostly idle waiting for data to be fetched from a spinning platter hard drive. SSDs resolved that performance bottleneck and provided a huge boost to overall system performance. But like all revolutionary technology, early implementations had some serious teething issues. Some problems required operating system support like TRIM to solve, which didn’t show up until later.

In those pre-TRIM days, the most affordable consumer-level SSD were built around a JMF602 controller. It helped make SSD affordable, but without TRIM and related functions, those drives weren’t durable. My first two SSDs used JMF602 and both drives died within two years of use. When I plug them into a computer’s SATA port, they no longer enumerate as devices as if they weren’t plugged in at all.

I forgot I had kept those two drives until I found them in my pile of old computer hardware. I might as well open them up before I dispose of them. I don’t expect to see much: just a circuit board inside a 2.5″ form factor metal case. But I was curious if those two circuit boards would be identical: it is fairly common for multiple manufacturers to use the same reference implementation and sell basically identical devices.

First up is Patriot’s WARP V.2 with a paltry 32GB capacity, model PE32GS25SSD.

I found the expected single circuit board inside. The infamous JMF602 chip amongst multiple Samsung flash chips. I see a row of four vias on the lower right edge resembling an unpopulated debug header. (Not that I’d know how to debug this thing.) In the lower left, adjacent to the SATA data connector, is an unpopulated connector blocked off by the metal case. We’ll see this again later.

Four more Samsung flash chips reside on the other side of the circuit board.

I now remember why I kept the drive even after it failed: I had personal data on this drive when stopped responding. Even though it doesn’t enumerate as a SATA device for me, I was worried that the data could still be recovered. Perhaps through that debug header, or possibly a SATA diagnostic tool could unlock it.

Making data really difficult to recover is easy with a spinning platter hard drive: I would open it up to expose those shiny platters. Everyday household dust would render those data surfaces unreadable except to maybe the NSA. But at the time I didn’t know how to perform similar data destruction with SSDs. I had contemplated drilling a hole through each flash chip, but now that I have a hot air rework station, I decided to remove all 16 flash chips from the board. If someone wants to steal my data, they’ll have to decipher how my data was spread across these chips and do a lot of soldering. I may still drill a hole through one of those chips just for curiosity, but first I want to compare and contrast this drive with my second SSD based on the same JMF602 controller.

Makita Ni-Cd Battery Pack (1250)

I took apart an old Makita cordless drill (M651D) to take a look inside. It was very well designed and friendly to servicing, meaning it was easy to take it apart and put it back together still in working condition. The drill is still good, it’s too bad its NiCad battery packs are worn. Which made me think: what if I can hook up another battery to this drill? Since I wanted to leave the drill itself intact, I will remove NiCad cells from the battery pack and solder new wire in its place.

This is easier said than done. While Makita’s DC1414 charger and M651D drill were designed for easy disassembly and servicing, the Makita 1250 battery pack is sealed up tight. There were several YouTube videos of people taking these battery packs apart, and I can see it is glued together all around the perimeter between black and orange plastic pieces. The only way inside is to chisel apart durable ABS plastic.

Fortunately, it appears the battery cells themselves were not glued in place. So I’m going to try a different route and cut from the bottom with my Cutra Wondercutter S. This is not the safest of activities but I’m willing to cut near battery cells because of the following:

  • They have no remaining charge to arc or cause problems.
  • These NiCad cells have a sturdy steel can exterior.
  • Even if I manage to puncture a can, NiCad chemistry is less volatile than lithium-based chemistries.

I would be very hesitant to cut near lithium-based batteries if they were 18650 (or similar) steel cylindrical cells. I would not try this at all if they were soft-skinned pouch cells.

I started with a small cut to find the depth of cut. This also gives me location of a single NiCad cell and lets me get a rough guess of where the rest of them are.

I gradually cut more and more of the bottom away. The Wondercutter does a pretty good job with ABS, cutting partially with its ultrasonic action and partially with the heat generated by said action. There’s definitely the smell of melted ABS but much more pleasant than if all the cutting were done by melting ABS with a heat knife. It does scratch the surface of cells, but didn’t come close to puncturing them.

I had hoped the NiCad cells would just drop out the bottom, but they were actually held very tightly by the base. Around the perimeter are small triangular pieces of plastic that follow the curve of each cell and wedge the entire pack in place. I had to cut all around bottom perimeter in order to remove those wedges. The final two were just inside the plastic clips that I wanted to keep so it could still be installed on the drill.

Annoyingly, those two final wedges were still strong enough to hold all batteries in place! I had to carefully cut away one wedge before I could dislodge the entire pack of cells.

These cells will go to a proper channel for NiCad battery recycle. But before that happens, I want their power contacts.

Those contacts were attached with a battery spot-welder and could be freed with some… mechanical persuasion.

Earlier I took apart a car battery charger, so I had a pair of wires handy and already designed for high amperage around 12V. I soldered them to salvaged battery contacts and reinstalled them inside battery enclosure. Reinstalled back onto the drill, it becomes a corded drill powered by wires. I don’t know what alternate power source I want to connect to these wires yet, but this hack of a Makita 1250 battery enclosure lets me supply power to an unmodified M651D drill.

Makita Cordless Drill (M651D)

A large part of the cost of a cordless drill system are in its batteries, so when this Makita cordless drill wore out its NiCad batteries, it made more sense to get a modern lithium-ion powered drill system to replace this one. Retiring it to the teardown workbench. I tackled the charger first, because I didn’t think there was much point holding on to a NiCad/NiMH battery charger when lithium chemistries have taken over. Next up is the drill itself, which is an interesting comparison to an even older cordless drill taken apart at SGVHAK a few years ago.

The drill itself still works fine. As a powerful motor and gearbox combination with a torque-limiting clutch, I think it’ll still be useful for something, so this is only a partial and nondestructive teardown in order to leave it in working condition. Thanks to excellent work by Makita designers and engineers, this turned out to be extremely easy.

One element of this ease is how this drill was held together by machine screws. Not self-tapping plastic screws, which are cheaper and easier to assemble but weaken every time they are removed and reinstalled. And those machine screws go into captive hex nuts, not heat-set inserts. Together, it means this drill can be disassembled and reassembled repeatedly without weakening. Nice!

After I removed all of the fasteners, I pried the two blue plastic halves apart. As I did so, all internal components fell out. It was startling at the time, but then I was happy to realize that it meant all internals are easily accessible and nondestructively so. Major subsystems fit together without any adhesives or additional fasteners.

I see the planetary gearbox has provision for fasteners to hold it onto the motor, but that provision was not used. It was not necessary: the drill enclosure held them against each other well enough for the drill to function. Speaking of that planetary gearbox, I see a few screws for further disassembly and decided against it. I wanted to keep the gearbox in running order, and I didn’t want the mess of lubricants all over my workbench. Someday I might take it apart to see internal implementation of high/low gear shift and the torque-limiting clutch, but not today.

Control of motor speed and direction is handled by a completely integrated unit. It has solder points for battery terminals on one end, and motor terminals on the other. It exposes two mechanical controls: one for direction, and the trigger for speed. Printed on the side is:

defond
DGT-1225A
25A 14.4VDC

I found the website for Defond and its “Power Tools” division that specializes in making such devices for other companies. I found no listing for DGT-1225A or a catalog at all, implying each product is a custom unit designed and built for a customer like Makita. More useful to me are the ratings printed on the side: up to 25 amps and 14.4V DC. This gives me the power envelope I must keep in mind if I want to incorporate this motor and gearbox into future projects. If I want to put them under a microcontroller’s programmatic control, I’ll need to use motor drivers capable of handling 14.4V * 25A = 360 Watts. Or perhaps I can rig up a different set of batteries?

Makita Ni-Cd Battery Charger (DC1414)

Cordless drills are very convenient to use, removing the worry of power cord management. But the batteries that give them their independence from an extension cord is also their weak point, degrading faster than their mechanical parts. This Makita M651D cordless drill system dutifully served many years, but its nickel-cadmium (NiCad) batteries could no longer hold enough charge to last a work session. Replacement cartridges are available, but it was more cost effective to upgrade to more powerful and longer-lasting cordless drills with lithium-ion battery packs. Which was why this system was retired.

The least useful part of this system is the DC1414 charger, as it was precisely tuned to charge those out-of-fashion NiCad chemistry batteries. I’ll take it apart first.

The charger disassembled easily, no glues or anything annoying held it together. Which is a good thing, because in the lower right corner of the circuit board I see a fuse that requires disassembly to replace. I also see a dotted line across the middle of the board, likely marking separation between high and low voltage areas of this board. I see the logo for Tamura corporation, who Makita apparently subcontracted for this device.

The circuit board is a single-sided design, with through-hole components on the top side without copper traces. On the bottom we see a few surface-mount chips and copper traces, some quite wide for more power-carrying capacity. There is a notable gap across the middle, corresponding to high/low voltage divider line drawn on the other side.

Unusual shapes at several solder joints for high-voltage components caught my eye. In addition to the typical cone shape structure, these solder joints have a five-fingered extension from the base of their cone. Is this intentional or accidental? If intentional, what is their purpose? If accidental, what caused it to happen? I don’t know enough to make educated guesses. The plastic enclosure for this charger will go to landfill, and the circuit board will go to electronic recycle. I shift my attention to the M651D cordless drill itself.

Hardie Irrigation Controller (HR-6100)

I was given this Hardie Irrigation sprinkler controller to take apart, which I’m happy to do.

Color scheme and general design makes it look several decades old. I found nothing that could give it a definitive age, and I’ve found no information about this product online. Its lack of online presence supports the “several decades old” hypothesis.

Flipping up the lower access door we see terminals for sprinklers and a power transformer, a fuse, and two screws. Removing those screws allowed me to remove the core of the device.

Backside of the plastic control panel exposes the plastic ridges that give tactile detents to the selection knob. We also see the front of the circuit board, which has all through-hole components and no traces visible in the front.

All traces are on the back, where we also see the selection dial is not a rotary encoder. It makes actual electrical contact to individual functions.

Returning to the front, I see this is the largest chip on the circuit board. I have no idea what it is, my online search came up empty. [UPDATE: Randy identified the COP444L as a member of the COP400 family of 4-bit microcontrollers. See full comment below for a link to the datasheet. Thanks, Randy!]

The six sprinkler stations are each controlled by one of these. Online search found these to be triacs. I thought it was interesting how we have two of one type and four of the other.

The only item that interested me was the digital illuminated display. These look like old school LEDs. I understand that before manufacturing large LEDs became practical, the only cost-effective option are these tiny little guys. To make them more readable, they are accompanied by plastic bubble magnifying lenses. There appear to be provision for eight digits, but only four are populated.

I see tantalizing hint of more than seven segments in each digit. It looks like there are two center vertical segments so we can go a good “T” and other things difficult with just seven segments. Also, all of the horizontal segments appear to be split to the left and right of center vertical. This can potentially be a 12-segment digit.

However, when I applied my LED tester to various combinations of input pins, I could only illuminate each digit as a seven-segment (plus decimal point) display. I’ll salvage this bubble LED in the hopes I can decipher its secrets later. For now, I see no reason to hang on to the rest of this bulky box and will dispose of them.