Is there a way to know if the drive wheels are "straining", like when locked up with an opposing bot?

This is for a Lego sumo bot using the Lego Mindstorms Education EV3 Core Set (EV3 Large Motor 6009430 and Lego Mindstorms EV3 Home Edition).

The approach that should have worked is based on the difference between the "regulated motor" green block and the "unregulated motor" blue block. The regulated motor retains a consistent speed, adjusting the power necessary to keep that speed, while the unregulated motor sends a constant power so the speed may change based on resistance.

There's a yellow block called "Motor Rotation" which has a setting to read something called the motor's "Current Power". Instinctively, I figured that would tell me the power being sent to the motor, so if it was driving using the regulated drive block, I would expect to see a number that would go up when the motor encounters resistance and needs more power. (And the number would go down hypothetically if the bot was going downhill and needed less power to maintain speed).

But, in practice, the number returned from the read "Current Power" matched the speed number I sent to the regulated motor block, and when resistance was applied, the number went down. I tested this by having the number displayed on the screen, the number displayed matched the "Current Power" number shown in the live "Port View" in the Mindstorms computer app, both went down when the wheel slowed.

Is there a way to read the real "Current Power"? Is there any other way to know when a motor is straining?


2 Answers 2


I was playing around with my EV3 robot and I intentionally prevented it from being able to turn a full 360 degrees. Right out of the blue when it couldn't move a full rotation the EV3 light started blinking orange. When I let go it turned the rest of it's rotation and the program stopped, which makes sense since there were no other instructions for the robot to complete. I repeated this process and got the same results, and that was odd since the program didn't interfere with the light in any way.

I found out a few details about this:

• Even after you let go, the flashing orange light still stays.

• It occurs when the EV3 cannot move it's motor(s) far enough (in this case the big servo motors), specifically when it can't even budge.

• The program will not continue unless you allow the motor to continue it's rotation.

• It doesn't seem possible to program the EV3 to stop the orange light after the motor can continue it's rotation (or maybe it is, I'm not certain).

Again, this doesn't suit your needs, since the orange light will remain from that point on. The energy meter probably doesn't tell if the motor is stuck, and this automatic light system isn't suitable either. But at least I tried!

  • I don't have this project anymore, but if I were to continue on it, I'd try monitoring the degrees of rotation over time compared to an expected rate if the motor was under a normal load. That's a good hint.
    – efreed
    May 11, 2020 at 17:56
  • I believe the orange light indicates low battery or excessive motor strain, and I have noticed that it switches back to green after a short delay. Probably the one 360-degree turn did not last long enough for the light to return to green. Jun 12, 2020 at 5:30

When I was looking in the sensors tab of the LABVIEW EV3 block-based coding software, I saw something that kind of looked like an alternative NXT Brick.


It was actually an Energy Meter, and because of its name, I thought it would suit your needs. However, it's wire port looks like it's intended for Lego Power Functions, but if it's in the EV3 programming software, then obviously there must be some sort of way to get it to work with EV3.

  • 1
    Have you checked what "Energy Meter" actually is? I don't think it is supposed to work in the setup described by OP. It has both PF and Mindstorms type connectors. With later one supporting the so called "E-motor" only.
    – Alex
    Apr 29, 2020 at 14:50
  • 1
    Some details about "Energy Meter" can be found here: le-www-live-s.legocdn.com/sc/media/files/user-guides/mm/…
    – Alex
    Apr 29, 2020 at 14:51
  • What a curious little product. +1 for including a link to the PDF. Looks like this is designed to use a motor as a generator (motor becomes an input to the battery unit and some mechanical force pushes the unpowered motor). Doesn't like up with the OP though, and is for an older version of Mindstorms NXT.
    – efreed
    Apr 30, 2020 at 16:01
  • @efreed If it's in the EV3 coding software, then isn't it meant for EV3? Apr 30, 2020 at 18:37
  • @mindstormsboi I thought for sure I saw a picture of an NXT device when reading the PDF, but must have been reading to fast. I take back my NXT comment. It's still a +1 for finding this, but it does not make possible monitoring the load/stress of a drive motor that is in use.
    – efreed
    May 4, 2020 at 16:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.