Is it possible to have two devices communicate with one gps receiver? I ask since I'd like to use an OSD and an ArduPilot with just one shared GPS receiver but don't know if it is doable with a serial interface. Thanks.
I had the same idea, to use one GPS module between an RVOSD and the Ardupilot, and someone told me it wouldnt work out. I dont remember who, but as far as I know it is only one way communication from the GPS chip to the component, so it should theoretically work. Not positive though....
I thought it might but was wondering if anyone else here had tried it. I guess I'll just have to try it out when my backordered :( Ardupilot gets here. I assume that I can run two gps receivers in the same airplane if I have to.
&Chris: Isn't this what you guys are doing with the GPS daughterboard, i.e., splitting the serial stream to both the ArduPilot and a Xbee for telemetry? Having installed the Eagle software to look at the schematic, this is what it looks like.
It looks like it may be very well as simple as splitting out the data lines. While I don't have an ArduPilot yet, I tested it out on an Arduino Duemilanove with the Intelligent Flight OSD that uses the LOCOSYS LS20033 gps module. So I let the IFOSD power and initialize the gps receiver and just tap into the serial data line and the ground and connect it to the Arduino. Since the OSD does all initialization for the GPS, I don't have to send anything (just have to remember that the baud rate is 19200). I cobbled together some code (mainly pilfering from the ArduPilot gps parser) that reads the number of satellites from the $GPGGA data and lights a corresponding number of LEDs while confirming that the OSD was functioning correctly and presenting the same results.
For this particular case, in order to use the ArduPilot with the IFOSD, I'll have to modify the gps parser since the only two data strings sent to the OSD are $GPGGA and $GPVTG. It looks like all the necessary data is there, though, but I have yet to confirm it.
This kind of stuff quickly turns into an obsessive little hobby, doesn't it?
I have the ArduPilot 2.x with the EM-406A GPS and an EagleTree OSD. I have little knowledge, but it sounds as if I can tap the GPS for the OSD - only I don't know the pinout/schematic to run into the EagleTree OSD from the above GPS cable. I've been unsuccessfully Googling, does someone have a link or the info, or how I can figure it out? TIA
I have thought about using both the AdruPilot and my AutoProp8 propeller board in combination. The OSD is so simple on the prop board and it could talk to the Ardu board via serial or i2c. Without adding much weight you could use both.
I will have to try this.. I have an AdruPilot board here as well as my stuff. Also use the prop to handle the XBee stuff to the modified ground station...see pic
I share my LocoSys LS20031 GPS with two separate ArduPilot boards without problem. The first is running the AP 1.0 code and functions as autopilot. The second board has a double function (I still have hard work optimizing loops, though):
- processing head tracking data from xbee for pan and tilt camera
- parsing GGA and RMC NMEA data from GPS, parsing bearing and waypoint range from autopilot board, and finally feeding emulated and raw NMEA sentences to my OSD. So my OSD is diplaying GPS information including next waypoint, range and bearing to next waypoint without being connected directly to the GPS chip.
Sharing GPS works great as long as you do not have to write to the GPS!