IME Best Practices?

We’re finding Integrated Motor Controllers VERY unreliable.

I tried to understand what I can about this and I can only get loose connections and the possibility of static and also some crazy ‘flywheel’ code to keep checking the IME for reset. Also would suspect EMI is an issue as well.

A ‘for instance’, despite double-blinking green the code only runs correctly some of the time. Definitely not reliable enough to use in competition & discouraging for the kids!

I was thinking of wrapping the cable in aluminum foil and grounding it to the chassis and ground chassis to battery - but this doesn’t sound right…


Use the quad encoders, most teams have run into the same issues and stopped using IME’s, except for certain circumstances, long ago.

I totally agree with @TriDragon , the best practice for IME is really try not to use it.

Every time we turn our robot off and on again, we have to unplug the encoder wire from the I2C port and replug it again in order for our IMEs to work. Asides from that, our IMEs have been working fine.

My opinion here: Why I’ll Never Use IMEs Again.

The article describes how the I2C communication works (really complex), the things that go wrong with IMEs, and what your program does when those things go wrong. We had an awful awful Startstruck season with an encoder on the robot. Even if you’re not using the IME in the code, just having it plugged in can cause problems. See article for full details.

My biggest beef with them is randomness. For us, it never caused the same problem repeatedly; over the course of the season it caused a long list of seemingly-unconnected problems that were not repeatable in the lab, so it took us all season to figure out the problem.

Randomness - EXACTLY!! So I either need to remove them entirely , or find a way to get reliable performance - which if you all can’t means we sure won’t!

Thanks - will try this!

I’m going to add this information to my article, in the “If you’re stuck with them” section. I wish my team had known last season! Thanks for the tip –

I am of a completely different mind, maybe i’ve just had a lucky run. But all my IME’s have never given me a single problem. With all code being used by them running perfectly as it was coded to. I am not here to change any minds, just weird to me people are having such problems :slight_smile:

Hmmm, very interesting. I’m sure these should work but so many are having similar problems.

Is there anything in your code / cabling that may be unique? Maybe we should go to an older firmware?

Again, we get ‘all green’ on our IMEs and too often the run forever - we’re seeing ‘0’ in the debugger