1) If you look at the ports in the Device Manager, it should be pretty clear which COM port is which. If you see something similar to "Mini Maestro 12-Channel Servo Controller Command Port (COM4)" then COM4 is indeed the Command Port.
2) To control the Maestro from your own software, set the serial mode to USB Dual Port using the Maestro Control Center and then send bytes to the Command Port. Alternatively, you can use the native USB interface (just like the Maestro Control Center), and we have lots of example code for doing that in the Pololu USB SDK. There is a section in the user's guide entitled "Writing PC Software to Control the Maestro".
3) Have you ever dealt with actual bytes before instead of text? If not, there can be a bit of a learning curve because you have to grok the idea that a byte is simply an integer between 0 and 255. A byte has 8 bits. There is no such thing as a "comma" if you are just talking about bytes. Commas and all the other printable characters are defined in standards like ASCII and the Maestro does not use these standards. It doesn't matter if you write the byte as 0x0A or 10 in your source code because both of them mean the same thing. You can't send a comma to the Maestro because the Maestro's serial protocol does not support any type of character encoding. This kind of data is often called "binary", as opposed to ASCII. The Set Target command, when using the Compact Protocol, just consists of four bytes
. These four bytes
are documented in the "Serial Servo Commands" section of the user's guide. We put commas and spaces there because lists of things generally have commas and spaces and it would be hard to read otherwise.
Things might get clearer if you looked at the "Serial Example Code" section of the Maestro User's Guide.
Here is a table that shows you the correspondence between bytes (0-127) and ASCII characters:
You can see that in ASCII, a comma is encoded as byte 44, also known as 0x2C. You might end up sending 0x2C to the Maestro at some point, but the Maestro doesn't use ASCII so the 0x2C doesn't represent a comma.
Please let me know if this is puzzling.