Tag Archives: moteus

Populating r3.1 moteus controller boards

I am a big fan of MacroFab.  They’ve built a PCB + assembly + more service that is transparent, high quality, and nearly completely self service.  They appear to be making money, so hopefully they will stay in business for some time.

On top of that, they offer a “quick turn” option which gives you populated boards shipped 10 business days after you order them (and I’ve even had them ship out a few days early from time to time)!  The only annoyance is that the quick turn option is limited, as I’ve mentioned before, to boards that meet certain criteria, among them having 20 or fewer items on the bill of materials.  To try and get this first quadruped prototype up and running quickly, I’ve been exclusively relying on quick turn boards, which means making some compromises.  Even after some moderate design sacrifices, I haven’t been able to get the servo controller board to 20 parts.  At the moment it is 23.  Thus, when I received the first big-ish PCB order I’ve made (qty 28), I got to spend a morning populating the remaining 3 components on all 28 boards.

Unfortunately, as painful as that was, it was still worth it as opposed to waiting an additional 3 weeks for the non “quick turn” service.

For posterity’s sake, the only difference between the r3 and r3.1 board is some silk screen changes, and one or two equivalent part substitutions.


moteus brushless servo open source release

moteus is an open source brushless servo actuator designed for use in highly dynamic robots.  It consists of PCB designs, software, and mechanical designs necessary to construct powerful brushless servos, and link them together into legged robots.  Today I’ve published the full source and designs for all of this work on github under an Apache 2.0 License – https://github.com/mjbots/moteus

moteus r3 controller installed on leg
moteus r3 controller installed on leg

These are the software and designs I have been developing in order to replace the actuators on Super Mega Microbot (which will probably get a new name shortly as well).  It isn’t done, but at least the controller is working well enough now that I have a pre-production verification run of ~30 controllers in flight.  Even still, I expect that further evolution, both on the controller board and in the mechanical systems is inevitable.

The software is largely C++ and python, compiled with bazel and designed to run on an STM32F4.  The PCBs are all designed with Eagle, and the mechanical systems are all designed with FreeCAD.

I definitely want to acknowledge Ben Katz, who was a big inspiration for this effort.  While this isn’t a direct derivative of any of his work, I really appreciate the open source releases he did make.

CAVEATS: As with any actual hardware project, especially one that can apply large amounts of power to small brushless motors, actually using these designs risks burning down your house, injuring your body, and all sorts of other bad things.  If you choose to try these out, you are on your own!