Archive for the 'Reference Posts' Category


Reassembling a Bridgeport J-head with Uncle Charles! And More About Hooking Up Your Annoyingly Chinese VFD

May 26, 2017 in Reference Posts, Shop Ninja

You know what? I’m tired of having sweet-ass machinery sitting around not hooked up. Last time in “Charles takes forever to set up his own shop because he’s sick of setting up shops”, I did some battle with a generic Chinese VFD and completed what the damn factory couldn’t be buggered to by adding the dynamic braking components.

Though Bridget ( <3 ) ran since then, there were some issues. The spindle brake was so worn it was difficult to change tools, and the head made the “Bridgeport Clack” from the high/low speed dog clutch being worn. The motor’s V-belt was also severely worn. I wanted to tear it down for a rebuild of sorts, so I spent a little while watching “How to rebuild a Bridgeport head” videos. I decided that all of these videos sucked, and that I was really only interested in repairing the brake and replacing the timing belt and V-belts.

So here is my documented take on how to take apart a Bridgeport 1J head. In it, I discover that it wasn’t as terrifying as I had thought originally, and that old-school American engineers might commit some abominations but damn they’re good abominations. I guess this is kind of a Beyond Unboxing, too.

Step 1: Dismount the motor, which is retained by two studs, one with a set of two jam-nuts to let it move a little for belt tensioning, and another that’s the ball handle (you unscrew the ball handle and then untighten what it’s attached to). Then, crank the head about the Y axis (roll) 90 degrees.

Six socket head cap screws live underneath the belt cover casting and retain it to the steel back-gear housing. You can take all these off; pins retain the belt cover afterwards, and it needs to be yanked off. Don’t worry, it’s not heavy. But there’s one catch:

The back-gear timing belt pulleys both have flanges. To remove the belt cover means taking off one of the pulleys with it, and that means removing the belt with it. You have to remove the four slotted head screws that keep the pulley flange on. Once it’s gone, the belt slides off with everything, like this:

This setup is quite the abomination. The timing belt has no tensioner – it relies on good will and good spacing. Mine was getting a little loose from the years. While I haven’t run the machine hard in back-gear range to see if the belt skips, I ordered a new belt anyway since it’s a “Might as well” item. The belts, and other rebuild components which will be seen, came from H &W Machinery Repair.

While the cover was off, I cleaned off the thick layer of congealed rubber dust and spindle oil. I didn’t break into the back gear cavity, however – if you do, remove the nut on the big pulley and use a gear puller or Three-Phase Prybar to pop it off, then undo the remaining screws. Some times the gear cavity is filled with grunge; if your machine had multiple owners, chances are it has both grease and oil in it.

I loosened the cover and a lot of remnant oil started pouring out, so I’ll likely keep it together but drown it through the front oil port later.

The second step pulley and back gear timing pulley live with the belt cover and has a large bearing carrier assembly under it. To undo this, I need to remove the shifter mechanism.

The pins that ride in the shifter groove also help retain it completely. Problem: One of them was completely stripped and wobbly. Due to the pressure exerted by loading springs underneath the pulley, I couldn’t get the pin to bite on its remaining threads and back out. So I drilled straight down the center and threaded the hole for a #4-40 screw that I could then grab with pliers and pull on:

The stock machine has slotted head pins; H&W sells a replacement with a hex wrench drive. Here’s the victim screw driven in…

And a few tugs later, the shifter ring is freed.

The pulley then flies off the other side, since there are loading springs underneath it.

And here we have the brake assembly. The brake is simply a phenolic drum brake setup that crams against the interior of the pulley. Nothing sophisticated at all!

To remove the brake, you have to remove the 3 slotted-head shoulder screws holding it down. However, to do that, beforehand you have to undo the three hex nuts on the top side (underside in these photos) – they prevent the shoulder screws from loosening.  After that, the brake can be wiggled off gently. It will snap closed, due to its own return springs, so watch your fingertips .

The small tongue on the upper right of the bearing bore is the cam that toggles the brake shoes.

Many times, when a Bridgeport spindle brake is worn, it means two things – one, that the brake shoes are worn down, but what I found is that the cam had also dug a little trench into the brake shoes where it makes contact. So this has reduced the effective travel length and caused the brake shoe to lose engagement. In fact, it seems like the harder you wail on the brake lever, the quicker you induce this 2nd failure mode.

Also, Brigeport brake shoes are expensive. Speciality exotic part, sure, but I can do all 4 brakes on Mikuvan for less money using nice ceramic pads too! So I wasn’t going to replace these, but simply make the cam bigger.

Returning to the top side, the brake cam escapes if you untighten the set screw holding its handle pin in place. The pin slides out and the whole thing falls apart.  The cam and shaft assembly are on the upper right.

The fix? Make the cam bigger by welding repeatedly over it, building up more metal, then sanding and filing it down! This was after the rough-sanding stage. I filed a gentle round onto the engaging edges so it doesn’t cause further erosion of the phenolic laminate brake shoes.

Alright, we’re now on the reassembly path. The brake cam is going in back in…

Secured up top, along with installed brake shoes and re-tightened locking nuts.

I reassembled the shifter ring after cleaning the whole area and thoroughly greasing it. In Bridgeport maintenance, you’re supposed to oil the shifter ring daily in production use. I think I’m fine with putting in a few greasewads where it needs to be instead of having to clean up even more crusty oil grunge down the line.

The belt cover is remounted now.

Before final assembly, make sure to thread the timing belt and V-belt back onto the pulleys. Then as you line the belt cover on, wiggle the timing belt onto its large pulley.

When finished, you can then replace the small screws and pulley flange.

Putting this motor on was the precarious part, since it involved holding something pretty heavy and wiggling it from an awkward angle! I threaded the two jam nuts onto one side in order to hold it in place for….

Final head tilt. Here are the newly installed parts! And there we  have it. Shifts great, runs smoothly. Still makes The Bridgeport Clack, but further research showed me that is all in the quill spline drive and there is not really a way to R&R that short of replacement. I’m fine with it.

Moving onto controls! I can’t use this thing from a potentiometer dangling by its wires forever. You may, but I have standards.

I put a little money on eBay into some more machine style switches and buttons.

I had two buttons left over from a project long ago, so they were going to be used as the Run and Stop functions. The same potentiometers got transplanted into a panel mount which I screwed into the housings. Knobs were a matching pair (rare! legendary!) found at MITERS.  The two-position switch will control forward vs. reverse.

The wiring was concocted using disembodied Ethernet cord, which is one of my favorites for pirating cables from their intended purposes. The VFD’s Use of Manual™ just showed a bunch of normal looking switch symbols connected to the forward/reverse, start/stop/reset, etc. inputs.

This is where I discovered another great undocumented feature of Use Of Manuals. The diagram was a lie, but only enough to get you in trouble.

I had problems with it accepting my switch configuration. I found that the VFD didn’t want to read my stop button at all, and it accepted any flip of the direction switch as a “run” command. That is, I can toggle the forward-reverse switch for it to change directions, but it wouldn’t take my stop button input. I’d have to hit the STOP button on the control panel of the VFD. After that, I couldn’t start it by using the start button, but just changing the state of the direction switch would let me turn the knob and increase speed again. Well, all of my settings seemed to be correct for the job, so I was a little confused and figured there must be Undocumented Behavior. This was certainly inconvenient to use the damn thing intuitively, and I certainly wouldn’t let anyone else touch it in this condition.

It took a few friends with experience in industrial controls to point out what I was doing wrong.


That is a diagram for a normal industrial magnetic contactor, showing how Start and Stop buttons are typically wired. In these things, the STOP switch is always closed unless something causes it to open (either by accident or on purpose). The Start switch, on the other hand, briefly powers the contactor coil which pulls in not only the main contacts, but a little auxiliary contact that keeps the coil energized and hence the contactor latched. You can see how any number of interlocks (e-stop systems, overload detection, etc.) can work its way into the STOP circuit and turn the machine off when needed.

The VFD is technically designed to replace this setup, so it’s expecting the Stop button to be normally closed. Well, all my switches are N/O type (close when pressed). So the VFD was waking up in an unexpected mode, I guess, where it seems to default to treating any forward/reverse switch inputs as “Okay, start running”. Well this seems a little scary of a failure mode.

Anyways, the Use Of Manual shows all switches as N/O, so it definitely assumes you already know industrial control practices to use it. That’s another endearing characteristic of Chinesium… you better know exactly what you’re searching for, or else you might find it.

Well that’s quick fix. I didn’t order modular contacts with my switches, but luckily they’re manufactured modularly enough to use the same set of contacts, just internally turned upside-down, to become N/C. Now my control panel works as expected – the stop button puts the VFD into slow-down-and-brake, then start will ramp the motor back up to the previous speed it was at. In run mode, I can change speeds at will, including braking down to zero speed manually.

And here’s the test video.

