PDA

View Full Version : The Ultimate Arbotix Thread



sthmck
10-18-2009, 10:53 PM
Hey everyone, I was one of the people that spent some time beta testing the Arbotix, and I thought it would be a good idea to start and "ultimate" thread for it. I have noticed that there are several people that have already bought an arbotix, and from the sound of things they are having a lot of fun with them. I personally think that this board is awesome, and cant wait to see what projects people come up with using it.


http://www.youtube.com/watch?v=_NTSYmrU9z4

http://www.youtube.com/watch?v=CuOM274UDKk


I have been working on getting a mech ready for next year, but I haven't had much success with my previous designs. I got bored today and threw this bot together in a couple hours. I haven't had much time to do any walking or anything but I figured I could post a few little videos of what I have so far. Please excuse the fact that this thing looks like a mess, its not a very good layout and I hacked it together pretty fast. Hopefully I will have it looking a little better in a few weeks.




Anyway, please post your thoughts on the arbotix, your questions, and at least a link to your arbotix based projects on here. Above all keep building!

Suicidal.Banana
10-19-2009, 06:21 AM
Looks nice man!
and woo, im one of those people that have a arbotix, ill post some videos soon (atm kinda busy with 'real life matters')

sthmck
10-26-2009, 05:48 PM
I just got a chance to work on my mech over the weekend, I changed a few things up as far as the leg design goes. What I really wanted everyone to see was some poses being exported to the board, as well as using some of the boards IO. I basically have three ir sensors hooked up and poses are triggered when and IR sensor detects something in front of it. For some stupid reason I was having trouble getting the poses exported properly but after a little sleep my brain started working better and I got things going.


http://www.youtube.com/watch?v=P6XMC3x_zR4

lnxfergy
11-08-2009, 03:01 PM
I just sent a PM response about the protocol used by PyPose, and how to connect using a custom application, so I figured I would copy my response here for all to learn from:


All of our programs are open source. If you have the PyPose program -- you already have the source. Python is just a scripting langauge, open PyPose.py or any of the .py files in a text editor and you'll see. (alternatively, you can browse the source on arbotix.googlecode.com, click on Source tab).

The TEST command is basically our in-house way of checking out an ArbotiX before shipping it. To trigger it, send out:
0xff 0xff 253 2 25 231

