Andrew Tridgell
c62197370a
GPS: replaced the GPS auto-detect mechanism
...
the old mechanism wasted most of the input bytes, and chewed a lot of
CPU, making it impractical to do GPS detection for a GPS attached
after startup
The new code is async, and detects a GPS by looking for a fully formed
packet with the right checksum for each GPS type
2012-09-17 14:45:47 +10:00
Andrew Tridgell
efabf7403e
GPS: NMEA bug fix from Alexey Kozin
...
thanks Alexey!
2012-09-12 15:04:24 +10:00
uncrustify
e49b12ca2e
uncrustify libraries/AP_GPS/GPS.h
2012-08-21 19:19:52 -07:00
uncrustify
c4a52a292f
uncrustify libraries/AP_GPS/AP_GPS_IMU.h
2012-08-21 19:19:52 -07:00
uncrustify
89bd01f86e
uncrustify libraries/AP_GPS/AP_GPS_IMU.cpp
2012-08-21 19:19:52 -07:00
uncrustify
5ed90851e3
uncrustify libraries/AP_GPS/AP_GPS_UBLOX.cpp
2012-08-21 19:19:52 -07:00
uncrustify
7de08acf09
uncrustify libraries/AP_GPS/AP_GPS_MTK16.cpp
2012-08-21 19:19:52 -07:00
uncrustify
87299da0dd
uncrustify libraries/AP_GPS/AP_GPS_NMEA.h
2012-08-21 19:19:51 -07:00
uncrustify
39f71f750d
uncrustify libraries/AP_GPS/AP_GPS_NMEA.cpp
2012-08-21 19:19:51 -07:00
uncrustify
924dea9a19
uncrustify libraries/AP_GPS/AP_GPS_SIRF.cpp
2012-08-21 19:19:51 -07:00
uncrustify
f10307bc10
uncrustify libraries/AP_GPS/AP_GPS_406.cpp
2012-08-21 19:19:51 -07:00
uncrustify
7fa1a9d3b6
uncrustify libraries/AP_GPS/AP_GPS_MTK.cpp
2012-08-21 19:19:51 -07:00
uncrustify
f597b7101a
uncrustify libraries/AP_GPS/AP_GPS_HIL.h
2012-08-21 19:03:13 -07:00
uncrustify
175ba76d13
uncrustify libraries/AP_GPS/AP_GPS_MTK16.h
2012-08-21 19:03:02 -07:00
uncrustify
c901ad2ebf
uncrustify libraries/AP_GPS/AP_GPS_None.h
2012-08-21 19:03:02 -07:00
uncrustify
b00ced6fad
uncrustify libraries/AP_GPS/AP_GPS_406.h
2012-08-21 19:02:53 -07:00
uncrustify
a0e16a1e84
uncrustify libraries/AP_GPS/AP_GPS.h
2012-08-21 19:02:53 -07:00
uncrustify
c1454461ee
uncrustify libraries/AP_GPS/AP_GPS_UBLOX.h
2012-08-21 19:02:46 -07:00
uncrustify
ceed417538
uncrustify libraries/AP_GPS/AP_GPS_MTK.h
2012-08-21 19:02:40 -07:00
uncrustify
bcd77b4cca
uncrustify libraries/AP_GPS/AP_GPS_Auto.h
2012-08-21 19:02:40 -07:00
uncrustify
31d2076794
uncrustify libraries/AP_GPS/AP_GPS_SIRF.h
2012-08-21 19:02:40 -07:00
uncrustify
f23d3daca9
uncrustify libraries/AP_GPS/AP_GPS_Shim.h
2012-08-21 19:02:40 -07:00
uncrustify
2a0242439a
uncrustify libraries/AP_GPS/GPS.cpp
2012-08-21 19:02:32 -07:00
uncrustify
671359697e
uncrustify libraries/AP_GPS/AP_GPS_HIL.cpp
2012-08-21 19:02:12 -07:00
uncrustify
45c94412ef
uncrustify libraries/AP_GPS/AP_GPS_Auto.cpp
2012-08-21 19:02:11 -07:00
uncrustify
f5699540a6
uncrustify libraries/AP_GPS/examples/GPS_MTK_test/GPS_MTK_test.pde
2012-08-21 19:01:35 -07:00
uncrustify
802a04512f
uncrustify libraries/AP_GPS/examples/GPS_NMEA_test/GPS_NMEA_test.pde
2012-08-21 19:01:35 -07:00
uncrustify
01cc566199
uncrustify libraries/AP_GPS/examples/GPS_AUTO_test/GPS_AUTO_test.pde
2012-08-21 19:01:34 -07:00
uncrustify
994c292877
uncrustify libraries/AP_GPS/examples/GPS_UBLOX_test/GPS_UBLOX_test.pde
2012-08-21 19:01:34 -07:00
uncrustify
85901d3b44
uncrustify libraries/AP_GPS/examples/GPS_406_test/GPS_406_test.pde
2012-08-21 19:01:34 -07:00
Andrew Tridgell
37d3affe3b
AP_GPS: fixed build of new MTK code
2012-08-22 10:02:21 +10:00
Craig Elder
661d1500d2
GPS: Corrections to Media Tek GPS Driver. Change to 5Hz and SBAS
2012-08-22 09:56:25 +10:00
rmackay9
9f81d0c601
AP_GPS: revert delay callback to be "unsigned long"
2012-08-18 20:33:45 +09:00
rmackay9
2ad383505c
AP_GPS: replaced "int" with "int16_t" and "long" with "int32_t"
2012-08-18 16:35:38 +09:00
Andrew Tridgell
79aae2114c
GPS: support getting raw velocity values from a UBlox
...
this may give better velocity numbers than the value from COG
2012-08-15 20:06:35 +10:00
Andrew Tridgell
06070dbf23
AP_GPS: added last_ground_speed() method
...
used for dead-reckoning in AHRS
2012-08-11 11:59:47 +10:00
Andrew Tridgell
f68211a011
AP_GPS: fixed types to be stdint types
2012-08-11 11:59:03 +10:00
Andrew Tridgell
f704408094
GPS-UBlox: removed duplicate config messages
...
these were left over from debugging
2012-07-19 15:23:15 +10:00
Andrew Tridgell
3458962184
GPS: test the more modern MTK16
2012-06-27 16:01:50 +10:00
Andrew Tridgell
19954f30e5
GPS: added velocity and acceleration components
...
used by AHRS for acceleration correction
2012-06-27 16:01:49 +10:00
rmackay9
c034e38cbd
ArduCopter HIL: changed calls to setHIL to send in time as a uint32_t (it was a float)
2012-06-26 22:50:17 +09:00
Andrew Tridgell
b32726e867
GPS: need pgmspace.h for _write_progstr_block()
2012-06-15 16:27:11 +10:00
Andrew Tridgell
ae9883a8e2
GPS: fixed auto-config of UBlox setup with no UBX messages
...
if a UBlox is configured for NMEA only, with no UBX messages at all
then it would never trigger the GPS_AUTO detection. This adds a UBX
config message to the init strings that enables the NAV_SOL message
2012-06-15 15:53:27 +10:00
rmackay9
fca914b7cf
AP_GPS_NMEA: fix from Roberto Navoni to improve NMEA accuracy
2012-06-12 20:27:50 +09:00
Andrew Tridgell
f9c5b135bc
GPS: use the new nav_setting in a couple of the sample sketches
2012-06-10 16:35:13 +10:00
Andrew Tridgell
0542539fc9
GPS: add stub settings for nav_setting in the other GPS drivers
...
only Ublox supports nav_setting so far
2012-06-10 16:34:53 +10:00
Andrew Tridgell
926dfbc0e9
GPS: added auto-configuration of UBlox GPS
...
the Ublox will now auto-configure for 5Hz with just the messages we
want. It also supports setting the navigation engine type
2012-06-10 16:34:13 +10:00
Andrew Tridgell
9adaacedcd
GPS: added debug code to the main GPS class
2012-06-08 16:42:03 +10:00
Andrew Tridgell
f4718cafad
GPS: re-open the serial port with a 256 byte serial receive buffer
...
this ensures all GPS parsers have a 256 byte buffer available
2012-06-08 16:42:03 +10:00
Andrew Tridgell
ddebf7b443
GPS: fixed the UBLOX parser to handle unknown messages
...
the parser was broken in several ways:
1) when it received an unknown message it didn't update the ck_a and ck_b fields, so it
thought the message had a bad checksum, which meant it got out of protocol sync
2) the read() method would return false if the last message from the GPS was of an unknown type.
So we relied on the last msg always being one that we understand and want
3) the parser considered any valid UBLOX message to be 'new data', whereas we only actually get
a new fix when we get box a new position and velned message
4) the total message size per update is more than 128 bytes, but the serial port was opened
with only a 128 byte buffer, so we got corruption regularly
2012-06-08 16:42:02 +10:00