Share this project


Share this project

A low-cost, open-source, Arduino-compatible balancing robot for learning, hacking and delight
A low-cost, open-source, Arduino-compatible balancing robot for learning, hacking and delight
138 backers pledged $18,174 to help bring this project to life.

A big setback and a solution

Posted by Chris Hakim (Creator)

The quality of these motors is all over the map. I have been prototyping with better motors than I could get wholesale. One major difference is a set of three EMI suppressor caps assembled as a single ceramic plate mounted on the rotor. Between any two of the three rotor poles, I measured about 5.8nF of capacitance. That is equivalent to three 3.9nF capacitors in a triangle. That’s the good motor I have been prototyping with.

The wholesale motors didn’t have this ceramic plate or anything else to suppress EMI. They generate a ton of noise in the Arduino. The Arduino’s I2C bus is notoriously sensitive to switching noise (see Moreover, the Arduino I2C library does not timeout if the I2C hangs for any reason, thus crashing the entire system. Fortunately, another I2C library has been offered and works well.

Classically adding a 0.1μF capacitor just outside the motor doesn’t help. The real fix is brutal: dismantle each motor, add three capacitors, put the motors back together. That’s 33 hours of labor on top of everything else.

On the upside, the balancing and rotation are slightly improved, and those cheap motors in other respects are better for balancing. And Lil’Bot found a new friend at the Hacker Dojo:

This extra labor (and three frustrating days going to the root of the problem) may or may not cause a delay in the robot deliveries. I don’t think that will be too severe.

Apollo Crowe, Steve Sabram, and 3 more people like this update.


Only backers can post comments. Log In
    1. Steve Sabram on

      I have seen this way too many times with various projects. The sample is good quality that you place into design. When the time comes to do a volume purchase of the "same" part, the batch comes in of lesser quality.

      At times, the part broker will just pass on a manufacturer recommended replacement part if the one you designed in is discontinued. The OEM many not even send an end of life notice.

      If your project is a "small batch" build, you may be getting the lowest quality lot of parts that just passes their internal specs. Not the best business policy but common -- especially if you are dealing with surplus dealers or parts brokers.

      This is why I prefer going with a contract manufacture for any lots outside a half dozen units. They manage the lot purchases and qual the parts before build while handling defective part returns. The extra fee a CM charges for QC pays for itself in lack of returns from your customers.

    2. Real Keys Music on

      I like the video. Yeah, hardware prototyping is like that. Several times I've put together with a friend working models of biomedical monitoring devices. Then you try to make ten or twenty and the parts come in from the suppliers and they are very different. Often tolerances are broken or at least misunderstood. Just the way it is, I suppose. By the time my partner and I have revised the design to accommodate at least some of these variations, we end up with something robust. Sounds like a lot of work and inconvenience for you, though.