by Fritzoid » Mon Jan 25, 2010 12:59 pm
by Fritzoid
Mon Jan 25, 2010 12:59 pm
The protocol between the PC and the CM-510 is pretty simple. All I know is what I've seen from monitoring the port. I think there's some further documentation for it on the Robotis site.
First the PC sends a lower-case v.
The CM-510 responds its ID which includes the text "CM-510" and the number "1963". I don't remember the exact message, but you'll see it alot.
Next the PC sends a single upper-case letter command, E for the motion (E)ditor, M for (M)anagement mode, etc.
The controller then spills out the ID info again along with info about the attached devices.
What comes next depends on what you do in the application. However, in all cases the process remains the same. PC sends a simple ASCII command (at 56KB) and the controller responds with a stream of ASCII text.
One thing I seem to be hearing is that you have intermittant trouble, i.e. it works sometimes. This points at timing issues. The protocol is sensitive to the timing, it can't tolerate certain delays.
I've seen this type of behavior with USB dongles that buffer the output and hold data until some internal limit is reached. The fix there was to get a better dongle. Maybe Windows or the PC USB port has a similar issue.
The protocol between the PC and the CM-510 is pretty simple. All I know is what I've seen from monitoring the port. I think there's some further documentation for it on the Robotis site.
First the PC sends a lower-case v.
The CM-510 responds its ID which includes the text "CM-510" and the number "1963". I don't remember the exact message, but you'll see it alot.
Next the PC sends a single upper-case letter command, E for the motion (E)ditor, M for (M)anagement mode, etc.
The controller then spills out the ID info again along with info about the attached devices.
What comes next depends on what you do in the application. However, in all cases the process remains the same. PC sends a simple ASCII command (at 56KB) and the controller responds with a stream of ASCII text.
One thing I seem to be hearing is that you have intermittant trouble, i.e. it works sometimes. This points at timing issues. The protocol is sensitive to the timing, it can't tolerate certain delays.
I've seen this type of behavior with USB dongles that buffer the output and hold data until some internal limit is reached. The fix there was to get a better dongle. Maybe Windows or the PC USB port has a similar issue.