Serial motor controllers

I bought a couple of these a while ago and just got around to playing with them and I found something odd in their command features.

I thought I'd check a few other controllers available from sparkfun and others to see if they also worked the same. What I'm talking about is the fact you can update only one motor at a time.

Is there some reason that anyone can think that they do not make them capable of setting both motors direction and speed simultaneously in one command? It seems to be the norm but why?

Wow no answers

either no body out there is using serial motor controllers or I’ve asked a stupid question. As I am curious to their popularity I might turn this into a show of hands of those who have used or are using serial motor controllers and which one and why you chose it?

Is updating only one motor

Is updating only one motor at a time a problem? 

No I don’t see it as a problem

It’s just that if I connect a h-bridge chip to my micro I can control both motors in one command by flipping the bits on the port. Just curious why no one (well at least the controllers I looked at) passes this ability through with the serial commands.

It’s not an important issue I was just wondering the reasoning behind it.

I can only assume nobody

I can only assume nobody bothers to make these controllers with a “both motors” set of commands because you can issue two commands back-to-back so quickly over the serial comms. The delay between receiving the first motor command and receiving the second motor command would be too small to have any effect on the type of system these controllers are designed for.

That sounds a reasonable

enough explanation. Completely makes sense, thanks for clearing that up Telefox. Although I am curious if one pushed the limits a bit under what circumstances would switching one motor then another cause glitches. If you were say for instance required to run the controller at 2400 baud because you were over a wireless connection which only went to that speed. And your vehicle could travel at 12 khp then in the time between switching one motor and then another you would have travelled another 5cm.

The math if I got it right:

2400 baud equals .4 ms per bit  seeing most controllers take 4 bytes at least to update motor thats 40 bits including start and stop bits. so we have an interval of 16 msec between updates of the two motors.

Now say your vehicle can travel at 12 kph then in 16 msec you could travel a further 5cm before the second motor would update?

12000 meter per hour :- an hour is 3600000 milliseconds. So divide 3600000 by 16 and we get 225000

divide 12000 by 225000 gives us .05 meters or 5cm

The speed I chose by taking the speed of the fastest micromouse but I’m sure he doesn’t use a serial motor controller at 2400 baud. LOL . So yeah I think your right under most circumstances it doesn’t matter and it’s only an extra line of code a few times through your program I guess. Thanks to both of you for your replies.