projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
altos: Use symbolic names for ublox packet id
[fw/altos]
/
src
/
drivers
/
ao_gps_skytraq.c
diff --git
a/src/drivers/ao_gps_skytraq.c
b/src/drivers/ao_gps_skytraq.c
index b7dc0a86bbff38c393a81b3a385ead7adb43b591..d2f67e6b6947b1f9cd4c8e1c87fc13a018eb23b7 100644
(file)
--- a/
src/drivers/ao_gps_skytraq.c
+++ b/
src/drivers/ao_gps_skytraq.c
@@
-506,6
+506,13
@@
static __code uint8_t ao_gps_115200[] = {
SKYTRAQ_MSG_3(5,0,5,0) /* Set to 115200 baud */
};
SKYTRAQ_MSG_3(5,0,5,0) /* Set to 115200 baud */
};
+static void
+ao_gps_set_speed_delay(uint8_t speed) {
+ ao_delay(AO_MS_TO_TICKS(500));
+ ao_gps_set_speed(speed);
+ ao_delay(AO_MS_TO_TICKS(500));
+}
+
static void
gps_update(void) __reentrant
{
static void
gps_update(void) __reentrant
{
@@
-515,7
+522,9
@@
gps_update(void) __reentrant
ao_timer_set_adc_interval(0);
#endif
ao_skytraq_sendstruct(ao_gps_115200);
ao_timer_set_adc_interval(0);
#endif
ao_skytraq_sendstruct(ao_gps_115200);
- ao_gps_set_speed(AO_SERIAL_SPEED_115200);
+ ao_gps_set_speed_delay(AO_SERIAL_SPEED_4800);
+ ao_skytraq_sendstruct(ao_gps_115200);
+ ao_gps_set_speed_delay(AO_SERIAL_SPEED_115200);
/* It's a binary protocol; abandon attempts to escape */
for (;;)
/* It's a binary protocol; abandon attempts to escape */
for (;;)