Tech Tips

EV3 Motor Synchronization – Move Sync Block

This article is from 2019; some details may have changed.

Synchronization? What's that?? Can you eat it???

Synchronization keeps two motors at the same speed and makes them finish at the same angle.
In plain English, it makes the robot drive straighter.

Download link here: Google Drive

To help you better understand what synchronization is, let's first watch the video below:

YouTube video thumbnail
Click the image to watch on YouTube

In other words, for various reasons the stock motors may run at different speeds, producing a speed difference (for example, you enter 50 for both the B and C motors, but the output might be 50 and 45), which makes the robot drive crooked.

Without synchronization
Without synchronization

So we developed a synchronization Block that supports both the medium motor and the large motor (it calls the generic motor block internally for control), so your robot no longer veers off course.

Move Sync Block, developed by OFDL HSU of Dr. Player Robotic Lab
Move Sync Block, developed by OFDL HSU of Dr. Player Robotic Lab

This Block lets you adjust the Kp value to suit different motors. After all, motor parameters aren't all alike, though LEGO's native block already does a good job.
There's also a reverse option. Medium-motor robots are all the rage right now, but one of the two medium motors is bound to be mounted the other way around. In that case, just check the left/right reverse option and it will reverse for you, with no need to do any math on the input power~

With this Block added, the robot goes much straighter right away (it looks a little crooked at the end because of the stronger braking force.)

After adding synchronization
After adding synchronization
Comparison with and without synchronization
Comparison with and without synchronization

How Synchronization Works

More experienced students may ask: doesn't the EV3's large-motor block already have synchronization built in? Why add this Block??

The reason is simple. The EV3 software's built-in block does include synchronization, but for motors with larger discrepancies, the built-in synchronization may not work well, so you need an option to adjust Kp. That's when our Move Sync Block is a great choice~~
(By the way, the EV3 large-motor synchronization feature also works with the medium motor.)

Does your robot often fail to drive straight? Has it ever wrecked your run in a competition because it couldn't go in a straight line?
Download our Move Sync Block now and solve this problem~~

https://drive.google.com/file/d/1y2yLFhnvLAl9TOLZV87dwn4sa8TkBVHY/view?usp=sharing

Block author: the odd human who works at our center