I'm currently copter-less and waiting on new motors to arrive from China, so I had some spare time this weekend to do a quick side project. It's a ground up re-write of the original Ardupilot using the latest Libraries for APM. The only difference is I had to use some tweaks to avoid filling up all the flash ram. With the Ardupilot GCS code, it's less than 1k from full. But it's all in there.

 

I could use some help testing because I can't get away to fly anymore. All of the systems seem to work correctly. The only trick is that the AP_config.h file needs your exact radio pwm values.

 

 

/***************************************/
// RADIO
#define CH1_MIN 1112  // (Microseconds) Range of Ailerons/ Rudder
#define CH1_MAX 1938  // (Microseconds)
#define CH2_MIN 1102  // (Microseconds) Range of Elevator
#define CH2_MAX 1936  // (Microseconds)
#define CH3_MIN 1101  // (Microseconds) Range of Throttle
#define CH3_MAX 1931  // (Microseconds)
#define CH4_MIN 936  // (Microseconds) Range of Rudder
#define CH4_MAX 2101  // (Microseconds)

 

 

You can use the AP_RC_Channel example sketch in the Library to get those values.

Otherwise it works with HappyKillmore's GCS and the latest GPS modules.

RAM is totally freed up using the PSTR macro so no more code crashes...

 

For know you can leave a comment here for bugs and fixes. Then I'll do a Beta and start using the issues list.

Code is on the Ardupilot Trunk and called Ardupilot_2_8

http://code.google.com/p/ardupilot/source/checkout

Use the latest Libraries from Ardupilot Mega.

 

If none of this post makes any sense, I wouldn't bother downloading. Just wait for a Beta.

Jason

 

 

Views: 63


Moderator
Comment by Brian on May 2, 2011 at 10:45pm
Jason, Thanks for taking the time.  I know there are a lot of APL (ArduPilot Legacy) fliers out there.  I'd be happy to test but am currently grounded due to a motor failure this weekend.  By the time I get it fixed, if you still need help I'll try it out.
Comment by DaveyWaveyBunsenBurner on May 2, 2011 at 11:11pm
Top job! There are a lot of APs out there, Ill get this uploaded ASAP

Thanks Jason.
Comment by Christof Schmid on May 3, 2011 at 1:13am

To bad I changed to APM 2 weeks ago. But I will get that right first.

 

Best

Christof

 

 

Comment by Dario Lindo Andres on May 3, 2011 at 6:49am

Hi Jason!!

Thanks for your awesome job! I can test your changes with my IRE (http://diydrones.com/profiles/blogs/ardupilot-range-video-osd), but for now weather is too windy here in Spain.

Regards!

Dario.


Developer
Comment by jasonshort on May 3, 2011 at 7:25am
Be sure to do plenty of ground testing before any flights. Elevons are not tested or probably working at all. Once everything else checks out I'll get elevoms going.
Comment by healthyfatboy on May 3, 2011 at 7:29am

I assume you have to use the IMU with this or can you still use it with the thermopiles? I was going to try and test it out until I saw that the elevons aren't working yet and I've got it on a delta wing right now. I suppose I should get all the AP functions working on v2.7 first before I move on but once I get there, I would be willing to test some.

I thought I was completely old tech with my APL and thermopiles but maybe I'll get another update!

Thanks Jason.

Comment by Jim on May 3, 2011 at 8:23am

Thanks Jason.  I've been hoping that there was life in the old APL.  Your efforts are very appreciated.

 

Jim


Developer
Comment by jasonshort on May 3, 2011 at 8:38am

The elevons *may* work. You can definitely try. This works with thermopiles or the IMU. I've not tested the IMU yet.

Jason


Developer
Comment by Mark Colwell on May 4, 2011 at 2:10pm
I will give it a try on my Stryker II test bed with IMU & mag compass.
Comment by Andrew Brygin on May 11, 2011 at 4:53am

In order to get ArduPilot_2_8 compiled with GPS_PROTOCOL_IMU, I needed to make following changes:

* add gps driver initialization to lines 54 -57:

#elif GPS_PROTOCOL == GPS_PROTOCOL_IMU
        AP_GPS_IMU     g_gps_driver(&Serial);

* replace obsolete decode_gps on line 300 with following code:

                update_GPS();
                roll_sensor = ((AP_GPS_IMU*)g_gps)->roll_sensor;
                pitch_sensor = ((AP_GPS_IMU*)g_gps)->pitch_sensor;

 

Is AP_GPS_IMU a right class to operate with ArduIMU here?

 

Thanks,

Andrew

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

Social Networking

Contests

Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.

A list of all T3 contests is here

Advertisement

© 2013   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service