Unresponsive Maestro 24 on Linux

How do you control a Maestro 24 from Linux?

I just received a Maestro 24 and I tried following the setup instructions included with maestro-linux-150116.tar.gz for using it on Ubuntu 14.04, but it seems to have no effect.

Following the README, I ran:

sudo apt-get install libusb-1.0-0-dev mono-runtime libmono-winforms2.0-cil
sudo cp 99-pololu.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
./MaestroControlCenter

The control center launches and shows no errors in either the GUI or terminal. The Maestro’s yellow light steadily blinks, and the green light begins quickly blinking.

I have a Hitec HS-300 standard hobby servo attached to channel 0, but enabling channel 0 and moving the position slider has no effect on the servo. The yellow light flashes twice indicating “at least one of the servos is enabled”, but the servo doesn’t move. When I first enable channel 0, a prompt warns me that “The servo controller is currently configured to detect serial baud rate. Until it has detected the baud rate, it will not be able to control servos. Do you want to change the serial mode to UART, 9600 baud and apply all settings now?”

What is the point of this message? Of course I don’t want to limp along at 9600 baud. I thought the selling point of the Maestros was that they can run at a high baud rate? Regardless, it doesn’t seem to matter. Clicking “cancel”, to auto-detect the baud rate, or clicking “ok” to switch to 9600 baud has the same effect in that it can still not control any servos.

I’ve tried various configurations:

  • without external power, using only USB
  • with an external 5V supply
  • with three different servos
  • with the servo on different channels

But none of these configurations work

I verified all the servos I used worked by controlling them from an Arduino using the simple Sweep example.

I’ve also tried controlling it from Python, but even though it throws no errors, it too has no effect.

How do I get this running on Linux? Is my Maestro DOA?

Hello.

I am sorry you are having trouble getting your Maestro to work on Ubuntu. The warning message you received just states that you cannot control servos from USB in the “UART, auto detect baud rate” mode because the Maestro will be waiting to detect the baud rate on the RX line. If you are trying to control your Maestro from the USB, I recommend using “UART, fixed baud” mode. The default baud rate in that mode is set to 9600, but you can change that value to match the baud rate of your controlling device.

What power supply are you using for your servos? Can you post your Maestro settings file and a picture of your setup that shows all of your connections? You can save the settings file in the Maestro Control Center by selecting File->Save settings file.

- Amanda

I’m using 4 alkaline AA batteries. My voltmeter reads the total voltage as 5.8V, which should be more than enough for the Hitec HS-300 servo that runs on 4.8-6V.

A photo of my setup and settings file are attached.



maestro24_settings_20150707.txt (4.41 KB)

Thank you for posting your Maestro settings file and a picture showing the connections in your setup. It is not clear to me from the picture if your power supply is connected properly to the servo power pins. You might double check those connections.

From your settings file, it looks like you changed the serial mode setting to “UART, fixed baud” from your previous setting of “UART, auto detect baud rate”. Did you try moving the slider for channel 0 in the Maestro Control Center after applying the serial mode changes to your Maestro? If so, does the green/blue dot on the slider bar move with the slider? If you are able to see the green/blue dot in the Control Center move, the Maestro is communicating with the computer, so it is probably not an issue with your Maestro. Also, do you have access to an oscilloscope?

- Amanda

I have the battery’s negative wire attached to the negative pin header and the positive wire to the positive pin header. Is that not how the battery should be connected?

Yes, enabling a servo and moving a slider moves the dot as well. I’m noticing that on rare occasions, the servo does jitter very slightly, but not in response to the slider. Yet, the servo still works perfectly with my test Arduino. After I enable a servo, the Maestro’s yellow LED starts blinking twice, indicating it’s now driving at least one servo.

No, unfortunately, I don’t have access to an oscilloscope.

I think there might be a problem with the Maestro’s power regulation.

Even though my battery pack starts out at 5.8V, if I measure the voltage across the battery terminals a few minutes after the Maestro is running, it reads only 2.3V. Is that normal? As soon as I unplug the battery pack, it’s voltage returns to 5.8V, so I have trouble believing the batteries are bad or defective. As soon as I plug in the battery pack, even with the Maestro turned off and unplugged from USB, the voltage begins dropping rapidly.