Now that I understand this setup (or do I….), I can build the second control box accordingly. It’s also easy now to add an anti-face-eating emergency stop mushroom button anywhere in line!

The next machine to go online will be Bridget’s cute Japanese friend, Taki-chan!

how about no

Brushless Hipsterism Intensifies: Returning to Brushless Rage. Brushless Mini-Rage!? And Trying Hub Motor Drive in a Beetleweight

May 12, 2017 in Motor Controllers, Reference Posts, Roll Cake

Oh, Brushless Rage… how far you’ve fallen. It’s been standing idle since late last year when I got the first version running. Thereafter, it began having some rather obdurate power supply problems that I couldn’t resolve with a few different attempts, and with #season3 still unknown (TO. THIS. DAY. UUUUUUGGGGGGGGGGGH.) and having to pick up and move shops, I lost motivation. Now, with the spring and summer silly go-kart season coming up, me really wanting to pregame getting Overhaul back in shape ( *cries deeply* ), and my comrades over at Robot Wars screaming for assistance, it’s time to put my robes and wizard hat again.

The last time I really worked on Brushless Rage was in October. After tuning out the first one, I went ahead and made a 2nd one. I wanted to get Sadbot running on them for a few test drives.

Here’s my innovative housing for the two controller! Bolted back-to-back with drilled holes in the Ragebridge shipping box.

And that was all! It was retained by a few zip ties running through the bottom ‘breadboard’ baseplate. I didn’t take much test video of Sadbot running on them, unfortunately;really the only one that exists within easy reach is, uhh, this one. While it doesn’t show them getting whipped, they definitely don’t not work! Yay!

But not for long. I soon lost both of the units in further off-bot tuning of settings. They didn’t blow up, but simply failed to ever power on, with the LM5017 regulator simply sitting there getting hot. The only “fix” was replacing the regulator, and I say “fix” because that really didn’t fix anything, and they would die again within minutes or even seconds.

No problem… maybe it’s just an issue with the two boards. I’ll just try another one of the five total I ended up making….

Nope. Nothing. They died one by one, all to the same symptom. I tried redoing my math for the regulator for the 4th time, thinking maybe  I made a mistake somewhere. I even tried mimicking the reference design to try and get something running. I literally never do that.

At this point, I figured it must have been something incredibly dumb and simple I missed. But why would the first two have worked at all, even for a little while?! Convinced the solution might just suddenly invent itself, I stopped thinking about it.

And so here we are, a few weeks ago, when I’m slowly building up a new rev of the logic board that fixes up some trace routing problems and Little Blue Wire problems. Again, the logic regulators kept exploding, some times dramatically taking out the input trace like seen above. The little light is strapped across the 15V gate drive supply to give me a visual indication of it being on.

What is with me and being unable to use switching regulators!? I recalled the Ragebridge Diode Debacle of 2015, and decided to take one last Hail Mary run through the datasheet along with friends to carefully cross-check each other for boneheaded mistakes and…….

TI, you assholes.

So here’s what’s going on. The Vcc pin of this chip allows you to power it from its own output voltage, which is often fairly low, so it prevents a lot of heat dissipation in the chip since otherwise it would have to derive its own power from the voltage input (up to 95V). But what I missed is this only works up to 13 volts. My gate drive supplies were 15 volts by design.

Beyond that? Who knows?! It might work, it might not. I’m guessing my first two were just high enough in manufacturing overhead that they worked for a little while. Subsequent statistics were not on my side.

Okay, whatever. I cut off the 11.3kohm feedback resistor and threw on a 9.1kohm to drop the voltage from 15V to about 12.5V and let’s see what happens.

Ah, it wakes right up.

Of course it does.

So I decided to respec the gate drive for 12.5V. Why do this instead of go for the full 15+ volts? Because I’m really aiming to make this design work at high-for-robots voltages of 36-48v, possibly up to 60V nominal with a different power stage, so I’d like to save the power dissipation in the chip’s onboard logic power supply.

The change in drive voltage will slightly affect the drive characteristics and switching time. For now, I’ll keep all the power stage parts unchanged, but I’ll probably tune the gate resistor values later.


To get rid of the noisy ripples on the feedback network and to stabilize the switching frequency, I added some more bypass capacitance to the chip. This was not included in the design at first, since I figured my large ceramic input and output caps were nearby, but it really really wants its own little private capacitor on Vcc. Gee, I thought I was a princess at times.

So now this thing is pretty much bombproof. Here’s a video of it throwing around one of the 30-pound old MIT CityCar prototype motors (which I inherited 4 of after the project was dismantled):

In that video, it’s running from 36 volts. I tested it with a smaller motor all the way up to 50V input before getting too scared for my power supply’s life; I’ll need to try it on a larger high-for-robots voltage power system later, but nothing smelled imminently unhappy!

With the regulator death issue apparently behind me (again) I decided to push another board revision. This time, I added all the necessary bypass caps and changed the layout of the logic power supply, as well as take out some parts I decided were superfluous.

The logic power supply got a little smaller and more electrically optimal. The whole thing is just less messy now. I like it – it takes up around 1/3rd square inch of PCB space on one side. At the behest of a professional PCB engineer friend, I turned the inductor 90 degrees and joined it with the LM5017′s switching node with a small trace instead of a larger groundplane. This would prevent the switching node (a source of huge voltage swings in microsecond timescales) from broadcasting as much noise.

Besides some other minor trace chasing, what’s going on down below on the board is also something experimental:

That there is a bidirectional optoisoated I2C bus for transmitting data between two microcontrollers which should never meet directly. I had a single-direction opto input on the board revisions so far, but this prevents updating of settings via the SimonK/BLHeli type bootloaders. That means tuning the settings require busting out my chip socket every time, which is annoying. I reviewed a couple of bidirectionally isolated bus schematics and decided to try this one out first, since it involved diodes only, not transistors.

The problem is, the I2C bus is a open-drain configuration with pullup resistors and ’1′ bits transmitted by pulling the line down to 0v. I kind of wanted to try keeping the opposite polarity, so to speak (even though SimonK supports an inverted input setting) just because I’m used to thinking about things this way. So I tried flipping the circuit over…. pullup resistors became pulldowns, and common-emitter became common-collector, and so on.

It makes sense in my head, but I’m sure excited to see this work!

On the board, this is the layout. It doesn’t consume much more space than my previous 1-direction optocoupler setup, and can be bypassed for testing with 2 wires if needed. That’s the nice thing about keeping things upright signal-wise.

So before I sent this board revision out, I stopped for a moment to think who would really be wanting to use Brushless Rage. I’d designed the 12-FET board to effectively replace Overhaul’s 250A DLUX controllers (with more realistic ratings, mind you). I’d say the majority of people who would buy such a thing won’t be running motors that big.

Recently, the thought of a “Half-Rage” has been coming up in my mind as something worth pursuing. This would be a board with about half the footprint of a RageBridge 2 and supporting about 1/2 of the amperage. As some curious question-askers had innocently drilled into my mind, this would be an Actually More 30lber-Sized controller.

> mfw "When are you going to make a 30lber/12lber version of RageBridge?


With this in mind, I decided to make a copy of the power stage and began downsizing the hell out of it.

Step 1: Reap what I sow when it comes to the sheer number of vias I deposited under the FETs.

After bunching the FETs together, I referenced one of the earlier abandoned Brushless Rage layout ideas for the output wires. This board is now short enough that I’m comfortable pulling the phase outputs all the way to the right with the power. Keeping all my wires on one side is something I prefer.

Somewhat final routing of the fat bus traces here. I had to move a few gate drive traces, as there was no longer an opportunity to swap sides in the middle of the FET bank. Power+ runs straight from the bottom right corner, through the bus capacitors, into the high-side FET. Power- emerges from the current shunts and then has 3 paths to return to the buscaps before being slurped up by by the wire hole on the upper right.

Here’s an overlay of the signal board design on the power stage, showing roughly the size of things. The final power stage is 2″ x 2.75″. Not the tiniest thing, but I have more capacitors than you!

This board shares a lot of thermal characteristics with RageBridge, so I’m pretty comfortable calling this a 50A continuous class controller. 50 real under-partial-throttle amps, so that’s what, like 1,200 Hobbyking Amps?

In all likelihood, this controller will be able to handle an average 63mm SK3 motor in continuous duty applications like a silly go-kart. Robot-wise, it will probably be stressed handling the same in bidirectional drive mode.

Fast forward a few days and….

OhmygoditssocuteIjustwanttohugit and then make it run a 80mm outrunner on 12S violently. I’ve ordered parts to make a handful of these, and two are going on Sadbot ASAP to be driven until something blows up!

Direct Outrunner Hub Drive for Your Little Bot

Next up, something even smaller!