The protocol is the same as talking to an AX-12 itself (basically, the PyPose sketch acts as a bus pass through, or, given special instructions, it executes commands). The first two 0xff are the header for the packets (just like an AX-12 would recieve). The 253 is the ID, your servos are IDs 1-X, 253 tells the arbotiX this packet SHOULD NOT be passed through, and that it instead should interpret the packet itself. 25 is the instruction (arbotiX test or ARB_TEST). The 2 is the length of the packet (see the AX-12 datasheet or the PyPose.py source for details, but general format = # of parameters + 2, test takes no parameters). The 231 is a checksum (255 - ((id + length +instruction + any parameters)%256)). All of the other special arbotiX commands, such as loading a sequence, loading the poses that are part of a sequence, or playing it, follow this format.

Also, for fun, here's a quick video of early work on my Salamander-inspired walker, Sally:

http://www.youtube.com/watch?v=05Je87iCwmI

-Fergs

Suicidal.Banana
11-09-2009, 07:52 AM
Hey man, Sally looks very nice, cool gait too, show us more! (also, if i may ask, can you currently show anything from NUKE yet? i'd love to see how that goes, did you use it for sally?)

lnxfergy
11-09-2009, 08:55 AM
Hey man, Sally looks very nice, cool gait too, show us more! (also, if i may ask, can you currently show anything from NUKE yet? i'd love to see how that goes, did you use it for sally?)

That's all there is to show right now -- Sally just got up and running. It's all pose and caputre (6 poses for that forward walk). I'm actually not certain at this time if there IS a closed form solution to the IK for Sally. There's a few issues that need to be worked out before continuing with the bot, those Lynxmotion tubes are shaking themselves loose as the bot walks and I'll need to do some serious weight distribution work to get it to walk on surfaces like carpet.

As for NUKE, there is an image of the GUI in the PyPose documentation. The program is basically converging from two ends: there's the GUI that's mostly done, and there is the actual IK and gait generating code which is also mostly done, and then in the middle is the meshing of the two -- which is where most work is now needed.

-Fergs

Suicidal.Banana
11-09-2009, 02:12 PM
Okay thanks for the info on PyPose/NUKE, good luck on that middle part (ye i recently ran into the gui pic, which caused me to ask about NUKE :)) and nice job on achieving that walk with 'just' pose usage, 'props' man.

lnxfergy
11-23-2009, 02:33 PM
Sthmck and I got a chance to sit down and run the pre-alpha version of NUKE on his quad, Jeff, this weekend at the Canadian National Robot Games. In about 30 minutes we had a full IK solution customized to his bot, and a default gait. Since we only started about an hour before the competition, he didn't have time to get the sensors attached to the bot, so he used just dead reckoning -- here's the third and final run, with a time of about 49s, which took third place behind Issy and Roz, two other arbotiX/NUKE powered robots.


http://www.youtube.com/watch?v=PFqNa3z7Wcs

-Fergs

Adrenalynn
11-23-2009, 02:36 PM
Congrats to Sthmck - and the arbotiX team too! :D

lnxfergy
11-23-2009, 02:38 PM
And here's Issy's video (more info in his thread (http://forums.trossenrobotics.com/showpost.php?p=36308&postcount=16)):


http://www.youtube.com/watch?v=Nb9NTeJ74xU

LinuxGuy
05-28-2010, 07:28 AM
I'll be getting an ArBotix soon. :happy:

Is all of the available I/O that isn't used already brought out to 3 pin headers (8 analog and 6 digital), or is there more that could be brought out and made available?

Will there be a Super ArBotix at some point that uses the Atmega1280 (same as Arduino Mega, chip already supported by Arduino IDE) or Atmega2560?

8-Dale

lnxfergy
05-28-2010, 11:03 AM
Is all of the available I/O that isn't used already brought out to 3 pin headers (8 analog and 6 digital), or is there more that could be brought out and made available?


Take a look at the schematic. There are 32 I/O (8 of which are analog inputs) on the mega644. 8 analog and 8 digital are brought out to 3-pin headers with 5V regulated supply. 2 are brought out to 3-pin headers with the raw 7-12 supply (the hobby servo headers). 4 other lines are used for Serial. 4 are routed to the motor driver, 4 more are sent to the encoder headers. There is also the prototyping header along the edge (left unplugged). In this way, everything is accessible, but not everything has a 3-pin header (as the board would have had to be bigger to fit all that).

-Fergs

LinuxGuy
05-28-2010, 02:18 PM
4 are routed to the motor driver, 4 more are sent to the encoder headers. There is also the prototyping header along the edge (left unplugged). In this way, everything is accessible, but not everything has a 3-pin header (as the board would have had to be bigger to fit all that).
Ahhh, OK. Is there a way to disable the motor driver(s) and decoders if we aren't going to use them? For instance, the motors I use are above what the ArBotix would handle so I won't use that part. I would, however, like access to the I/Os that would otherwise be used for them. I personally would not mind the board being a bit larger if it gives access to more I/Os, preferably via 3 pin headers.

8-Dale

lnxfergy
05-28-2010, 02:24 PM
Ahhh, OK. Is there a way to disable the motor driver(s) and decoders if we aren't going to use them? For instance, the motors I use are above what the ArBotix would handle so I won't use that part. I would, however, like access to the I/Os that would otherwise be used for them. I personally would not mind the board being a bit larger if it gives access to more I/Os, preferably via 3 pin headers.

8-Dale

You can just pull the motor chip, and then the I/O is just exposed out there. However, you're using the Lynxmotion gear head motors, right? I actually use exactly that set of motors (and encoders) with the ArbotiX with no problems (just as a side note).

As for board size, since the ArbotiX really was originally intended for AX-12 walkers, it's already too big for many people.... I also find that I typically run out of cycles/RAM before I run out of I/O on the AVR chips.

-Fergs

LinuxGuy
05-28-2010, 03:12 PM
You can just pull the motor chip, and then the I/O is just exposed out there. However, you're using the Lynxmotion gear head motors, right? I actually use exactly that set of motors (and encoders) with the ArbotiX with no problems (just as a side note).
Yes, I am using those gearhead motors for WALTER, specifically the GHM-04 motors. Well, if the ArBotix can handle them, maybe I will give it a try sometime. I probably won't be using any motors for Bioloid stuff though, since I am mainly interested in three to eight legged walkers, with a first project being a small biped.


As for board size, since the ArbotiX really was originally intended for AX-12 walkers, it's already too big for many people.... I also find that I typically run out of cycles/RAM before I run out of I/O on the AVR chips.
You might consider creating a Super ArBotix that uses an Atmega1280 or Atmega2560, in a bit larger board format. If you do this, please make the I/Os selectable for either 5V or unregulated power in four pin blocks. I would definitely get in line for a Super ArBotix, and I think it would give the best of all worlds. :happy:

I almost always run out of I/Os before I run out of RAM, but have also been known to run out of flash also. :veryhappy:

8-Dale

Stobs
10-17-2010, 04:02 PM
Am I reading this .pdf correctly, in that the only Dynamixel's that are compatible with the Arbotix controller is the AX-12+?

Dynamixel servo comparison .pdf (http://www.trossenrobotics.com/productdocs/Dynamixal-spec-sheet.pdf)

lnxfergy
10-17-2010, 04:07 PM
Am I reading this .pdf correctly, in that the only Dynamixel's that are compatible with the Arbotix controller is the AX-12+?

Dynamixel servo comparison .pdf (http://www.trossenrobotics.com/productdocs/Dynamixal-spec-sheet.pdf)

An ArbotiX by itself can control AX-12 and AX-18 servos.

By adding an RX-Bridge, you can control any of the DX, RX, or EX series servos (note however, that while the Bioloid libraries will all work with EX servos, PyPose cannot, because they have 4096 ticks per 300 degrees, compared to 1024 for all other dynamixels. This will eventually be fixed in future releases).

However, it can't control both AX and RX at the same time with the RX-bridge. Until recently, using two busses wasn't really needed (the overlap in voltages between an AX-12 and an RX-64 is pretty low, so you'd have to typically have separate batteries, etc). The RX-24, with it's 12V operation changes this a bit. We have a couple boards in final testing that will introduce AX and RX at the same time, however, I don't have a release date yet.

-Fergs

Stobs
10-17-2010, 04:13 PM
Thanks for the speedy reply Fergs, much appreciated.

I've got a little bit more research to do on deciding between running an Arduino or an Arbotix, although I've been leaning towards the Arbotix lately - this info helps to reinforce that inclination, thanks. :)

Stobs/Paul

lnxfergy
10-17-2010, 04:20 PM
Thanks for the speedy reply Fergs, much appreciated.

I've got a little bit more research to do on deciding between running an Arduino or an Arbotix, although I've been leaning towards the Arbotix lately - this info helps to reinforce that inclination, thanks. :)

Stobs/Paul

Essentially, the ArbotiX is an Arduino in a nice form factor for robotics. It brings out IO to 3-pin headers (way nicer than those silly female header strips), integrates a low-drop out regulator (works well on a range of batteries), and integrates bioloid/xbee headers (no greenwiring means it's more robust, especially on walkers which tend to shake themselves apart). The regulator is also a lot beefier for dissipating the extra heat from running at 12V and powering sensors/etc.

You can always build an Arduino-based version, and even use our libraries, but you'll typically end up with a greenwired pile of perfboards, which shakes loose and then blows up when something shorts out (usually at exactly the wrong time, like in the middle of a match).

-Fergs

Stobs
10-17-2010, 04:25 PM
Normally I like things that goo "boom," but this "hobby" is expensive enough as it is! :)

RobotAtlas
10-17-2010, 04:26 PM
Stobs, ArbotiX is an Arduino specifically purposed for our robot needs.
Plus ArbotiX comes with an excellent support. ;)
Sometime scary excellent - like you just got one within 6 minutes.
Hopefully we will not burn out Fergs like this.

Stobs
03-24-2011, 05:13 PM
1) Can I use the two 1A motor drivers to run two tank guns off of the arbotiX (http://www.trossenrobotics.com/p/arbotix-robot-controller-starter-kit.aspx) while using the Pololu VNH2SP30 (http://www.pololu.com/catalog/product/708) motor driver with two motors hacked from Ryobi 9.6v drills (http://www.ryobitools.com/catalog/power_tools/drills_drivers/HP696) to power the left and right caterpillars?

2) How do I also add two Defender guns to the mix (as they relate to the arbotiX - and the four guns in total would likely be for competition(s) other than Mech-Warfare)?

I'm not necessarily looking for specific connection/coding information here, but any referrals to possibilities, pitfalls, products and/or other advice on this matter would be greatly appreciated.

Paul

Stobs
04-14-2011, 11:03 AM
Ty, Fergs,

Are either of you planning on bringing arbotiX boards/kits to the show for sale?

Stobs
05-21-2011, 11:55 PM
I'm referencing the "draft2-1" version of the arbotiX's User Manual, so please advise me if there's a more up-to-date version, thanks!

Just making sure I'm understanding the manual correctly: the two analog and digital port headers (pinned as 3x8* connections each), are 5V regulated, while the PWM hobby/non-Dynamixel headers (pinned presumably as a 3x2 connecter even though it looks like a 2x3 connector to me) are not, being as they're connected directly to the Bioloid bus?

Regards

*I don't know the technically correct label for this - it looks like a set of eight connectors with three pins each to me.

mannyr7
05-22-2011, 10:37 PM
I find V0.9 for Rev A boards on the Vanadium website. Correct, there are 8 sets each of analog and digital pins which use standard 3 pin servo-style connectors and are regulated at 5V. And there are a pair of 3 pin servo headers, marked "servo", "B" and "A" These are unregulated and will use whatever source you provide to the Bioloid bus. All grounds are the pin farthest away from the Atmel chip.

Stobs
05-23-2011, 08:13 PM
Thanks for your reply mannyr7, very much appreciated.

That's what the first page of my .pdf says, so glad we're on the same page there! Sorry for asking such an obvious question, I'm just so new at this I don't want to melt something down and say "I should've asked!" afterwards.

Regards

Stobs
06-17-2011, 12:26 PM
Before I potentially fry a perfectly good piece of equipment...

1) The voltage rating of the Bioloid bus is listed as 7-12v in the arbotiX manual; my 3S 11.1V LiPo is now fully charged and balanced to 12.6v. Is it safe to connect my battery as is, or do I need to discharge it down to 12v?

...also...

2) Since I'll be using the USB AVR Programmer, rather than an FTDI cable[,] does the FTDI Reset Enable jumper need to be set as disabled?

Regards

[Edit: punctuation]

lnxfergy
06-17-2011, 12:37 PM
1) The voltage rating of the Bioloid bus is listed as 7-12v in the arbotiX manual; my 3S 11.1V LiPo is now fully charged and balanced to 12.6v. Is it safe to connect my battery as is, or do I need to discharge it down to 12v?

