As I have mentioned in a couple of threads, I have been doing some playing around with the Robotis OpenCM9.04 boards and seeing how appropriate it would be to maybe move away from the Arbotix-m (8 bit 16mhz AVR) board over to the Robotis OpenCM9.04 boards which are ARM M3 that run at 72mhz...

Threads: http://forums.trossenrobotics.com/sh...(or-MX)-servos and http://forums.trossenrobotics.com/sh...(or-MX)-servos

There are several reasons for this, including 32 bit ARM vs 8 bit AVR, but also hopefully more support for the board. That is they have an Arduino board install for current versions of Arduino, plus they have libraries that are setup for Protocol 1 and 2...

I won't repeat everything from those threads, but I still wonder about a few different things, like a preferred way to use the OpenCM to connect up to AX/MX servos and likewise the new XL430-250 (which I have 2 on order to play with).

One method is to use the OpenCM9.04c board connected up to their OpenCM 485 expansion board(http://www.robotis.us/opencm-485-expansion-boar/) So far you are still forced to solder the expansion connector pins to the 904C board to plug into this, but does give you AX/MX type servo connections, plus a barrel power connector. However it is not perfect... That is, the AX/MX servos are on this board using the Serial3 object, the Serial1 object on the 904 board is more or less ignored unless you use the 4 xl connectors... The hole pattern of the board does not match the 1cm hole grid pattern of the PhantomX plates... Also using the 485 board, with normal break off pins to connect the 904 to the 485, you don't have access to any of the unused pins of the 904... On one of the 904 boards that I soldered up I used some extra long header pins from Sparkfun such that I had access to some of these pins from the top...

Still wondering if you are not just as well off, simply using the standard 904 board without the 485 expansion. Probably use simple 3d printed adapter board to mount it to top deck of Robot. Probably use two of the AX/MX Power hubs. Need a custom cable to connect from the 904s XL cables to the two hubs. Maybe just one cable and use normal AX/MX cable to connect the two hubs (Two as 6 legs, maybe head, plus connect to 904) > 6... Since the 904 is not connected to anything you are free to solder in expansion pins and connect other pins as desired...

User Interface Controllers: I am playing around with two different ones.

Arbotix Commander with XBee: At OSHPark, I have made a couple of XBee adapters for this. The first one is real simple, It has only the 2 2mm XBee conectors and a 4 pin connector like the one that is on the 904, so hopefully you can simply find cable to connect... Actually have 2nd version of this one, where I made it have mounting holes on 1cm grid... I also made a second version, that I have not assembled yet, that tries a horizontal version of the connector and added 3 leds (RX, TX, connect)... So you can see if you are actually talking or not... Again with 1cm grid mounting.

The other controller I have tried, is the Robotis RC-100 controller http://www.robotis.us/rc-100b/ connected up with their bluetooth setup... I have some real real basic stuff sortof working with this one, but for about $100 you end up with no joysticks, just 10 buttons... So prefer other solution. However with the Bluetooth you do have the option of maybe connecting to cell phone or tablet and maybe have control using those...

As I mentioned above, one reason for all of this is Arduino Support. You can install their stuff, by using the Arduino board manager. You need to edit the Arduino preferences and add to the Additional Boards manager URLs:
Code:
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCM9.04/master/arduino/opencm_release/package_opencm9.04_index.json
You can then bring up the board manager and install the support for this board.

Current state of things: I have a WIP where I ported over my AX12 Test program as well as a version of the Phantom Phoenix code base over to the Robotis DynamixelSDK and OpenCM... Currently the test program appears to work and I have my Ver 3 PhantomX hooked up and it appears to walk... So far I have not tried running it on battery, but tried it with wall wart...

Code is up at: https://github.com/KurtE/Open_CM904

Will post more about this soon... Probably want to clean a few things up first.