Hi all. I'm trying to edit the ArduCopter 2.5.3 code and compile it myself. It's turning out to be surprisingly difficult! Here's where I am now:
I was able to compile using make, with lots of warnings. Then I end up with a .hex and .eep, and don't know the procedure for uploading these. I suspect I can figure it out, but instead I figured I will just use the Arduino IDE for compiling.
When I do use Arduino IDE, I get a series of "warning: internal error: out of range error" . There is a bunch of stuff out there about needing to patch Arduino IDE in order to make it compile ArduPlane, but I can't tell if this is required for ArduCopter. Anyway, the patch isn't available for Linux, my operating system. If I had the source of this patch, or some information on what it actually does, I would be happy to compile the Arduino IDE from source.
So, my questions boil down to:
- What's the best way to upload my .hex? (Can I use APM Planner? It works great on linux now under mono.)
- Do I need the relax patch to use Arduino 0022?
- How do I get the relax patch?
Also worth noting that I wasted a lot of time trying to follow http://code.google.com/p/ardupilot-mega/wiki/Eclipse which needs to be updated or deleted since it has been incorrect for 6 months now.
Well, the information in README.txt about setting up Eclipse seems to work. It doesn't get you to the compile stage, but at least it gets the project in to Eclipse. The wiki page could just be replaced with the Eclipse info from README.txt .
Out of curiosity, what do the devs use if not Eclipse?
Is it possible to run Mission Planner on OS X with mono?
Aaron: The Mission Planner works well under Mono on Linux and will upload the code for you.
Chris, yep, it's working beautifully under Mono now (as I said in my original post above)! I love it!
But, how can I use it to upload a .hex other than the one it normally takes from the http://code.google.com/r/meee146-planner repository? Is there somewhere I can modify what path it downloads the .hex from?
You should be able to do a 'make upload' from inside your sketch folder and it will upload the hex file to your APM using the tty port defined in config.mk
Thanks, that works great! Someone might want to put that in the docs somewhere... I.e. add
- type make upload to upload according to the parameters in config.mk .
as line 12 of the root README.txt in the ardupilotmega git.