So I’ve long been a connoisseur of fine handcrafted hub motors. I got curious recently on using direct-drive small outrunner motors in an ant or beetle after thinking a while on the redesign of Roll Cake. Version 1 of Roll Cake was honestly just a braindump of a vision I’ve had for years for the shape of the bot, and everythng else came second to that. On the beetle scale, the multi-pulley serpentine pulley drivetrain simply had too much friction for the Fingertech motors (which were severely underpowered for the task) to overcome.

For the next version, I’m ditching the triangular cheese wedge shape for something more straightfoward. The cheese wedge will be back for a heavier weight class. Roll Cake’s design really wants to have the middle of the bot kept clear for the flipper linkage. I’m sure I could work around it with low-mounted drive motors and similar, but this was an excuse to play with brushless things!

I based my thoughts off Jamison’s mini-gimbalbot which used camera gimbal motors for drive with a small Hobbyking R/C car ESC. It drove “okay”, certainly capable of a weapon delivery platform. So naturally, I wanted to put some SimonK-capable controllers on it and see how the handling would change. I got a small selection of motors: A pair of DYS and Quanum 28mm motors as well as a pair of Multistar “HV” 460kv motors. 460 RPM/V is reeeeeally slow for that size of motor that isn’t a gimbal motor, so I was quite interested in them.

These are the gimbal motors. I like them for their pancakeyness – the Quanum motor is more 30mm and has a bigger stator.

Playing around in the CAD model a little for component placement. At this point was when I realized Roll Cake in this incarnation might end up looking a lot like The Dentist :P

I designed up a few hubs that bolt to the face of the motors and have a tapped middle hole to sandwich a wheel. The wheels are spare 1.625″ BaneBots wheels that I originally bought for Candy Paint & Gold Teeth.

Shown with those motors is a ZTW Spider 18A controller. My typical SimonK ESCs, the Afro series, were out of stock when I placed this order, so I took recommendations from people on what I should use. The Spider series are fairly popular these days among small bot folks.

The issue is, they come with BLHeli firmware, the other other open source drone racing / vaping rig development path. It’s a newer effor than SimonK and has a more polished interface. I’d read about it before, but not worked with personally. Other builders have said it doesn’t run robot drivetrains as well due to being much more optimized for propellers. So hell, why not – this was a chance to explore that side of things.

Here’s some real life CAD layout, featuring the Multistar motors.

I really wanted to use the gimbal motors, but they disappointed me in bench testing sufficiently that I didn’t even end up installing them. Basically, they can’t draw enough current to make torque at typicall little-bot voltages. With phase resistances of 10-20 ohms, they can really only draw ~ 1amp or so. I mounted one in a vise and could stop the motor with my pinky finger at full radio stick input.

These motors might be better at 6S and up, but for the time being, since all of my small-bot batteries are 3S, I decided to pursue making a test platform using the Multistar 460kv motors.


The platform of choice was…… one of Candy Paint’s spare weapon pulleys. I literally spilled my “preformed robot spares” bin on the ground and tried to see what was good to use as a base. Hey, it’s round and has convenient wheel holes in it already! All I needed to do was quickly whip up some motor mounts (3D printed) and I was in business.


Here’s everything hooked up. That nut is for a counterweight on the front to add some friction against the ground while turning. Otherwise, it had a tendency to keep spinning and spinning if you even thought about turning.

Communicating with the ZTW Spiders was a hell of an adventure in its own right, and I am putting this post under Reference Posts because I’m 99% I will need it again or someone else will randomly find it while needing the information. If there was any industry that continually pisses me off with how undocumented and tribal-knowledge focused it is, it’s the R/C anything industry.

So, here’s how everything went down. I lost my AfroESC USB communicator, so I purchased the Spider SPLinker advertised as working with the controllers. I also bought one of these stupid things:

That’s a “SimonK/BLHeli compatible” dongle called the ESCLinker. It allegedly can talk to either kind of ESC, but there was nothing remotely resembling a manual or operating guide; all of the search results for this brilliant device were people complaining that there was no manual.

So I’m writing the manual now: This thing does not want to talk to KKMulticopter Tool (my go-to for flashing SimonK ESCs). It will only talk to BLHeli Suite. As a matter of fact, I couldn’t get the Spider SPLinker to talk to ANYTHING. For all of my tuning here on, I used the ESCLinker tool.

Here is BLHeli Suite, which is hosted on the sketchiest possible website that is one tier above compiling it from the Git repository yourself.

Notice how I’m connected to the ZTW Spider now. The ESCLinker (and SPLinker) install as virtual COM ports.  The necessary baud rate is 38400 baud, not 19200 (Afro/Turnigy USB dongles, to my knowledge)

By the way, once I realized this, I tried to talk to the SPLinker and ESCLinker on KKMulticopter Tool again using 38400 baud; no dice.

Further investigation revealed that the ESCLinker needs these options to communicate to the ESC – both options 2 and 3 will work. So if you’re listening, people mystified by the ESCLinker: Talk to it on 38400 Baud and ask it to communicate to your ESCs with BLHeli/SimonK 4-way-if bootlader.

Ugh. One of my selfish reasons for wanting Brushless Rage is so it’s one known quantity and I never have to dick around with other people’s open-source bullshit again.

So with all that behind me, I decided to try out BLHeli drive on the little pulleybot. I went with intuitive settings based on my SimonK advice, which included “Damped Light” mode, a fancy euphemism for synchronous rectification/complementary PWM, medium to low timing and maximum start power. BLHeli also has a “demag compensation” feature which appears to delay commutation to compensate for current decay in the windings. Who knows!? I wasn’t given the imprssion that its users actually understood what it meant, nor does the manual really say anything useful.

I found that Demag Compensation turned all the way up gave the best performance, along with maximum start power. However’ it still couldn’t compare with my SimonK experience. It seems like even maximum start power is much weaker than what SimonK permits you to do.

Here’s the final test drive I made with the BLHeli Spider ZTWs:

I’m honestly not very impressed. I think BLheli is very much optimized towards multirotors and helicopters (hmm, maybe it’s even called BrushLessHeli for a reason!) and the settings are more high-level and mask the underlying mechanicals of the firmware. I think this makes it much more accessible to hobbyists, though. In the end, I’m not very enamored by it.

These were my final settings:

For a direct comparison, I decided to replace the ESCs with my old SimonK Afro 30 amp units. These have been on quite a few bots now, starting with the original Stance Stance Revolution, and they were completely beat up. But they still worked!

A direct replacement into the existing wiring harness later… we have SimonK!

I found myself in the awkward position of using KKMulticopter Tool to compile a customized SimonK formware, then uploading it via BLHeli Suite because my USB dongles didn’t talk to KKMulticopter Tool; I’d lost my AfroESC USB dongle a long time ago.  BLHeliSuite doesn’t seem to have a firmware editor window that I’ve found yet.

Here it is. I found the SimonK version so much more responsive that I actually needed more counterweight on the front. So, a non-fitting bolt gets zip tied to the nut! Now the bot’s a lot more controllable:

I like it a lot. It might even be worth doing 4WD to give me more yaw damping, or I’d have to design the bot to be well balanced enough on front skids, or something. I used my typical SimonK parameters: complementary PWM, maximum braking power, maximum braking ramp speed, and adjusted start PWM limits to something like 50%.

I’m aiming to get Roll Cake and maybe Colsonbot running for this year’s MomoCon in a couple of weeks, so hopefully I’ll post up some design news soon!


A Different Kind of Chinese Motor Controller?! Adding Dynamic Braking to your Inexpensive Chinese VFD

Apr 06, 2017 in Beyond Unboxing, Reference Posts, Stuff

Here at Big Chuck’s Robot Warehouse, we love our Chinese motor controllers. I some times think that at this point in life, I’ve become a kind of Chinese motor controller evolutionary biologist…. or at least like the Identifying Wood guy of underpowered gate drive amplifiers, I hope. Taking apart and examining motor controllers, which I’ve written up many times on this site in “Beyond Unboxing”,  is a large part of how I came to understand them, at least to the degree that Man can comprehend the transcendent nature of motor controllers.

Navigating the Pacific Rim of Chinese mass-market industrial products is not for the feint of heart – often times, products are sold over-rated and inaccurately advertised, and much of the knowledge base of using these products exists on hobbyist forums and message boards/email threads. This means anyone else outside of a circle of knowledge who tries to buy something and use it is often frustrated due to the lack of official documentation… and to find any good documentation often requires sifting through a forum thread or (heaven forbid) Github repository. That’s what I try to remedy whenever I cross paths with it, with some detailed writeup and explanation of what’s going on. Because at least that appears on a search engine result in a comprehensible fashion!

Today, we *gets out David Attenborough voice chipset* will be getting a closer look at a different species of Chinese motor controller. Rarely seen in the North American continent compared to its smaller, domesticated brethren, it is the majestic Giant Chinese VFD.

