I’m using your Mini Maestro 24 for a hexapod walker (details and pics here: http://forums.trossenrobotics.com/showthread.php?t=4102). I’ve found it to be a lot more compact and capable than other servo controllers. However, there are a few areas where I think it could be improved so I thought I’d share them. It’s possible these are my fault rather than the controllers, if so please say so.
When a servo is set to go to a position at power up using the Windows program, it only seems to work if the USB cable is plugged in before servo power. I.e. if you are using one power source for logic and servos (with the jumper on), when you plug the power in the servos wont move (they actually stay unpowered as if they’re set to ‘Off’ in the power up option), whereas if you plug the USB cable in and then the servo power, the servos will snap to the positions you set.
I’m impressed with the Maestro’s acceleration and speed options (especially acceleration, this seems to be pretty rare and useful for smooth moves). However, one extension of this I’d like to see is setting the time a move should take. I think the Lynxmotion SSC- style controllers handle this pretty well. Information on them is here http://www.lynxmotion.com/images/html/build136.htm . I’m particularly interested in the ‘group move’ feature where several servos can complete movements of difference distances yet begin and end their movements at the same time and take a specified time to do so. I know that the speed setting could be used to the effect, but if this was handled by the controller itself it would be a cool feature and save time sending serial commands while only requiring a simple function in the code.
[The advantage I see this feature as having over using the acceleration commands is that in some applications the servos don’t just need to be at a start and end point at particular times, but may need to move along a particular path, so you could send position to a servo every x ms, and the controller would make sure that the servo was moving at the right speed between each position so that it always reached the end point just as the next position to go to was received. This would be especially useful in walker applications using inverse kinematics, where you send the positions the servo need to go to to the controller every few ms, and the intermediate positions need to be filled in smoothly. I imagine that such applications must be pretty common for servo controller such as the Mini Maestro 18 and 24. ]
Sorry for the lengthy post! Perhaps these features could be incorporated into the next firmware version.