Is there a problem with the "old" ArduShield?

In my testing trying to get the ArduPilot to work with Remzibi's OSD, I'm starting to notice that the serial output of the ArduPilot is intermittent at best. For the most part, I show the blue GPS lock led, but it does turn on and off for no reason on occasion.Has anyone studied the ArduPilot source enough to know how much additional processor power is consumed with the ArduShield connected? I have two ArduShields (both "old" ones) and neither will return more than about 3% of the GPS data being sent to it.I'm using my GPS Emulator at 38,400 and I've varied the Hz from 1 to 10 with no significant change in output. All of my testing is working absolutely fine without the ArduShield attached.Anyone got a guess?
E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • 3D Robotics
    Which ArduShield GPS pins are you using: the 5v or 3.3v ones?
  • The GPS's datasheet specifically says 3.3V - 5V in the VIN pin. The VBACKUP pin, however, says 3.3V - 4.3V.....

    The OSD runs on a 7805 - 5V regulator.
  • Developer
    The gps could run at 3.3 - maybe. But the serial is expected at 5v. That would put the signal at the threshold making it vulnerable to noise. I don't have the older shield to check.
  • 3D Robotics
    Happy, I've never heard of a dual voltage GPS (or one with that wide a range). What voltage does the OSD run at?
  • Ok, the GPS I'm using is supposed to work from 3.3V to 5V. It doesn't matter where I connect it because the voltage is good at either. I'll have to see where the ground is missing.
  • 3D Robotics
    It's one of the grounds on the main 5V GPS connector (EM406) that's not connected in the old shield. But if you're using the 3.3V pins with a 5V GPS, you're sure to have problems!
  • Hi,

    In the old board the ground are the first and the last pin of the 6 pins gps connector.
    The 5th is not connected on the board.

    In the new shield the first and the 5th are connected.

    I made a cable with all three pins connected togheter.

    Be careful because in the old shield it seems to be an error:
    in the 4 pins 5v connector the "TX" pin should be "RX"!
    On the new board they are all marked "IN"

    Best regards.
    board.in is for sale! | Don't miss this premium domain name - board.in !
    board.in is for sale! | Grab this board.in Premium Domain to expanding your online business.
  • Developer
    Isn't that GPS 5v? If the board is referencing 3.3V I could see that as a major problem.
  • That's a good idea Jason.

    I'm doing my testing with the inexpensive NMEA GPS that ships with Remzibi's OSD.

    Chris, is it the 3.3V that's unconnected or the 5V?
  • Developer
    As far as I know, and I've taken Jordi's code apart line by line, is that the shield has no effect on the code or speed of execution. The code looks for the analog 3 pin and returns a value regardless if the shield is connected or not. What the shield does do is add electrical and mechanical complexity to the system. Noise and loose connections could cause the serial port to misread values from the GPS. A single number out of 90+ numbers could be read wrong causing the data to fail the checksum and be tossed. Look in the parsing code for the checksum and add a code block that prints "*** failed checksum ***"

    Here is an example. Look for line 70 on GPS_EM406.pde

    if(((gps_buffer[90]<<8)|gps_buffer[91]) == gps_checksum_verif) {
    GPS_join_data(); //Joing the data
    data_update_event|=0x01;
    data_update_event|=0x02;
    } else {
    Serial.println("*** failed checksum ***");
    }
This reply was deleted.