You'll note that the Bioloid Premium now ships with a 3S lipo, so Robotis doesn't even pay attention to the 7-12V rating.


2) Since I'll be using the USB AVR Programmer, rather than an FTDI cable - does the FTDI Reset Enable jumper need to be set as disabled?

Nope, you can leave it in. The jumper won't do anything unless an FTDI cable is attached.

-Fergs

Stobs
06-17-2011, 03:03 PM
Thanks for your reply Fergs, very much appreciated.

Good to know, didn't want to smoke a Dynamixel, nor drive myself crazy over a simple jumper setting - had that been the case.

Regards

Stobs
06-20-2011, 10:15 AM
I'm unsure as to how to connect the USB AVR Programmer to the arbotiX ("ArbotiX"?).

It has a mostly gray ribbon cable - with one wire on the edge insulated in a red color. The arbotiX ISP header has a hole through the board nearest one pin, being the one nearest to the Bioloid headers.

Is the AVR Programmer connected so that the "red" wire oriented towards these headers, or does it not matter?

Regards

lnxfergy
06-20-2011, 10:59 AM
I'm unsure as to how to connect the USB AVR Programmer to the arbotiX ("ArbotiX"?).

It has a mostly gray ribbon cable - with one wire on the edge insulated in a red color. The arbotiX ISP header has a hole through the board nearest one pin, being the one nearest to the Bioloid headers.

