Exact Error sensing


I have a micro maestro 6-channel servo controller.
I’m using a c# programm (i din’t write it myself) to controll the servos.

Everytime i try to move the servos the red LED on the controller is flashing and in the controll-center i see that an Serial Protocoll Error occured.

is there a way to see what exactly has hapended like what the byte-code that the controller received looked like ?!

Just to let you now:
The Software what originally writen for the Pololu USB 16-Servo Controller and rewritten to also work with maestro. Unftortunately the rewritten Programm only works for the the guy that rewrote it. Everyone else (that shared the results) encounters glitchy performance and errors.



Do the servos move at all? Do you encounter the same problem when moving servos in the control center? A flashing red LED indicates that your input voltage is low. I recommend trying the same thing with no servos connected to see if your power supply is the problem.

There is no way to see the exact serial bytes that were received, but you can debug it by simplifying everything down to the smallest possible system that causes the problem - if you can find one command that works and one that doesn’t, with no servos attached, we can help you fix the bytes that you are sending.



Okay flashing wasn’t the right word…it lights up and keeps shining.
In the control center the servos work perfectly fine and I’m encountering no errors.

In the SW ImM using there are several protocolls incorporated. I’ve tried it with MiniSSC and it works.
It seems to work perfectly although i cant say for sure because i’m still missing hardware to test the software completely.
The strange thing is that although it seems to work now…the red LED is still shining and there’s still a serial protcoll error happening!..any idea about that ?!

Once the protocol error occurs, the error LED will stay lit until it is reset by a clear errors command. If you simplify your program, you should be able to isolate the command that causes the error and tell us the corresponding bytes so that we can diagnose the problem. Otherwise, there is not much more that we do to help you!


Alright i’ll give it a try…thanks anyway !

Okay i think i have it.
I think its because the SW i trying to communicate with a monoswitch that should be on port 2.
As i said I’m still missing hardware and one of the parts happens to be the monoswitch.

So if the SW tries to communicate with a switch that isn’t there it gives me the “Seriell Protocll Error”.

Does that make sense ?!

No, that does not make sense. I have no idea what a “monoswitch” is or what it would mean to communicate with it, but the only way that you would get an serial protocol error is if you sent an invalid sequence of bytes - that is, it did not correspond to the commands listed in the User’s Guide. If you can narrow down your problem to a single command that causes the error, just post the sequence of bytes that you sent as well as your complete (highly simplified) code, and we can help you debug it. For example, you could tell us something like: “I get the error when I send 0x43, 0x84, 0x30, and here is my code that does it…”


I see.
Well at least i can narrow it down to a few functions of the code now.
Because of my suspicion (eventough i was wrong) i removed the functions that controll a monoswitch and i don’t get any errors now.

So I’ll check which line it is exactly an post it here…thanks again !