From 4342064ee35d4facf1ad4cbde8f6f84460df02a0 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 20 Mar 2021 12:08:14 +0000 Subject: add webserver content --- app/gps.c | 38 ++++++++++++++++++++++++++++++-------- 1 file changed, 30 insertions(+), 8 deletions(-) (limited to 'app/gps.c') diff --git a/app/gps.c b/app/gps.c index 7ccefd7..7327435 100644 --- a/app/gps.c +++ b/app/gps.c @@ -39,7 +39,7 @@ static int32_t freq = 0; static Event_ring gps_ring; -static char gps_info[60]; +char gps_info[60]; static int ubx_cfg_tmode (uint32_t time_mode, int32_t x, int32_t y, int32_t z, uint32_t var, uint32_t min_dur, uint32_t max_var); @@ -113,6 +113,8 @@ static int ubx_recv_almanac (uint8_t *ptr, unsigned len) double gps_lat, gps_lon; +char gps_pos[128]; + static int ubx_recv_nav_posllh (uint8_t *ptr, unsigned len) { @@ -137,6 +139,8 @@ ubx_recv_nav_posllh (uint8_t *ptr, unsigned len) printf ("POS: %.4f %.4f\r\n", gps_lat, gps_lon); + snprintf (gps_pos, sizeof (gps_pos) - 1, "location: %.4f %.4f", gps_lat, gps_lon); + return 0; } @@ -404,6 +408,8 @@ static int ubx_recv_nav_sbas (uint8_t *ptr, unsigned len) return 0; } +char gps_svinfo[4096]; + static int ubx_recv_nav_svinfo (uint8_t *ptr, unsigned len) { uint32_t d4; @@ -412,7 +418,8 @@ static int ubx_recv_nav_svinfo (uint8_t *ptr, unsigned len) uint8_t n, flags, cflags; const char *st; - if (!chatty_gps) return 0; + PTB_INIT (gps_svinfo); + ptr += ubx_get_u32 (ptr, &d4); ptr += ubx_get_u8 (ptr, &n); @@ -475,12 +482,22 @@ static int ubx_recv_nav_svinfo (uint8_t *ptr, unsigned len) } - printf ("GPS SVID:%3d C/N:%3d %c%c%c %s\r\n", - svid, cno, - (cflags & 0x01) ? 'U' : '-', - (cflags & 0x02) ? 'D' : '-', - (cflags & 0x04) ? 'E' : '-', - st); + if (chatty_gps) + printf ("GPS SVID:%3d C/N:%3d %c%c%c %s\r\n", + svid, cno, + (cflags & 0x01) ? 'U' : '-', + (cflags & 0x02) ? 'D' : '-', + (cflags & 0x04) ? 'E' : '-', + st); + + + PTB_ADD ("GPS SVID:%3d C/N:%3d %c%c%c %s\n", + svid, cno, + (cflags & 0x01) ? 'U' : '-', + (cflags & 0x02) ? 'D' : '-', + (cflags & 0x04) ? 'E' : '-', + st); + } @@ -495,6 +512,8 @@ static int ubx_recv_rinex (uint8_t *payload, unsigned len) return 0; } +char gps_svin_info[128]; + static int ubx_recv_tim_svin (uint8_t *ptr, unsigned len) { uint8_t valid, active; @@ -513,6 +532,9 @@ static int ubx_recv_tim_svin (uint8_t *ptr, unsigned len) printf ("TIM-SVIN dur %u var %u obs %u valid %02x active %02x\r\n", (unsigned) dur, (unsigned) var, (unsigned) obs, valid, active); + snprintf (gps_svin_info, sizeof (gps_svin_info) - 1, "TIM-SVIN dur %u var %u obs %u valid %02x active %02x", + (unsigned) dur, (unsigned) var, (unsigned) obs, valid, active); + display_report_svin (valid, active); return 0; -- cgit v1.2.3