Is the AVR Programmer connected so that the "red" wire oriented towards these headers, or does it not matter?

Regards

The cable hangs off the side of the board.

-Fergs

Stobs
06-20-2011, 10:22 PM
Thanks Fergs, your reply's greatly appreciated.

Regards

Stobs
06-21-2011, 08:51 PM
I'm receiving the following error messages on attempting to run the "Blink" and "AnalogReadSerial" sketch examples from the Arduino IDE:


java.lang.NullPointerException
at processing.app.debug.AvrdudeUploader.getProgrammer CommandS(AvrdudeUploader.java:106)
at processing.app.debug.AvrdudeUploader.uploadUsingPr eferences(AvrdudeUploader.java:68)
at processing.app.Sketch.upload(Sketch.java:1603)
at processing.app.Sketch.exportApplet(Sketch.java:156 8)
at processing.app.Sketch.exportApplet(Sketch.java:152 4)
at processing.app.Editor$DefaultExportHandler.run(Edi tor.java:2293)
at java.lang.Thread.run(Thread.java:619)I've updated Java to version 6.0.260.3.

For each sketch I performed the following steps, in order:


Loaded sketch
Verified: Tools->Boards->ArbotiX
Verified: Tools->Serial Port->COM(4)
Verified compiliation
Uploaded sketch (failed)
Imported Library: #include <SoftwareSerial.h>
Verified compiliation
Verified: Tools->Boards->ArbotiX
Verified: Tools->Serial Port->COM(4)
Uploaded sketch (failed)

For the "Blink" sketch I also attempted to upload with ArbotiX+ board selected but received an ATMEGA1280 related error message.

For the "AnalogReadSerial" sketch I also ran the "SoftwareSerial" variant on COM(5) - TTL; in each case I received the same error messages noted above, confirmed as verbatim.