With the Maestro unplugged from USB and all lights off, meaning it shouldn’t be powering any servos and should be drawing no power from the battery pack, the battery still reads 0.8V. However, as soon as I unplug the pack from the Maestro, voltage returns to 5.8V, indicating the Maestro is shorting the power terminals. This really seems like a defective Maestro, as no servo controller should be consuming servo power once processor power has been removed.

I also tried it with 4 lithium batteries also measuring 5.8V and had the same result.

Is there anything else I should try before I return this? I’ve wasted almost 6 hours now trying to debug a product that should have been plug-and-play.

Yes, you are correct. Thank you for clarifying your servo power supply connections to the Maestro in your picture.

If the VSRV=VIN jumper is not on (from your picture it looked like it wasn’t), the positive power rail on the Maestro is not connected to anything else on the board, so unless there is a short across the positive and negative rails, it seems unlikely that your batteries voltage drop is being caused by the Maestro. Could you remove your servo and measure the resistance between one of the pins on the power rail and ground on the Maestro with just the power supply connected?

- Amanda

With only the servo power battery connected, if I measure negative lead on ground and positive lead on 5V, I read an open circuit. If I measure with the negative lead on 5V and positive lead on ground, I read 1.7 mega-ohms, so it doesn’t look like the rails are shorted. I confirmed that attaching a servo seems to be what causes the voltage drop, even with the USB unplugged. I tested several servos, even a few that were brand new and straight out of the packaging. Is it common for the servo to draw that much power even when receiving no signal?

If the power supply’s fine, then what could be the issue?

The Maestro has 5V out pins (labeled +5V (out)) and positive servo power pins, which are separate. You can see both types of pin labeled in the picture below.

It sounds like you might have measured the resistance between one of the ground pins on the servo power rail and a +5V pin on the Maestro. Which pins did you use to measure the resistance? If you were not measuring from one of the positive pins on the servo power rail, can you measure again from one of those pins?

I would not expect a servo to cause the voltage across charged AA batteries to drop like that unless it is damaged.

In one of your earlier posts you mentioned testing the Maestro board with lithium batteries. What kind of lithium batteries were you using? A picture of them would be helpful.

- Amanda

Sorry, when I said 5V, I meant the “VSRV” pin, which is also around 5-6V. I measured from the positive and ground pins on a servo header (the “red” and “blue” pins in your diagram), like you requested.

I’m testing with AA Duracell alkaline and AA Energizer Ultimate Lithium batteries (but not mixing them).

At this point, I suspect that some of your servos might be causing the issue. Could you connect your servo power supply directly to one of your servos and measure the voltage on the servo’s power pin? Does the same drop in voltage happen? Can you perform two separate tests, one with your Duracell alkalines, and the other with your Energizer lithium batteries? (You should use a fresh set of batteries for both tests.)

- Amanda

I don’t see how that could be the case. I’ve tested with 4 different servos, and they all work perfectly with an Arduino powered entirely from USB. The Maestro fails to work even with a brand new unused servo.

And yes, I tested with both sets of batteries, both fresh. The Maestro works with neither.

Does the Maestro only work with certain types of servos? I’m only testing with fairly cheap analog 3-pole servos.

The Maestro should work with any standard Hobby servo. The reason we think your servos might be the source of the problem is because you had mentioned that the voltage dropped when you connected a servo to one of the channels on the Maestro, but not with just the Maestro alone.

We are not sure of a way that the Maestro could be damaged that would cause it to only draw a lot of extra power when a servo is connected. We have sent you an email with an RMA number, so if you would like us to evaluate it, you can send it back to us.

- Amanda

Well this is strange. When I got home, I plugged the Maestro’s USB back into my laptop, not having changed it’s wiring to the battery or servo, and it just started working. Even with the same servo connected, the voltage no longer seems to drop. This is bizarre. I didn’t change anything but now it’s working…

I found the problem. I tried testing with a different 4 AA battery pack and both my Maestro 24 and Maestro 6 worked fine. It turns out the pins on the first pack I used were slightly lose, so depending on how I connected it, the power and ground rails wouldn’t be connected to the batteries. That’s why it usually wouldn’t work, but sometimes would magically start working and why the voltage would appear to be fine and then drop.

Thanks for your help and being patient with me.

I am glad you got it working. Thanks for letting us know what the issue was.

- Amanda