This one’s an adolescent male, with a 9/2016 date code. You can tell from his unadorned, angular ABS plastic case, compared to the more ornate and filleted females. He’s just begun to venture into the wild alone to expand his territory.

He stalks his prey, an aging Bridgeport J-head, from the safety of his preferred observation grounds, a nearby wall:

Okay, that’s enough, David. Also, lyrebirds are cool.

So why do I need a VFD? The shop has easily-obtainable 208V single-phase power which we had installed, as seen by the new junction box behind the mill. 208V is just missing the 3rd phase to become 3-phase, but that doesn’t exist in the vicinity and wasn’t going to be cheap to run. Hell, even if I had 3 phase, I’d still be getting a VFD anyway to have the additional running envelope and ability to change to arbitrary speeds. You mean keeping the Bridgeport in low gear and revving the motor to 13,000 RPM isn’t a good idea?

I did an initial sweep of the space of available Chinese VFDs back in January. Did you expect me to pay actual money for a real, working and supported product? Come on now, you know I’d rather jump into a pool of sharks. Chinese knockoff sharks!

As you can see, they all look kind of alike, and based on my brief research on DIY CNC forums and groups, they’re basically all the same genericized design. This is similar to other Chinese industrial products, including my favorite e-bike and R/C brushless controllers.

I have a rule called the “Law of Chinese Packaging Inertia” – if the Chinese product visually appears the same as a counterpart, it very likely is the same, or has trivial differences for marketing reasons. There’s been no better proof of this law than hoverboards seg-things, but it’s existed substantially in the past in the form of cordless drill motors for robots, the aforementioned e-bike controllers, and the like.

On eBay, there are numerous US-based resellers of the same products:



So I picked one which was severely overrated nominally for the motor it was to be running – a 3 HP (4kW) rated one, thereafter sorting by distance nearest and free shipping. You Only Line-start Once.

I figured I might as well err on the side of caution ratings-wise, since my other Chinese product rule is known as the “Harbor Freight Derating Factor”: derate by half if you intend to use it, and by 2/3rds if you’re standing under it. Vantruck weighs 3 tons. Have you seen how thin the metal is on a 3-ton Harbor Freight jackstand?! Don’t give me none of that shit…

The real reason, though, was because I picked the size originally for eventually powering the lathe, which has a pretty beefy spindle motor. I decided to outfit the mill first because it was a bit safer of a proposition to try something unknown on – there’s less rotating mass to bring to a halt.

Alright, my life is settling down a little after Motorama and the insurance & mechanics nonsense. Let’s wire up the mill!


Actually, speaking of “have you ever”…. have you ever seen inside a 1HP Bridgeport J-head “pancake motor”? I have actually never looked inside one until now, somehow, and it really is an axial-flux motor! For some reason I always mentally wrote it off as a very stubby conventional motor, but this makes so much more sense. Have a look at these photos! I didn’t take apart the motor since I “get it”, but that was a good trivia day.


I had to remove the drum switch (for manually powering in forward or reverse) and then drill an access hole in the 1/4″ thick cast iron junction box for a cable grip. This was when I discovered the previous operators used a 3-conductor service cord on a 3 phase motor with no ground. The ground was an extra piece of hookup wire mashed into the cable grip, electrical taped around the machine, and eventually into the 4-prong twist-lock plug. Well, at least it was grounded.

Wiring was pretty easy after that, and the instruction booklet which came with it was very Technical Chinglish but easily decypherable (and comparable to other more English manuals for VFDs).

Has anyone seen THE USE OF MANUAL???

These things will allow you to change a lot of parameters about the motor, and you can set the V/F line to have 2 slopes for more torque in certain operating regimes, etc. They call this “arbitrary” V/F curves, but no, it’s not really that. It came with a bunch of parameters set assume 50hz mains, which I changed to 60hz. Other parameters control what inputs the drive unit listens to – I hooked up an external potentiometer and told it to use the potentiometer to control the speed, as the unit DESPITE BEING ADVERTISED WITH ONE IN THE PHOTO didn’t come with a knob on the control board! See the very first photo above.

I cut the faceplate open to try and see if there was one hiding in there or something. Nope, missing. This will become a trend.

Most of the parameters I ended up leaving stock until I had a better feel for the system, since I’d not set up a VFD before. These inexpensive units are generally open-loop VFDs – they don’t have a tachometer input, though there seems to be an option in the settings… I’ll have to look a little more in detail.  They just bang out a frequency, and you can set how fast it increases that frequency for acceleration; if you set it too fast, you fall off the optimal slip region for maximum torque and your motor actually takes much longer to spin up (Induction motors require the supplied field frequency to be just a little faster than its rotational speed for torque production).


I call this the DOUBLE DANGLE


Slowing down was the hard part. Nominally, this thing had “braking”, and included terminals for a dynamic braking resistor, subway train style. I added one found in the bowels of MITERS – a 120 ohm, 50 watt unit. A little undersized, but it’s not like I’m stopping this motor every 10 seconds for a tool change.

Despite having the options selected, I couldn’t get it to actually perform any braking. I could either 1. set the ramp-down time to nearly as long as the machine would take to coast down by itself, or 2. just use “coasting stop” mode which was exactly the same damn thing because it just lets go of the output.

Attempting to set the spindown time faster simply resulted in the unit shutting down outputs and displaying an overvoltage error. Yes, it would make sense – when the motor regenerates power into the controller, it needs to go somewhere. In EV controllers, it’s back into the battery. I’ve never heard of a ‘grid tie VFD” for controlling machines before, though conceivable it could track the mains voltage to try and dump current back into the building, but why would you do that…. Or, you burn it off in a braking resistor.

Without any of those sinks of power, the voltage on the DC power rails of the VFD will spike upwards uncontrollably. It looks like this one will shut off at 400V on the DC power bus. I investigated a little more with stopping from different speeds, and it’s definitely correlated to the energy contained in the rotor and how fast I try to slow it down. So, it thinks it’s doing braking, but nothing is happening.

Well, I could leave it in coast mode, but what fun is not going down without a fight with a poorly documented Chinese product to the death?!


Step 1: Crack it open. Here’s what the power stage looks like. All the familiar trappings of a motor controller are there! Immediately, I can see that one of the gate drive optocouplers is missing…. probably the one that tugs on the braking IGBT.For a rundown on the symptoms I described here, read that article. It’s nice.

With some more research (read: forum threads… literally, read forum threads, like this one and this one) I found hints that a lot of these Inexpensive Chinese VFDs ship without any of the braking components populated. Given that this thing came with no potentiometer either, I’m entirely unsurprised. What I don’t get is what market they expect to sell to; a lot of them are advertised for process pumps (e.g. water pumps, blowers, oil pumps and the like) which I presume is a thing that doesn’t really need braking and doesn’t need constantly variable speed control, but maybe just 2 or 3 speeds and an on/off.

That’s another thing about Chinesium I can appreciate, even if I find it frustrating. Everything is stripped down and rat rodded to the point of doing only 1 thing, but it will probably do that 1 thing very well.

Staring at the P+ and PR terminals for the braking resistor under a backlight shows that there’s nothing connected to PR. It looks like there should be a wire jump…

Probably to here. The missing IGBT is connected via a wire jump to something. It’s functioning (based on the pinout of most IGBTs of this package) as a common-emitter  switch, one leg tied to ground and the other leg pulling on something. That something is supposed to be the DC rail (P+) through the braking resistor (between P+ and PR). My board seems to be a newer revision than the ones found on those threads, as a lot of the parts which were 8pin through-hole parts are now SMT parts, and the layout is different. Either way, from my investigation, 2 parts are missing: Q23, the bremschopper, and PC11, the optocoupled driver which tells it what to do.

So, if I haven’t reiterated, I fucking hate digging through forum threads to find the answer to my question. All y’all need to learn to keep a website. Read on if you want to add dynamic braking to your Inexpensive Chinese VFD!

I figured the parts used for this extra drive circuit should just be the same as the rest, so I ordered a pack of the IGBTs used on the board – FGH60N60SMD. The optocoupler driver TLP701AF didn’t have an exact match in-stock at Digi-Key, so I went for a similar equipped part number, TLP701HF.  The -AF part seems to have tighter switching time tolerances. In a single switch configuration here, I figured it doesn’t matter.