I'm running and/or have installed:
Windows 7 Starter (32bit, netbook);
Arduino(22) IDE;
Sanguino(18);
arbotiX(14);
Python3.2 under the "C:\Python32\" directory, rather than Python 2.5.4;
"pyserial-2.5.win32.exe" under the "C:\Python32\" directory;
"wxPython2.8-win32-unicode-2.8.12.0-py26" under the "C:\Python32\" directory - which fails to load as Python 2.6 is not loaded.
[also: X-CTU]

As per this thread (http://forum.moderndevice.com/viewtopic.php?f=19&t=475) from the ModernDevices forum site the resolution was to delete the "preferences.txt" file (which I effectively did by renaming it to "OLDpreferences.txt" [and] which caused [the] Arduino IDE to fail to load, necessitating a name reversal), and the resolution as per this thread (http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1276641143) from the Arduino.cc forums was to ensure the correct board was selected [addressed above]).

The "boards.txt" file copied to my "...\arduino-0022\hardware\arbotix\" directory has been edited as follows (for this post I separated each command/comment with a carriage return for ease of readability, which is not the case for the file saved on my computer{ok, something odd is happening here: I was planning on adding carriage returns between commands, but in pasting the contents of the aforementioned file here the carriage returns are already in place - I've triple checked, copied and pasted, and that is not the way the file saved to my computer is formated}):


################################################## ###################
## ORIGINAL ARBOTIX
arbotix.name=ArbotiX
arbotix.build.mcu=atmega644p
arbotix.build.f_cpu=16000000L
arbotix.build.core=arbotix

# To use an ISP: uncomment the next line, comment out the protocol line
arbotix.upload.using=avrispmkii#
arbotix.upload.protocol=stk500

arbotix.upload.speed=38400
arbotix.upload.maximum_size=65536
arbotix.bootloader.low_fuses=0xFF
arbotix.bootloader.high_fuses=0xDC
arbotix.bootloader.extended_fuses=0xFD
arbotix.bootloader.path=atmega644p
arbotix.bootloader.file=ATmegaBOOT_644P.hex
arbotix.bootloader.unlock_bits=0x3F
arbotix.bootloader.lock_bits=0x0F
arbotix.build.core=arbotix
arbotix.verbose=false
I've rebooted, cold- and hot-plugged the USB AVR Programmer, had the USB XBee Explorer connected/not connected and reset the arbotiX (each time the LED near the prototyping headers blinks - although I did not note if there was a difference in sequencing unfortunately) in various combinations/sequences.

I've searched with bing, dogpile and google for the (exact) phrase: "AvrdudeUploader.java:106" to try and research this issue (applicable results with relevance - and resolution as per that post - noted above).

Assistance in resolving this matter would well and truly be appreciated.

Regards

[PS: I do have X-CTU installed, have configured the XBee's (Pro on the USB Explorer, std. on the arbotiX), do have a green LED (occasionally blinks) and blinking yellow on the AVR, as well as a red LED alight if the arbotiX is powered down.]

[Edits: grammar, readability and additional content.]

lnxfergy
06-21-2011, 09:13 PM
Stobs, 2 things:

1) Try with the line arbotix.upload.protocol=stk500 commented out, and the trailing # removed from avrispmkii:


# To use an ISP: uncomment the next line, comment out the protocol line
arbotix.upload.using=avrispmkii
#arbotix.upload.protocol=stk500
2) Is your programmers.txt up to date? It looks like it is failing to find the correct string to pass to avrdude, which makes me think taht the avripsmkii is not defined in programmers.txt

-Fergs

Stobs
06-21-2011, 10:46 PM
Thank you very much for your timely reply Fergs, greatly appreciated.

My mistake, but still no-go:

My apologies about the commenting: I had "assumed" that the "#" was the comment flag for sketches from reviewing the "boards.txt" file - and in my file the "#" does proceed the "arbotix.upload.protocol=stk500" command (to make matters worse, at the moment of my assumption I even said to myself that I ought to double check that); and [I had] simply removed the "#" to uncomment the "arbotix.upload.using=avrispmkii" and "plus.upload.using=avrispmkii" commands.

The following is the contents of the "boards.txt" file under the "...arduino-0022\hardware\arbotix\" directory (there is no "sketchbook" or "sketches" subdirectory immediately under the "arduino-0022" directory, although I only checked a few of the other subdirectories), which now reads as:

################################################## ###################
## ORIGINAL ARBOTIX
arbotix.name=ArbotiX
arbotix.build.mcu=atmega644p
arbotix.build.f_cpu=16000000L
arbotix.build.core=arbotix

# To use an ISP: uncomment the next line, comment out the protocol line
arbotix.upload.using=avrispmkii/*arbotix.upload.protocol=stk500*/

