PDA

View Full Version : Arbotix upload Problem (miffed bootloader?) and pypose.



billtown
08-05-2011, 12:15 AM
I have been searching in an attempt to resolve this error. People suggest hitting the reset button just before uploading... etc.

avrdude: stk500_getsync(): not in sync: resp=0xbd
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x5d

I have not been able to resolve this and need some direction from some kind soul.

Ubuntu 10.04
Arduino 0018
Arbotix board
ISP is being used.
PyPose 0013 is what I am attempting to load after a successful compile.

Known Errors.....
avrdude: stk500_getsync(): not in sync: resp=0xbd
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x5d

Suspicious Errors: (I suspect this doesn't matter but really really hate the java and don't know any better)
Native lib Version = RXTX-2.2pre2
Java lib Version = RXTX-2.1-7
WARNING: RXTX Version mismatch
Jar version = RXTX-2.1-7
native lib Version = RXTX-2.2pre2

I can push the arbotix bootloader (from the arbotix 0014 package?) to the board without problem.
I get some blinks out of the LED upon reset.

I have not been able to get my arbotix to move a ax-12... So I compiled and attempted to upload pypose.

I was able to upload pypose yesterday. Today I accidentally pushed the arbotix bootloader from the javaarduino app, to the arbotix.... Now I can't upload anything.
I was attempting to use PyPose over xbee series1 and getting no love. I was going on the assumption that pypose was installed from Trossen. I think the xbees are setup correctly as they can "See" eachother.
Xbee Stuff:
+++OK
atnd
10
13A200
4053352D
3C

at
OK
atdh
0
atdl
10
atmy
11


ls output from Pypose....
PyPose starting...
Opening port: /dev/ttyUSB0
Fail Read
Fail Read
Read Failed: Servo ID = 1
Fail Read
Read Failed: Servo ID = 2
Fail Read
Read Failed: Servo ID = 3
Fail Read
Read Failed: Servo ID = 4
Fail Read
Read Failed: Servo ID = 5
I have no idea what my ID is on my servo... was hoping "mv 254 1" would reassign any servo on the bus to id1.

I am so sad.

OK Never mind on the upload..... I fixed that by uncommenting the avrispmkii amd removing the stk500.... and you can see I was trying arduino protocol from another thing I read.... which blew up and I think works around using ubuntu avrdude.....

Now that I read the comment it about ISP right in front of my face it makes sense....

vi hardware/arbotix/boards.txt

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

OMG now it works.....
>> ls 4 >> mv 4 1 OK >>

Ok, With Pypose I am able to see the servo.... however I have yet to make it move. Capture is working though...

I see this:
Setting pose...
Setting pose size at 1
Fail Read

So Close. What am I doing wrong Now?

-=Bill

billtown
08-05-2011, 12:35 AM
Ok.

My advice, Don't change the id of the board unless you change the ID of the python App.

My problem is that I thought the arbotix board was sitting on the broadcast of the servos...(which is actually 254 not 253 which was my fear) so I had moved it. This is because "ls" in the terminal was returning no servos and I suspected the servo might live outside id 18 (the top id that ls seems to look for?)

I was making a lot of assumptions (hopes) since everything was busted. My laziness provided haste.

I moved the id back in pypose and recompiled/uploaded. (cause broadcast lives on 254). Servos started moving and not just being captured in PyPose. Makes sense in hindsight.

Here is me moving the ID using broadcast.
>> ls 2
>> mv 254 1
OK
>> ls 1 >>

....

So now what? Do I need to start writing firmware to play with this thing? Or can I just write python to manipulate 18 ax-12's. Where does one look? I also want to be able to use the analog inputs/outputs and really want to avoid writing atmegarduinofirmware.

How much can be done with just python at this point?


Thanks

-=Bill