I will maintain the code for a while in a repository at http://code.google.com/p/ardu-imu-pilot/
If you try it out give me your feedback. It is similar to ArduPilot 2.4 but uses a different header file.
To interface ArduIMU to ArduPilot you connect the gps (ublox only) to ArduIMU, provide common power and ground to ArduPilot and ArduIMU, and connect the serial output pin of ArduIMU to the serial input pin of ArduPilot.
Comments
I am closing comments to this blog post at this time. Ardu-IMU-Pilot has been officially abandoned (by me) in favor of ArduPilot 2.5.1
I have started a Forum Discussion about 2.5.1 which can be found here -
http://diydrones.com/forum/topics/ardupilot-firmware-version-251
Thanks for all the interest in Ardu-IMU-Pilot. ArduPilot 2.5.1 should surpass it very shortly.
I unplugged Remove-before-Fly plug, tested throttle power up to 70%, all looks good.( I have full manual throttle control for this test)
Switch mode to STABILIZE, pitch nose up & down, bank wings left & right, both tail surface respond well, at full throttle.
Switch back to MANUAL mode, Power up to 50% toss Stryker into sky, all is good, wings level, nice climb out.. 100 m away at 50 m altitude I start to bank left... motor starts to cuts out ... I hold bank, FailSafe then engages, motor cuts out, FailSafe turns off, motor ramps back up then cuts out, I land with slight bump,a little hard, flat, mushed in, nothing broke..
I did a range test... Well I have about 70 m with antenna full up...I have not had any problems with this radio & receiver before ... I may have broken the antenna at the Receiver input.. I will check, I may need to re-route antenna or shield AP & IMU from RX..
I should have ground tested RX range before launching.... Back to the BatCave...
Thanks for your feedback,
When you re-work MIXING function for V-Tail consider adding Ch1_Offset and Ch2_Offset as it would allow sub-trims to work. Maybe with a range from -500 to +500? This may require opening up some constrains to allow extra range for Offsets to function.
In #IF Air Start code, I disabled
demo_servos as I don't want any wiggle in air.
I also reduced wiggle to +-50, in servos
ORC1A = 1550 * 2;
ORC1B = 1450 * 2;
Also, I am trying to use ArduIMU 1.5 to program Sparkfun's Atomic 6DF with AT168. The current code is just a bit to big to fit, Binary sketch size: 14576 of 14336 max. Do you think Is it possible to save 241 bytes ???
I will try to fly with STABILIZE and FLY by WIRE modes today.
The two bugs were just things that got messed with doing some revision merges.
I am rewriting the V-tail code to be proper elevon code tonight/tomorrow. I'll let you know as soon as I upload it. I'm surprised that the V-tail code worked at all.
I hope to test fly this week. I got out for one quick airframe test today, but it was cold! My fingers don't like it when it is 2 degrees C.
It took a long time to set servo limits. It is still a bit off, but may trim out OK.
STABILIZE mode works great, but RTL or FailSafe causes elevons hard over, servo up & down 120% almost stripping gears, servos are OK. I need to reset "Home" waypoint, but don't remember how to do it.
I had to remove sub-trim on AILE and reset control arms on servo, so no sub-trim is needed.
ELEV was already setup for no sub-trim. Now I can dial it in just right.
I need to mount everything in airframe and try to fly tomorrow.
To get to r552 compile,
I had to uncomment
/// #define AIRSPEED_SENSOR 1
in file ap_2_5_1_header.h
and added this line, in file Ardupilot_251
long ground_course_est = 0;
these were in last rev, I hope these were just omissions, so I just put them back....
I tried ArduPilot for controlling throttle with live motor, it ramps up and down smoothly, good work..
Yves.