arbotix.upload.speed=38400
arbotix.upload.maximum_size=65536
arbotix.bootloader.low_fuses=0xFF
arbotix.bootloader.high_fuses=0xDC
arbotix.bootloader.extended_fuses=0xFD
arbotix.bootloader.path=atmega644p
arbotix.bootloader.file=ATmegaBOOT_644P.hex
arbotix.bootloader.unlock_bits=0x3F
arbotix.bootloader.lock_bits=0x0F
arbotix.build.core=arbotix
arbotix.verbose=false

################################################## ###################
## ARBOTIX PLUS
plus.name=ArbotiX+
plus.build.mcu=atmega1280
plus.build.f_cpu=16000000L
plus.build.core=arbotix

# To use an ISP: uncomment the next line, comment out the protocol line
plus.upload.using=avrispmkii
/*plus.upload.protocol=stk500
*/
plus.upload.maximum_size=126976
plus.upload.speed=57600
plus.bootloader.low_fuses=0xFF
plus.bootloader.high_fuses=0xDA
plus.bootloader.extended_fuses=0xF5
plus.bootloader.path=arduino:atmega
plus.bootloader.file=ATmegaBOOT_168_atmega1280.hex
plus.bootloader.unlock_bits=0x3F
plus.bootloader.lock_bits=0x0F


Again, please note that, unless I temporarily Word Wrap the file, it does not appear as above (when the file is not under Word Wrap formatting there are no spaces between characters, aside from the obvious comments).

I had checked the "programmers.txt" file against the "Getting Started" reference, and it's nearly verbatim...

avrispmkii.name=AVRISP mkII (arbotix)
avrispmkii.communication=serial
avrispmkii.protocol=stk500v2

...the only difference being that, on the web page, the first command reads as...
avrispmkii.name=AVRISP mkII (ArbotiX)After editing the "boards.txt" file to make the syntax corrections, reconfirming the contents of the "programmers.txt" file and that both of these particular files where under the Arduino's "hardware" subdirectory, I took the following steps:

I launched the Arduino IDE and performed the following:


