Micro Maestro Noobie Question TX - TTL command


I am using the Pololu Micro Maestro to run a Raven prop I have built running 5 servos inside. The Micro Maestro works terrific and I am very happy with what it can do.

I want to use an SD Card MP3 Player Module RS232 (mdfly.com/index.php?main_pag … cts_id=284) to run the sound for the prop (ie: the raven calls) which I can put on the players SD card that will startup when a TX-RX TTL command is sent to the MP3 card gets a HEX signal.

Now I am totally new to using the Micro Maestro and even though I went through all the documentation and connected the MP3 players RX to the TX of the Micro Maestro, I have no idea how to send the proper commands to the MP3 player from the “Maestro Control Center” software.

The MP3 player will be the only device connected to the Micro Maestro that will be running “self contained” (not connected to a PC once programmed.)

According to the documentation, the MP3 player needs to receive the following HEX commands to function.

The required BAUD RATE for the MP3 player is 4800, N, 8, 1

Command (hex)
000 = Random Play
01-C7 = Play specified MP3 file (001-199) Example: to play track 001.mp3 send command 01 and for track 010.mp send 0A
E8 = Volume +
E9 = Volume -
EA = Play / Pause
EB = Hold
EC = Resume
EF = Stop

Can someone help me with whatever “CODE” I need to cut and paste into the Maestro “script” to make it work?

Basically I just need the script code for Maestro Control Center to send “01” to play track 001.mp3 on the card.

Any help would be greatly appreciated.

Thank you.

Hello, hirez.

Unfortunately, what you are trying to do is not possible with the Micro Maestro. You could send TTL serial bytes on the TX line if the Micro Maestro was connected to a computer, but the Micro Maestro does not have a script command for sending bytes.

I recommend getting a Mini Maestro 12, connecting the GND of the Maestro to the ground of the sound module, connecting the TX of the Maestro to the RX of the module (with a level shifter if necessary), setting the Maestro’s serial mode to UART and 4800 baud, and then writing a script like the following:

  2000 delay  # wait 2 seconds
  0x00 serial_send_byte   # send a 0 byte: random play

Please note that 0 is the same as 0x00 and 16 is the same as 0x10, etc. The only thing that matters is the value of the byte you are sending, not the notation used in your source code.

The serial_send_byte command is documented in the “Command Reference” section of the Maestro User’s Guide.


So the Maestro 12 will work sending the command with the unit self contained and not connected to a computer?

Is that correct?

I am please, but also a little bummed because I just ordered 3 more micro maestros last week which arrived on Saturday to make a couple more of these raven props, and now those won’t do what I need them to do. Shame.

Yes, that is correct.

I’m sorry you ordered the wrong thing, but maybe you can find some other fun project for them?