First off thanks for all the hard work on this. I'm sure I'm not alone when I say you guys are awesome.
A few things about my setup so far...
I have all of the items for the shield excluding the connector for the xy&z sensors.
I have not connected servos to the board.
I am powering the board from a battery and have already resoldered the basic board for this.
I am using the Diy Drones FTDI cable when doing any downloads.
Now on to the questions.
1) When I get to the Arduino IDE program. I cannot download the file to the board. I always get the following error:
"avrdude: stk500_getsync(): not in sync: resp=0x30
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51"
I used to receive the error.
"avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51"
This error changed once I decided to try downloading the file without the shield plugged in. After removing the shield I was able to download the file just fine. Anyone else experience this? I know everyone else is having problem(s) similar to this but I was just curious if the error change really means anything? Is there anyway I can verify that the code loaded correctly? Maybe with some type of output from the board?
2) After getting the code to load correctly I tried running the way point setup program. Again, I could not write way points correctly until I removed the shield and used the regular board. Is there anyway to verify that the way points were written correctly on board?
3) The next step would be to add wireless comms to test out the new field station software but I was again curious if there was anyway I could determine if the code is being uploaded correctly before I do this. I also have the feeling that I would need to be able to download through the shield since the wireless setup goes through there.
4) I am curious on this but will attaching/detaching the shield while the original board is powered on cause any damage to either boards? Please let me know.
Some possibilities for errors:
1) Faulty Shield board
2) Lack of connector for xy&z sensors is causing problems.
3) Lack of servos is causing problems
Let me know what you guys think. I am open to any ideas or criticisms. Thanks in advance.
You can verify if the code is loaded by checking the LED displays as shown in the manual. You can verify that the waypoints were written by reading them again from the configuration utility.
We're not seeing the problem you are with loading code with the shield on. Have you tried with the GPS disconnected?
I have verified that the way points are written by reading them again (sorry for the stupid question). I have always tried all loading with the gps not connected.
Before I uploaded the code the LED behavior was exactly as is described in the manual.
After I upload the code to the board (without the Shield) I disconnect the FTDI cable and plug in the GPS. Once I do this I should expect the following LED behaivor (according to the manual).
Power: On
Stat: Will blink twice as GPS is programmed into binary mode, then blink steadily
GPS Lock: Flashing while it attempts to aquire a lock; solid afterwards
MUX: Will turn on briefly during boot, then stay off
Mode: Off
GPS LED: Off
but instead I experience the following:
Power: On
Stat: Will blink twice as GPS is programmed into binary mode, then stays off
GPS Lock: Repeatedly flashes and never acquires a lock it seems
MUX: Off
Mode: Off
GPS LED: Off
I have tested the GPS lock outdoors away from other building and other problems and I still experience this behavior.
As I was rereading the manual, I was curious as to where the toggle switch is on my EM40. I haven't read anything about a toggle switch in the manual for it online. Are the lines in manual referencing the toggle because other types of GPS modules have them?
Are the jumper pins from D6 to GND (on the shield) only to be used after you have uploaded code to the board? What does the reset switch on the Shield do exactly? Does it reset your home position?
Once the Home location is written to eeprom (after the GPS locks, of course), the reset button is just restarting the code, but is not storing the Home location again as I understand it. The toggle switch in the manual is replacing the jumper D6/GND, so you can use it from outside the airframe. It's just more handy than grabbing a jumper (again as I understood it). I implemented a switch scavenged from an old pc and it works ok.
Excuse my dumb question but will a wire from D6/GND serve as a jumper or do I need to get an actual jumper cap? If the jumper cap is the toggle switch does it have 3 settings?
I think you need going through the manual and general descriptions in the AruPilot posts before going further. A jumper is just on/off, it connects two connectors. A wire will do the same. If you do not have a jumper, scavenge one from an old 20Mb harddisk laying around. There's most probably one on the master/slave connectors.
The toggle switch is just to replace the jumper in doing on or off. No 3 stages, just a simple switch.
But as I said, it will help if you get some more information on the site. There's plenty to learn. And when it comes to mount your system, keep it as simple as possible at first, maybe even by targeting the 1.0 code version. It helped me a lot understanding ver. 1 so that I now feel I can understand how the most recent code version with shield is functioning.
In the earlier 2.2 version of the Ardupilot code, Chris had set up the "#define GPS_PROTOCOL 2 //0 = NMEA, 1=SIRF, 2=uBlox, Choose protocol, uBlox only for PRO's please" in the Ardupilot .h file to be, as you can see, 2 which is the uBlox GPS.
If you are using the EM406, then you should edit the value of "#define GPS_PROTOCOL" to be 1 since the EM406 uses the SIRF chip set.
Therefore you might want to check your Ardupilot .h file, edit it if necessary, and reload the Ardupilot ver 2.2X code and see it that cures your GPS problem.
This assumes that he is using 2.2.3. I don't think that he has indicated what version he is using. Since his status led is not blinking after the GPS has been programmed into the binary mode he may still not have the GPS selected properly.
I double checked the soldering where the FTDI cable plugs into the shield and one of the pins wasn't soldered well. I redid the soldering and now I can download to the shield!! I can also read and write way points to the shield!!
I feel stupid for making a dumb mistake like that, but I'm a noob when it comes to electrical work.
That's a good call, and probably something that others having issues with uploading should check into.
I had forgotten about it, but I had some problems soldering some of the header pins on to the board. It seemed like some of the pads might have been covered in lacquer. Some extra flux and heat fixed the problem.