Loaded the "Blink" sketch;
Verified compilation;
Verified: Tools->Board->Arbotix;
Verified: Tools->Serial Port->COM(4);
Uploaded sketch (failed, same as referenced in this thread's post #33)
Imported (from) Library: #include <SoftwareSerial.h>
Verified compilation;
Verified: Tools->Board->Arbotix;
Verified: Tools->Serial Port->COM(4);
Uploaded sketch (failed, same as referenced in this thread's post #33).

I closed all programs, rebooted (that is to say, I did a complete shutdown, waited a few moments and then rebooted), without disconnecting the USB AVR Programmer nor powering down the arbotiX.

I repeated steps 1-10 above - no change.

I once again closed all programs and rebooted, but this time once it was down I disconnected the USB AVR Programmer from the system and then held the arbotiX's reset button down for approximately 12 seconds; upon release it blinked three times, slight pause and then one blink.

I again repeated steps 1-10 above, also with no change.

Regards

[Edit: corrected translation of "had I".]

lnxfergy
06-22-2011, 02:47 AM
Stobs,

Comments are with a "#". I was suggest removing the "#" at the trailing end of the line (as I'm not sure the interpreter is smart enough to do so). Using /* */ is almost certainly not going to work.

The boards.txt should read:


################################################## ###################
## ORIGINAL ARBOTIX
arbotix.name=ArbotiX
arbotix.build.mcu=atmega644p
arbotix.build.f_cpu=16000000L
arbotix.build.core=arbotix

# To use an ISP: uncomment the next line, comment out the protocol line
arbotix.upload.using=avrispmkii
#arbotix.upload.protocol=stk500

arbotix.upload.speed=38400
arbotix.upload.maximum_size=65536
arbotix.bootloader.low_fuses=0xFF
arbotix.bootloader.high_fuses=0xDC
arbotix.bootloader.extended_fuses=0xFD
arbotix.bootloader.path=atmega644p
arbotix.bootloader.file=ATmegaBOOT_644P.hex
arbotix.bootloader.unlock_bits=0x3F
arbotix.bootloader.lock_bits=0x0F
arbotix.build.core=arbotix
arbotix.verbose=false


Don't worry about the ArbotiX+ stuff, you don't have an ArbotiX+.

-Fergs

Stobs
06-22-2011, 10:01 AM
...I was suggest removing the "#" at the trailing end of the line...

That's part of the issue I was alluding to - in my file there are no spaces, carriage returns or newlines. I tried to use carriage returns to separate each command to it's own line, but then neither the ArboiX nor the ArbotiX+ were listed under Tools->Boards in the Arduino IDE.

I'll try separating out each command with a carriage return again, ensuring that the comment flag is appropriately placed, and then backspacing the carriage return out.


...you don't have an ArbotiX+. Yeah, I know, I was just being thorough. :}

I won't be able to get to this for a few hours but, I'll post a resolution (hopefully) late this afternoon or this evening.

Regards

lnxfergy
06-22-2011, 11:06 AM
What editor are you using? No newlines == not gonna work, as it parses each line separately. You need to use a different editor that doesn't eat the line endings.

-Fergs

Stobs
06-22-2011, 02:05 PM
I'm now able to download sketches to the arbotiX successfully.

I'm annoyed and embarrassed about this one, as I had wanted to get to this point without direct assistance, and it wound up being quite simple - Notepad should not be used as a "quick" editor.

Instead of simply double clicking the text file and editing in situ I copied the contents to NotePad++ (I'm thinking of adding JED as a code editor , but I'll see), made the edits and copied back to the "boards.txt" file - I had a successful download of the unedited "Blink" sketch the first time thereafter.

My apologies for wasting your time on this one Fergs, but your help is greatly appreciated. Personally, I'm just going to have to chalk this one up under the "Experience Gained" column.

Regards

[Edit: For reference, this is the contents of my "boards.txt" file...
arbotix.name=ArbotiX
arbotix.build.mcu=atmega644p
arbotix.build.f_cpu=16000000L
arbotix.build.core=arbotix
arbotix.upload.using=avrispmkii
arbotix.upload.speed=38400
arbotix.upload.maximum_size=65536
arbotix.bootloader.low_fuses=0xFF
arbotix.bootloader.high_fuses=0xDC
arbotix.bootloader.extended_fuses=0xFD
arbotix.bootloader.path=atmega644p
arbotix.bootloader.file=ATmegaBOOT_644P.hex
arbotix.bootloader.unlock_bits=0x3F
arbotix.bootloader.lock_bits=0x0F
arbotix.build.core=arbotix
arbotix.verbose=false...and after previewing this edit here, this is also how it appears in my file now as well.]

Stobs
06-25-2011, 07:47 PM
The "xbee-serial-terminal.py" and "xbee.py" links from the XBee tutorial (http://forums.trossenrobotics.com/tutorials/how-to-diy-128/xbee-basics-3259/) are returning 404 errors; are these files still being used in communicating via XBee's from the computer to the arbotix?

Regards

[Deleted from incorrect thread ("Arbotix & PyPose"), and re-posted here.]

lnxfergy
06-26-2011, 04:11 AM
The "xbee-serial-terminal.py" and "xbee.py" links from the XBee tutorial (http://forums.trossenrobotics.com/tutorials/how-to-diy-128/xbee-basics-3259/) are returning 404 errors; are these files still being used in communicating via XBee's from the computer to the arbotix?

Regards

[Deleted from incorrect thread ("Arbotix & PyPose"), and re-posted here.]

The python stuff was an alternative to the Maxstream software (which I later found to work in wine), so you can certainly get by without it. That SVN server went offline about 2 months ago, and I think the domain name just rolled over about a week ago. I'll dig out a copy and post it to the tutorial as a download tomorrow.

-Fergs

Stobs
06-26-2011, 10:42 AM
It took a number of hours and following what seemed like a few hundred links but, I believe I'd found a copy of each on the web - that wasn't tarballed ("Downloads") (http://code.google.com/p/python-xbee/) that is. The xbee.py file I found as a text listing on LadyAda's site (http://www.ladyada.net/media/wattcher/xbee.py) and the xbee-serial-terminal.py file I found zipped here ("Download it here") (http://itp.nyu.edu/physcomp/Tutorials/XbeeBasics).

I still can't find a way to communicate through the XBee's, but I'm going to continue troubleshooting this morning.

Regards

Stobs
06-27-2011, 10:32 PM
It seems like I've got PyPose.py up and running - I have to confirm it by taking the next steps of configuring an AX-12 and then capturing a pose or so.

For those who may find themselves in a similar situation here's an outline of my relevant experiences/actions, as follows:

The last issue before (tentative) resolution, detailed by a screen capture:
http://img94.imageshack.us/img94/6954/pyposepycliblipnonullco.th.png (http://imageshack.us/photo/my-images/94/pyposepycliblipnonullco.png/)

Extensively searched and browsed my system for "wx.py" - not found;

Between yesterday (2011.06.26) and today searched web for "wx.py" via altavista (http://www.altavista.com/), bing (http://www.bing.com/) and dogpile (http://www.dogpile.com/)search engines - no actual wx.py file, or code listing there of, found;

Searched web for simplified version of error message ("no attribute 'nullcolor'");

Followed first link returned, which seemed pertinent to my Win32 system: "[EPD-Users] ProgresEditor and EPD 6.2-2 (32 bit Windows) (http://permalink.gmane.org/gmane.comp.python.enthought.devel/26643)";

Upon reviewing referenced post I edited my PyPose.py file's code as follows:
Line 150, original code:
self.SetBackgroundColour(wx.NullColor) # wx.SystemSettings.GetColour(wx.SYS_COLOUR_MENU)Lin e 150, code as edited:
# 2011.06.27: edited out this line: self.SetBackgroundColour(wx.NullColor) # wx.SystemSettings.GetColour(wx.SYS_COLOUR_MENU)Lau nched PyPose.py - SUCCESS!!!...at least initially. On attempting to initiate interaction with an AX-12 connected to my arbotiX I noticed that the PyPose CLI running in a background window was rapidly scrolling through what was apparently an infinite loop, referencing in part, "...no attribute 'NullColor'...".

Re-edited PyPose.py via NotePad++ to comment out all other references to "wx.NullColor" - which was one additional reference on line 352, edited as follows:
# 2011.06.27: edited out this line: self.sb.SetBackgroundColour(wx.NullColor)Regards

Stobs
06-28-2011, 09:43 PM
Can the arbotiX/XBee pairing be used to do the initial configuration on the Dynamixels, or must the USB2Dynamixel be used?

Regards

lnxfergy
06-28-2011, 11:29 PM
Can the arbotiX/XBee pairing be used to do the initial configuration on the Dynamixels, or must the USB2Dynamixel be used?

Regards

You can use ArbotiX/XBEE, you just need to load the PyPose.pde sketch to interface with the PyPose terminal.

-Fergs

Stobs
06-28-2011, 11:45 PM
Thanks for your reply Fergs, much appreciated.

I did that last night but kept getting a 'fail read' or 'read fail' message - don't remember at the moment. It did show the correct COM port and 38400 b.r., I have the XBee's paired, and at the time of the attempts the only USB device I had connected was the XBee Explorer.

I do believe that the PyPose.py GUI is functioning correctly - having gone through many of the menu options, but I'm not sure if it's making a serial connection. Now knowing that it can be done I'll "re-double" check my setup and go from there.

Regards

Stobs
06-28-2011, 11:52 PM
PS: I did have the arbotiX powered up (11.4xV) and the only additional device connected to it was one AX-12A. I did not try a different AX-12/18 nor a different Dynamixel cable, which I will do.

Stobs
07-07-2011, 02:47 PM
So far I haven't been able to launch a persistent PyPose terminal, let alone establish a confirmed serial connection through it, so I'm shelving the Win7 configuration for now. I made that decision after perusing the PyPose documentation, and it seemed to me much of it was oriented towards Linux.

I exported all of my Firefox attributes and then manually backed up both the .json and .html versions along with all of my data files, restored my computer back to factor settings, uninstalled a bunch of default programs I don't use, downloaded and went through the automated Ubuntu 11.04 installation and am able to login to the Unity desktop.

I'll spend the next few days getting familiar with the Unity interface and exploring Ubuntu and then this weekend I'll try to get X-CTU, the Arduino IDE and the Python and related files installed and operational. Hopefully I'll have a positive update to post sometime over the weekend.

Regards

Chench
07-12-2011, 05:17 AM
Hey guys, just a quick question out of interest: -
There is an "ArbotiX+" defined in the arduino environment after installing the ArbotiX stuff. It is defined in boards.txt as using the Atmega1280. However this thread is pretty much the only reference to it google finds! Is this the next generation ArbotiX?

lnxfergy
07-12-2011, 12:10 PM
Hey guys, just a quick question out of interest: -
There is an "ArbotiX+" defined in the arduino environment after installing the ArbotiX stuff. It is defined in boards.txt as using the Atmega1280. However this thread is pretty much the only reference to it google finds! Is this the next generation ArbotiX?

It was an engineering prototype that never went to market (the cost would have been prohibitively high). There are other things in the works, but not a 1280 version (on the 1280, the key thing we were looking for was the 2 additional serial ports, very few people need that much I/O as you typically run out of processor cycles first).

-Fergs

Zenta
08-08-2011, 07:07 AM
Hi,

I'm just wondering if it's possible to do serial debugging (to PC terminal) combined with servo control and using XBee connected to remote control. Since Arbotix only have two UART's that might be a problem, or is there any solution to this?

Stobs
08-28-2011, 10:16 PM
Has the Arduino 22 IDE been tested on the arbotiX? Is Arduino IDE release 22 recommended over release 18?

Regards

lnxfergy
08-28-2011, 10:48 PM
Has the Arduino 22 IDE been tested on the arbotiX? Is Arduino IDE release 22 recommended over release 18?

Regards

I've been using 22 for quite some time.

-Fergs

Stobs
08-29-2011, 08:41 AM
Thank you Fergs, very much appreciated.

Regards