Today we're releasing a beta run of the ArbotiX hardware and Library files for Arduino 1.6 (finally!)
We're hoping to make the libraries 'official' in about two weeks after I've gotten some feedback. Until then, the main learn.trossenrobotics.com pages for each robot/project will stay the way they are, which reference the old libraries, so there might be some inconstancies. These will all be resolved when the new libraries are made official.
-A new and improved setup guide can be found here
Currently the install method is the standard 'add the files to your Arduino Folder' but I'm also considering making a Boards Manager file for the ArbotiX. My main concern is that the libraries get a little obscured, but I think it will be fine as long as we have both installation methods.
-We're using doxygen style commenting to generate ArbotiX library documentation
-Function renaming. Some of the core functions have had their names changed - mainly to replace 'ax12' with 'dxl'. However, there are macros for all of the old functions, so there should be full backwards compatibility with all old code. Please let us know if anything using old functions has been broken. We are deprecating several old functions in favor of new functions.
Legacy Functions / Macros
-Support for all DYNAMIXEL 1.0 Instructions</a>. First there's now support for the regWrite, reset and MX bulk read instructions. There's also now generic functions for sync write (as opposed to being tied to the bioloid library)
Instruction Based Functions
-New reporting functions. There are now functions for reporting data directly to the serial port - this includes voltage, errors and general servo status. These are designed for quick debugging and to help the build-check sketches. There are also sibling functions to get this data returned back to you the program.
Serial Reporting Functions
-Servo Modes. Different servo modes are now wrapped into functions (joint mode, wheel mode, multi-turn mode(MX servos) and torque mode (MX 64/106). There are also some other 'helper' functions to make your life easier.
-Get/Set macros. There's also a lot of new macros to help with reading and writing to registers. you can still set registers by number manually, but it can be handy to have the macro pull specific registers.
Register GET Functions / Macros
Register SET Functions / Macros
-Examples. There's a large library of examples using various functions, from basic commands all the way to demos like servo followers. Also, 'ArbotiX Sketches' has been moved into examples under 'ArbotiX Libraries' Let me know if you find errors, if anything is confusing, or you'd like another example.
-Improved Robot Test Code. I've made several improvements to the build check programs to make debugging easier
-Git hub page
I'd like to thank KurtEck who has been instrumental in this release. Thank you Kurte for all your hard work and support.
I've also been working with Kurte's library improvements, though I've hit some odd behavior with some of my MX servos - I'll make another post detailing that later this week.
Fix any bugs / apply feedback
Boards Manager package
Deploy new library officially
Integrate Kurte's Library improvements
Remove all deprecated functions from robot example code
Better Bioloid library documentation / examples
Documentation pages for example code
Serial Monitor based servo ID / scanning sketch
RS-485 hardware (i.e. RX Bridge V2)
Dynamixel 2.0 communication support
Class based code for Dynamixel library (dxl.setRegister() etc)
Please let me know if you have any questions, comments, or concerns. As always, thank you!