By the way, fully optocoupled drive is something I really, really want for Brushless Rage… but it takes up a whole lot of space compared to some driver ICs :(

Mounting the IGBT onto the power stage required some creativity. I cut up a spare RageBridge silicone insulation tab for it, and mounted it on the heat sink plate where it should go. Then I bent the legs up to the point where they should fall right into the empty solder eyes on the board. I decided to do it this way since trying to solder the IGBT to the board first wouldn’t have guaranteed it being able to lie down flat on the heat sink.

On the board itself, I made the wire jump from Q23 to the PR terminal.

And finally, I reflowed PC11, the optocoupler, onto the board.

And you know what?! That was it!

Man, whoever made this just couldn’t be motivated to put the extra 3 parts on it, eh? Guys, we saved like 80 cents! Yay!

Granted, again, if 99% of your users just drive their hydroponic pot farms with it, they’ll never need the braking feature and you might as well leave those parts out. For everything else, there’s my fucking MasterCard. Ugh.

Here’s a test video showing the braking in action. I cycle through the viewable parameters when the motor is running so you can see the DC bus spike up before the resistor does its job.

“DCB” is an added braking option where after the frequency gets low enough, it will just short the leads of the motor together. This provides extra braking power for speeds that are too low to generate any voltage to push across the braking resistor.

So there you have it. That’s literally the only thing stopping these controllers from being more useful running machinery! Now that I have additional parts, I’m going to purchase another one and wire up the lathe too.

Beyond Unboxing: The Harbor Freight Brushless & Lithium Extravaganza – 40V Lynxx Chainsaw

Dec 04, 2016 in Beyond Unboxing, Reference Posts

Harbor Freight! Brushless! LITHIUM! IN THE SAME SENTENCE?! Words I and many others never expected to hear, much less experience in person. But here we are, in $CURRENT_YEAR, where a Harbor Freight product contains this…

Welcome back to BEYOND UNBOXING, where Charles buys small consumer / industrial devices to take apart and cruelly comment on their parts and construction. I believe in looking for parts in unexpected places and using them across intended industries, so the intent of the series is to inspire people to go “Huh… well I guess you could use it to drive my electric combination briefcase & portable document shredder”. I only reverse-engineer as far as it’s convenient to do so, because the rest of it is your job.  My previous ventures in this series have all focused on building sillier go-karts and stupider robots, and this shall continue the same trend.

Two years ago, I took apart and analyzed the Ryobi brushless chainsaw, back when these things were still relatively new and fancy. There’s been a recent explosion (and not even in the lithium sense!) of brushless lithium-ion outdoor power equipment market, which is great because those tools are more likely to have motors on the scale of one human butt-moving-power, or the 1+ kilowatt range. Now that Harbor Freight has even gotten in on the game, that’s when you know the concept has matured! Sorry Harbor Freight, please still love me.

I was clued into this when I was on my semi-weekly pilgrimage to Harbor Freight (ask anyone who knows me – this is real) and talking to them about #season3 plans when I asked about when Harbor Freight was going to start going brushless.


> mfw "We got something in 2 weeks ago you should see!"


I forgot what it was I went to Harbor Freight for, but I sure as hell left with a chainsaw for some reason. Introducing the 63287 Lynxx 40V 14″ cordless chainsaw!

Welp… it begins again. I see that the “GAS-LIKE POWER!” fat-substitute additive marketing line has since been taken over by claims such as “BETTER THAN GAS!”. I can think of a few things better than gas, such as nausea and indigestion. This is the presentation – unlike the Ryobi (whose packaging status I haven’t checked in on), the whole chainsaw ships in a box without the chainsaw part sticking out.


That’s because it ships disassembled, with the saw chain in a separate baggie and the bar dismounted. I think this is better for the product’s survival rates. Anyways, once you get inside, the presentation becomes a bit messier, with stuff taped in place to other stuff. But we’re not here to wax our neckbeards over how the product appears in the box – no, not all. After all, I would have been satisfied with a presentation any more nuanced than Harbor Freight staff literally throwing the chainsaw at me. I would even be okay with it if it were off at the time.

Here’s all the parts! Bigger white box is the battery charger, little white box is the battery itself.

Well, since there’s still boxes, let’s unbox them! This is the battery charger base and battery. We’ll be checking out what is going on inside both of them. The battery feels awfully small for the saw it’s supposed to be running, but that’s lithium being deceptively power dense, so I won’t prejudge yet. The battery charger feels very light – a sort of “We know this is 1 PCB inside here, but here’s our attempt to make it look like it houses a miniature nuclear power station!” design language.

The battery comes apart with just four Torx T20 screws. Nice try, product design gods. The first thing we notice is that yes, there are in fact 10 cells in there – 10 of what self-reports as Samsung INR18650-25R cells, quite a reasonable choice. The 18650 market in my opinion is just as, if not even more competitive than the flat cell market, since it’s a singular form factor used in multiple industries which production engineers can really mutually stroke over. The best commonly available 18650 cells are 3.6Ah and But Charles, this site is selling a STOP LINKING ME SHITTY CHINESE “5000mAh” 18650s BECAUSE THOSE ARE ALL FAKE. Experimental pre-release ones, as of my last knowledge sync, were approaching 4.0Ah per cell legitimately – so who knows, maybe one of these days.

The next thing we see is a 40 amp fuse.

Nope, not an electronic fuse made of MOSFETs, or a cutoff circuit made of the same. Just an honest-to-Baby Robot Jesus 40A ATO fuse, soldered in place. You blow it, you’re done! Unless you’re me and selectively bypass your fuses for extra hilarity in life. The low-cost-ness was starting to show through.

The OEM of this battery is shown on the silkscreen of the PCB. They also seem to be the OEM of the whole unit. Holy hell, they have a Brushless Drill. AND A BRUSHLESS SAW. And their choice of color coordination is based around MIKU BLUE AND BLACK! Damn, did I start a Chinese tool company and forget about it or something?

YOU KNOW WHAT THIS MEANS? HARBOR FREIGHT BRUSHLESS DRILL CONFIRMED Serious talk though – their 40V blower is the same as the Harbor Freight 40V brushless blower. I found this unit less enticing because it’s more or less a ducted fan in a tube.  But I really hope we start seeing the brushless drill soon.

Fancy little fuel gauge light on the battery, a normal characteristic of lithium drill batteries everywhere. This fuel gauge is powered by a Chinese 8051-like microcontroller

Something felt wrong, though. I inspected the board thoroughly for any signs of current measurement devices, which would let you ‘coulomb count’ and keep track of the battery state of charge. But there was no such hardware. Nor were there even cell-level taps so the controller can sense what the battery cell charge levels are and accommodate for them. You usually see this in the form of large power resistors that are shunted in and out of higher-voltage cells. The controller keeps the cells within a certain charge variation window, or can declare the pack dead to the power tool if one cell takes a dive.

I couldn’t see any circuitry at all that could be described as a battery management system. This, plus the presence of the internal 40A fuse (that needs disassembly and soldering to replace), makes me fairly sure that this battery is running by the Grace of Robot Jesus alone. The little fuel gauge light is likely just a voltage sensor.

I even stared at the underside of the board to see if there were parts I missed. Nope – besides connector pins sticking out, I could see no signs of cell taps, current sensors, or bleeder circuits.

Now, truth be told, there is precedence for un-BMS’d lithium batteries. In fact, my old e-bike battery was a solid blob of 2.4Ah 18650 cells with just a thermistor wire coming out besides the main charge-discharge wires. It’s stayed working for the past ~5 years and continues to take in 6 to 7Ah every charge. If all the cells are well-matched for characteristics, then over their design lifespan they will never drift apart in charge level enough to be dangerous. Plus, there’s a hard fuse on the outputt in case of shorts. So this is some pretty intense cost cutting, or perhaps cost tradeoffs being made; purchase better quality cells, skimp on monitoring hardware.

I’m actually not sure how I feel about this. With all the recent chatter of explosive phone batteries, seeing a pack as ‘naked’ as this is a little concerning. However, even with a BMS, if you have a counterfeit or defective cell that just decides to let go, there is actually scant little you can do to prevent exothermic events from progressing. This is part of the Curse of the Hoverboard SEG-THING, DAMMIT! we experienced last year; I’ve taken apart SIX of those things. All of the batteries have a similar BMS card on them, and as far as I can tell, they all work. But if one counterfeit cell sneaks into your poorly verified and documented supply chain, you’re done and your product’s reputation is ruined.

So really the question is how MUCH do we trust this OEM to only use well-matched cells? WE REPORT, YOU DECIDE.

So up until this point, I’ve not actually shown how the two mate together. Like basically every tool battery these days, they slide together and lock, needing you to squeeze the latch to release. Nothing surprising here!


Here’s the inside of the charger after disengaging the four T20 screws holding it together. The “this is one board” theory is revealed to be true. Not that it’s surprising, since welcome to 99% of all consumer electronics today.


There’s no intelligent battery stuff going down here, really. It’s a 42 volt power supply, probably with constant-current and constant-voltage modes that automatically switch and that’s it. Really, that’s all you need to charge lithium batteries. The simplicity of the battery charger’s LED signals on the front panel speak to this. Either it’s running in CC mode and charging the battery up to, oh, maybe 80-90% SOC, or it’s in CV mode and it’s “done”. If anything else happens, like the battery voltage to start with is too low or it stops drawing current suddenly, is an “error”. Else if it’s been trying too hard, it’s an over-temp error.

So I had been wondering about the fan – it doesn’t seem to point at anything meaningful, like at the heat sinks. So what’s it trying to cool?


Well, here is the battery in its home orientation. It looks like the fan is supposed to pull air through the battery case – which IS vented, so no IPxx protection for you – and help keep the cells cooler.

So in conclusion, there’s nothing very revolutionary about the battery. It’s reasonably middle of the road technology, well cost optimized, and well packaged. Time will tell if the lack of real battery management circuitry will pose a problem. Let’s move onto the more interesting problem, the chainsaw itself!


I put together the whole unit for fun – clearly, if you are just after the motor, you don’t need to assemble the saw.


The frontmost (righthand) yellow knob locks the chain bar down in place, or it dismounts the whole light-gray cover at the same time unbolting the chain bar, if you untighten it. The winged yellow knob to the left adjusts chain tension by moving the whole bar in and out. This is much the same story as the Ryobi, and seems to be common to chainsaws in general. In fact it seems to be one-better than the Ryobi because instead of tightening two nuts and a small screw to make the tension adjustments, you only handle two very large and visible knobs to make these adjustments. I dunno how helpful that is to chainsaw-monglers in real life, but I LOVE HUGE KNOBS it appears to be a better UI decision.

The disassembly begins! T-25 screws hold the handle onto the body. After those come out, the handle is removed. On the back, more T-25 screws hold the motor cover on. I basically began removing every screw in sight on the back side, and the motor cover was the the highest level group of screws. It popped off to reveal:

Okay, this is getting interesting already. We see that the motor is a rather large inrunner-type motor, instead of the outrunner type in the Ryobi. A worm gear-driven oil pump to supply chain oil is tied directly off the rear of the motor shaft. All of these screws holding the pump on can be removed now, to free up maneuvering the motor out later.


By the way, just out of curiosity, I took apart the tension adjustment mechanism, and it is a nifty small crown gear setup.

This crown gear actuates a threaded rod, running longitudinally here, with a nut riding on the end that pulls the bar back and forth.

The next step to disassembly is removing the motor chain sprocket there in the middle. This involves either retaining ring pliers or two small flat-drive screwdrivers and a lot of creative swearing. I used to despise retaining rings in middle and high school before I gained the tools to work with them. Now I love them! Overhaul is basically one big snap ring!

All the T-25 screws on this side pop off, and then the saw basically falls into two halves cleanly.

This thing has a nifty auto-shutoff clutch/brake that is actuated by the big black flap to the upper right. The black flap has to be pulled back for the saw to run. There is a sensing switch that otherwise prevents the motor from being started, as well as a mechanical stop that consists of a pin being spring-loaded into a hub mounted on the motor shaft. This mechanical assembly is shown in the rest state above, where it prevents the motor from turning as well as interlocks the controller.

As I have not actually chainsawed anything in half recently, I figure this is an automatic stop at the end of a cut when your saw falls through the now-cut material. Any small amount of pressure and movement seems to be enough to click the flap back to its home position.

The flap and the motor-stopping pin shown in the working position. Anyone know why this saw has such a feature when the Ryobi didn’t?


The controller is the next easiest thing to slip out, as it just sits in a square cubby. Along with it comes the battery connector and two switches: the trigger switch and the flappy interlock switch.

The clutch parts can be removed as soon as the saw is open.

The motor shroud comes out next after the removal of three small fiberglass-plate retainer clips held in by Phillips head screws.


Finally, some last T25 screws later, the motor can be lifted out.

And here it is. This is actually a huge motor. It physically outsizes the Ryobi motors by at least twice in volume and weight.  It has a 12mm double-D-to-10mm-flats shaft, similar to the Ryobi. The big nosecone houses the chain-stop clutch mentione before.

I am utterly surprised at how huge the motor is, and am even more satisfied that it’s found in a $170 NEW saw. This motor is something I’d pay $170 for, period.

The controller, though, needs some more loving. First of all, it’s ON-OFF ONLY in stock form. It ramp-starts the motor up to full speed once both AND-wired (series connected) switchs are closed. When either one is released, it hard-brakes the motor. So hard that the first time it did so, the motor torqued itself out of my hand and chased me around the shop.

I also practically destroyed it freeing it from its potted housing to take a look at the hardware. The architecture is “Classic Jasontroller” as people familiar with my brushless ESC vernacular will understand. It’s built like every e-bike controller I’ve ever seen, in other words. Discrete gate drive circuitry with big and brute force linear regulators.

The MCU is a very typical-Chinese STMicro 8-bit microcontroller, likely a genericized or pin-and-code compatible version available on the Chinese market, even though it has ST markings.

Given that the ESC is “one speed” and basically an e-bike controller, I’m not going to spend much more time talking about it. It’s a known quantity.

And a test video, where my friend forgot the “I’m done with motoring” cue and kept recording for a few awkwardly silent seconds:

So here are the guts of the 63287. My conclusion: It’s an undersized battery and undersized controller for the amount of motor that’s in this thing. Having “one speed” – that’s full speed – compared to the variable speed controller in the Ryobi makes a little more sense now. When the controller is only fully-on and the MOSFETs are not chopping current, there’s less losses to worry about and less heating. That means you can get away with a smaller controller with less semiconductors.

You’d just hope the motor never wants to draw more than 40 amps for a while. That IS a good 1500-1600 watts of cutting, mind you, and through some VERY TERRIFYING locked-rotor testing I discovered the controller does have a stall-protection cutoff feature as wel as a rotor blockage detection on starting. You haven’t lived until this motor has thrown an 8″ Vise-grip at you, but I suppose that’s pretty damn close to dying for something I proclaim to be living-related.

Without further hacking, though, the controller is borderline useless for EV purposes. I could MAYBE see a case for a robot weapon or using it in some other related application like meloncopters for fun, where you’re more likely to be running at full power. However, that battery will not last very long under said full power conditions – 40 amps will drain it in minutes, and if you go over that, you’re likely to blow the fuse up inside.

So I think we see the “Harbory-Freightyness” expressed through some interesting cost-sensitive decisions on the OEM end, such as the lack of a BMS for the battery and no variable speed control. But dat motor – let’s investigate it more.

That is an interesting-ass back-EMF waveform. Hey, this reminds me of my ‘middle finger wave’ days! I can’t even remember what I was building then, but it sure as hell didn’t work.

I spun it with my Milwaukee brushless drill (because my life is brushless) to collect this motor’s intrinsic BEMF profile, a.k.a what the motor really wants you to drive it with. To collect the vernacular “Kv” value – RPMs per volt at no-load, there’s a process involved.

You can take half the peak-to-peak value of this waveform as seen on the oscilloscope and use the relation Vpp/2 [Volts] * delta-T [seconds] / 2π [radians] = Vpp [Volts] * delta-T [seconds] / (4π) [radians] ¹. This yields a value in SI units for the BEMF constant, V*s / rad. Generally, radians are considered unitless so they are not written in unit analyses, but I like to keep them there for less confusion when converting into RPM (rotations per minute, or 2π radians per minute)

For this motor and the measurements shown, the Vpp is 21V and electrical period of the line-to-line voltage is 13.5 milliseconds. This yields a BEMF constant of 0.022 Vs/Rad, which in “Kv” form  RPM per Volt is 423.

To get the mechanical RPM of the motor, this basic RPM/V value must be divided by the number of magnetic pole pairs. 423 RPM/V represents what the “unit” 3 phase motor with 2 magnets and 3 phase windings would be. This motor has nine phase windings, but how many magnets does it have?

Three 3mm socket cap screws later and you can very carefully and gingerly work the motor apart. I chose to remove everything from the back side in order to not deal with the mechanical stop hub. The magnetic pull is very powerful and taking the motor down this far is definitely not for the faint of heart or fancier of fingertips.

Counting the magnets reveals there are 6 magnets, or 3 pairs of magnets. Consequently, the RPM/V-as-you-see-it is 423 / 3 [Pole Pairs], yielding 141 RPM/V.  As a sanity check, I actually used a tachometer on the motor being driven by the controller, and measured about 6300 RPM on ~40 volts, yielding a value of approximately 157 RPM/V.

This is a slower motor than the Ryobi’s approx. 300 RPM/V.  All other parameters being equal, this motor trades speed for torque. Since I don’t chainsaw things reguarly, I’d really be interested to see videos of this saw in competition with others to see what the variation in speed does to affect the cut. But what it means for “other” applications is the need to use less gear ratio for the same output speed and torque, possibly simplifying design.


The motor has a hefty fan on the end and the rotor is reinforced by a stamped steel cup that is also epoxy-bonded to the magnet and the laminated(!) rotor. I think this rotor can survive some overspeed excursions just fine.

Pretty densely packed windings. The airgap diameter of the rotor is exactly 50mm, and the stator lamination unit is 32mm long. I measured the line-to-line resistance as an average of around 39 milliohms. This puts the motor easily in the class of the common 63mm outrunners for power throughput ability. Compare Overhaul’s SK3-6374-149 lift motors at roughly the same Kv and 40-42 milliohms phase resistance; this motor has more iron and copper by mass than the SK3s, so it will be able to hold a certain power dissipation (load) for longer.

Like I said – wow, so much motor for comparatively little everything else! I guess that’s where the money went… everything certainly shows a little for it. I see this product as having a potential future upgrade path with a much larger battery and controller that can push 1.5 to 2x the power into it. That would be chasing after the Greenworks 80V tools in power, I think, having seen a GW 80v chainsaw motor before.

To use this motor well, I think it should be paired with a 150-200A controller to really take advantage of its power capability. It’s not sensored, unlike the Ryobi motor, so that complicates things a little bit – you can’t just throw a Kelly at it, for instance. Maybe BRUSHLESS RAGE a SimonK-flashed large R/C controller or whenever we see a bigger VESC design.

Anyways, is someone interested in a cordless chainsaw without a motor? Contact me. Oh, it’s also taken apart into a billion pieces. Should go back together with a bit of tinkering!

¹ Okay, so I actually confused myself a little because I haven’t mentally checked my motor math in a while. It’s often the case that “BEMF Constant” or Ke refers to the BEMF contribution of one phase. This is most commonly encountered in academic treatments of motors such as this one (See page 13 Equation 14) and this one (See Equation 7.6 in Section 7.3, pp. 36) because it is simpler to use the single phase contribution in vector math with the other three phases. There is an extra 1/sqrt(3) difference from the L2L (line to line) measured voltage versus the single phase-to-neutral (L2N, P2N) contribution. It’s how we get 208V mains electricity from 120V.  However, I seem to do things differently, concentrating on using the motor. When you power the motor in typical BLDC trapezoidal commutation fashion, you power 2 phases. Therefore, you can’t use the Ke of 1 phase only in isolation – the phase 120 degrees offet from it will contribute the additional sqrt(3) voltage. Using Ke alone as-described in those papers will get you a Kv [RPM/V] that is sqrt(3) more than reality. I had to look back through my notes and crosscheck this with physical measurements to convince myself I wasn’t going insane. Be careful with information on the Internet, kiddies.

Beyond Unboxing Returns with some #Season2 Shenanigans: Axent Wear Kitty Ear Headphones!

Jan 25, 2016 in Beyond Unboxing, Bots

It sure feels good to be back doing one of these again! It’s been a while since the last one, about little hub motors that you can now buy instead of e-mail me about; since then, they started making EVEN SMALLER ONES! Now we’re talking 8wd Chibikart Pike’s Peak Hillclimb Edition levels, or the go-kart equivalent of the Human Centipede or whatever. Your tastes might vary.

On this edition of Beyond Unboxing, we explore a product that is so quintessentially me for some reason that everyone has felt the need to go “Hey! Have you seen this thing? It’s so totally you!“. I’m of course talking about…

Little known story: The whole reason my ears existed on Battlebots, and subsequently I became known as “cat ear guy”, was because I made them as a knockoff of Jamison’s ears which were a directly inspired knockoff of the Axent Wear. See, unlike Jamison, I never finished mine, so they were merely hollow shells. Not only that, but I basically brought them as an afterthought – as a “okay, might as well look goofy if needed” accessory stuffed into the very top of my luggage.

In fact, his knockoffs were so convincing that many people also told him that “Dude, you got ripped off!” when they heard of the Axents.  Ah, the circle of Internet fame.

This does seem a little out of the ordinary as something I would just go out and buy, since it’s not some kind of obscure motor controller or power tool… but there’s a story to that too. Apparently the producers of Battlebots were at CES 2016, saw them, and were reminded of me. It helped that (allegedly) the booth personnel were fans of the show. A week later, I had a unit in hand after it was given to them and shipped to me! Awesome. Brookstone, if you want your name on #season2, we need to talk. You guys need to put a liiiiiittle more effort into sponsorship than that, wink wink, but not much more!

So here we go… Oh boy.

Yup. #Season2 will. Be. Insane. Now, those who are genre-savvy with Beyond Unboxing posts will know that I pretty much only make these posts if I already have plans for something. In a way, they are a barometer for what I might skulk off to do next. I’ll explain how this ties into the #Season2 (I will pretty much only refer to #Season2 using a hashtag, by the way) plans soon.

At first, I didn’t really intend to take these apart. But then I was showing somebody, and I dropped them. And then, I only had one side’s lighting left over… uh oh!

Get ready for some Beyond Unboxing, where I take these apart gratuitously in order to see what might have gone wrong with the wiring when they were dropped, and alongside, give a quick tour of consumer product design.

Here is the beginning of the presentation. It comes packed in a plain black, non-showy form-fitting zipper case. This is an alien concept to me, since I guess I’ve never owned “nice” headphones in my life until recently when I picked up a HyperX Cloud gaming headset secondhand, and it also had a case.

Inside the case, the headphone cable and boom mike live on the left, while an included USB micro-B cable for charging is on the right.

The unit by itself. Once again, I don’t claim to know anything about nice headphones. I assume they all have this many degrees of freedom!

I’m not sure if I am a fan of the sound yet. It’s quite “boomy”, reminding me of the times I tried some Beats by Dre – all bass and low end, and nothing spectacular elsewhere. I suppose it fits well with current pop and hip-hop music. Either way, it’s well known that I am a Hipster of the Nth Degree when it comes to music, so I explicitly absolve myself of any authority on this matter.

A closeup of the lighting effects. The LEDs are clearly white – just the plastic colored ring determines the color of the glow. My issue was that the right-hand side (as pictured, so “left ear) was very sporadic, like a connector was barely hanging on or something.

For those who haven’t seen these used, the headphones are passively powered via the cord like you’d expect – but the lighting and external speakers (in the ears) are battery-powered, hence it needs periodic charging.

Let’s start popping stuff apart. First, the earpads can easily be slipped off (I keep wanting to call them “ear poofs”, but they have a name):

This exposes four small screws to open the housings.

Use a small Phillips driver (I had a #1 – this seems to be correct) to open the housings.

Here’s what they look like on the inside. The left side has the audio input and microphone jacks. The signals travel to the other side which contains the amplifier and power supply board.

The signal input board is held in by two small screws. I also pulled out the spring clips which give the housings a bit of “detent” feel in their yokes (the forks they’re mounted to) – that’s how they stay in place if you fold them. There’s a small plastic plug that the spring clip mates with that pulls out easily. From there, the housing can be full removed…

..If you’re more careful than me. I tried to remove the housing entirely, but I misaliged the other side and broke off the other pin-like structure its mounted to. No consequence, but there will be more sloppy movement as a result. Being more careful instead of pulling harder probably could have avoided this. Alas, the difference between a hub motor and little plastic speakers.

Regardless if the housing comes off the yoke or not, the plastic accent ring and cap can be removed from the inside using four screws. Two of these are accessible only if the input board is removed.

Check out the LED ring. I plugged the board back in temporarily to show the lighting effect.

The LED board is smooth white on top and made of two pieces – the printed circuit board with the LEDs is mounted to the white ring, which is a light-diffusing plastic like what would be used on a LED backlight. This softens the glow and prevents you from seeing discrete LED dots.

A little prying and the printed circuit board comes off. The LEDs are a unique side-emitting package instead of the far more common top-emitting type.  The LEDs fire into the internal face of the light-diffusing plastic, causing the ring to glow very evenly.

This thing has become more hardcore than I had anticipated. I was thinking that there would be an easy way to change the color of the LEDs if needed. Not so much with these – they likely chose white since it can be slightly filtered by the color of the accent ring into any of their colors. Add to that the oddball package needed and your choices are limited.

The three components of the lighting accents… or Axents, if you will.

Moving to the larger board, the amplifier board – I damaged the battery connector trying to remove it. It’s held in place by a very one-way snap/detent, which I broke before getting the connector to back out. It still contacts fine however. Your experience may vary.

The other connectors are secured by a small amount of adhesive, but this comes off readily.

The amplifier board! I wish I could say something about its design, but it’s not a motor controller. I’ve not worked with audio ICs in the past, so unlike said motor controllers where I can tell you whether or not it’s worth using, the specific implementations of the ICs used are lost on me. All I know is it cannot flow 500 amps.

I played with searching for their datasheets, however, and in doing so I discovered that some of these are pretty damn obscure. As in, no English-language results worth following up on. I actually had better luck hopping on a Chinese search engine like Baidu. The vast majority of results regardless were trading websites, not manufacturer’s datasheets or similar, and they all claim ORIGINAL PART!!!! like it means something. It seems like a lot of these chips are genericized and made by many factories for myriad applications, so you just pick one off the cloud. The same phenomenon gave us Seg-things.

The major ICs listed, which I could track down anyway, are…

  • CSC8004 – SOIC-16 package, some kind of 2-channel amplifier. I could only find a datasheet for the 8002, but I assume the 8004 is just the 2 channel version of it.
  • TPA2017D2 – 20QFN package, a Class-D 2 channel amplifier. If I had to guess, this one drives the external ear speakers, since Class-Ds can push more power with less dissipation and the ear speakers do get quite loud.
  • SC51PS704 – an 8-bit microcontroller. Looks like one of many different 8051 clones – similar 8051 clones are used in a lot of Chinese e-bike controllers. So few pins are actually connected on it that I think it only handles button presses.
  • BT608M – this was the single hardest thing to find. There’s lots of places trying to sell it to me! When you start getting into places called “ICMiner” or “”, that’s when you part is obscure-ass. It’s also apparently a model of hospital bed, and Bluetooth-compatible speaker system. If I stopped searching early, I might have assumed it’s some kind of unimplemented Bluetooth hardware (but why even populate it then?). But I don’t think so – based on various side-channel mentions of it, such as this spammy blogpost, and this short title, I am led to believe it’s involved in the button-controlled volume for the ear speakers. If you can find this datasheet, you are better than me.
  • NJM2100 – a dual op-amp, SSOP-8 package.

Since these units are made in Taiwan and commissioned by a big company like Brookstone, I assume they have their entire network of Chinese parts traders which I realistically have no handle on at all.

The housing on the right-hand side contains a similarly shaped though not completely identical LED board, as well as a small battery in the hollow portion of the black cap.


The right side LED board taken apart. This one has more markings!

I temporarily hooked both back up to check for differences in light output and the patttern, but they function pretty much identically. By the way, as soon as you disconnect the battery, the system will not arm lights or external sound until you plug it into USB power at least once.

The ratings on the battery are obscured by a bit of rubber tape.

Scraping it off, you can see that the battery is 1.0Ah. Assuming you don’t crank the ear speakers at full tilt, this should last for several hours of using the lighting and ear speakers together. They claim 5 hours – I haven’t verified this yet, but some rough calculations – 3.7V * 1.0Ah is 3.7Wh nominal, of which 80% is typically available (assuming it lets you drain the battery to 20% SOC, divided by 5 hours gives an average usage of 0.6 watts. Plenty of sound for you and probably the people in your immediate vicinity.

None of this solved my lighting woes, though. The next step was to disassemble the headband to see how the signal cross from one side to another.

I’ll get this out of the way right now: I hate snap-fits. Hate everything about them, but they are the go-to these days for consumer products because of less parts cost (no hardware). But they’re generally one-way only – you try to dismantle them and they usually, you know, snap. Those that don’t just break off you can usually only get very limited assembly-disassembly cycles before they no longer hold.

That being said, the headband is held on by 18 terrifying snap-fits. Four are at the corners where the headband ends inside the little plastic bezels – pull those upwards (in the shown orientation). The headband itself has 10 snaps that pull towards the center of the loop:

And the method of transmission is revealed. A ribbon cable! Seemingly a somewhat fragile ribbon cable. I hooked the lighting back up to see if any joints here were loose. It seems like the very act of manhandling the ribbon cable area trying to undo the snap-fits fixed whatever the issue was, because now I had both sides of lighting again.

Okay then.

From website reviews, it seems like some times there are issues with one side completely losing functionality. I suspect an issue with either this ribbon cable (I also hate ribbon cables, but just a little less) or the interconnects between it and the left- and right-housings – tiny cables made of braided Litz wire which is enamel-coated. This strikes me as being rather fragile, though most audio signal cables I have seen are made of this wire.

A closeup of the ribbon cable. This is oriented with the inputsside to the right.

Alright, as long as I’ve gotten this far into it, let’s keep going and see what the ear speakers look like. To get to its mounting screws, there is a plastic cover which has two screws that needs to be removed. This piece is the “detent” surface for the headband adjustment, which generates the clicks you feel when you pull on it. It then slides up and away.

Three silver screws attach the ears. Two are directly accessible, the other one requires you to mash against the R+/R- connector pictures above a little bit.

Here is an ear!

After some prodding, I found that the bottom is held in by two small snaps which are easily released, but the top appears to be a plastic snap rivet which, predictably, snapped. Its wreckage can be seen at the top of the ear.

The ear speaker is a cute little 1″ driver encased a small bucket that is sealed with a ring that has some foam tape. The back of the bucket is open, but the ear is still a very small enclosure. The ear speakers sure sound like small speakers in a small plastic enclosure, like most Bluetooth speakers I’ve had the pleasure of experiencing – a ton of midrange, and not much else, muffled and tinny at the same time. An audiophile I am not.

The depth of the ear speaker.

The ear accents are constructed like the ones on the headphone housing, using side-emitting LEDs pointed into light-diffusing material. The blue speaker icon is a separate piece and easily removable.

I peeled back the rubber compound holding the LEDs to the diffuser. There’s only two LEDs here.

So there you have it! Now I have no clue how to put this thing back together! Hey Brookstone…

I hope you’ve enjoyed this tour of what a modern consumer electronics product basically looks like – lots of molded plastic, snap fits, and housing little printed circuit boards. I feel like they still have a few little quality issues to overcome, but in general the amount of effort that was put into these was beyond what I expected.

That same level of effort also makes these things much harder to modify, as I had said at the beginning. Why would I be thinking of modifying them though!? That’s because of….

#Season2, Or: BattleBots, the Anime?!

I’ve been throwing around this false hashtag #weeabot on purpose for a little while now (false meaning I don’t ACTUALLY have a Twitter or Instagram or Tumblr account where tags actually, you know, matter – I consider Facenet hashtags to be kind of vestigial) on places like r/battlebots or the BB official pages. Anyways, what it embodies is my continued unstated, half-assed life goal to increase the intersection between engineering and anime. Put simply, there’s just not enough of it – at least in meaningful ways. Just like I like my science fiction rather high up on the hardness scale, I like my engineering depictions somewhat plausible. This in general never happens.

I also have a desire to offer counterpoint to the likes of Kantai Collection, which has (in my opinion) completely ruined the mecha musume genre. I like girls and machinery, and consequently girls with machinery, but Kancolle’s character designs essentially have nothing to do with the machinery. You don’t just weld battleship parts to a schoolgirl archetype and try to sell it to me. And the worst part is, it’s spawned endless look-alikes which have the same problem. It’s gotten so bad that even Toyota has started doing it. That’s truly when your genre jumps the shark*.

I can’t not say IMPOSSIBRU, sorry.

To matter the reason, if I don’t like anything on the market, I tend to make my own. RageBridge (and RageBridge 2) was a direct response to how much other motor controllers in the market segment sucked (AND STILL SUCK).

Now, an artist I am not, but luckily I have the help of the magical and talented Cynthia, who also brought you Arduino-chan as seen here last year. Besides returning again to help with the fabrication and electrical work for next generation Overhaul, she will also be creating team cosplays uniforms designs, as well as an “Overhaul character” in the vein of the mecha musume series and the, umm, Priusettes, which you loving and adoring fans may cosplay as in the live audience! One that doesn’t suck.

Here is a preview of things to come…

So there you have it. While I’ll be cranking on making OH2 hypothetically easier to service, faster, and more reliable (read: less fail), she will be making the brand. A robot TV show is about more than just the robots, after all. And especially in this day and age, you won’t really know what becomes popular due to the Internet Hype Machine ahead of time, so perhaps this is an exciting new direction. Hell, if all goes well, we’ll have a character for EVERY  #SEASNON2 entry – there will be surely something for everybody.

And lastly – so why did I feel the need to “mod” the Axent Wear? Because the shade of blue doesn’t match the new “team color” (and robot thematic color) for OH2, digital goddess and “That girl Charles has a sticker of on everything he owns” Hatsune Miku:

Of course it’s a Miku-van

It’s more of an aqua/cyan color, which involves a wavelength of LED that is not common at all, much less in sideshooter package. What I’ll probably just do is 3D print translucent-white accent rings (the currently blue parts) and coat them with something that is more aqua. (To my knowledge, nobody makes an already-translucent aqua/cyan 3D print filament).

Oh yeah, definitely expect the whole bot – however it ends up looking – to be plastered in character stickers and corresponding thematic paintwork. Since Miku is a copyrighted character, it will probably be whatever the OH2 character ends up as. I have a few places that can provide the necessary vinyl graphics.

And finally, for something vaguely robot related…

Those are rubber bumpies, similar to the ones used on OH1 but smaller and more numerous. Yum, bumpies. All shall be explained soon – I have over sixty design screenshots of OH2 to write up as soon as I’m more than 90% sure I won’t get kickb&4lyf for doing so.

#season2 #weeabot

*Not to shit on Toyota too hard for this campaign, since they did hire many different amateur artists to make the individual designs. It’s made the Prius about 2% less horrifying in my mind.