From f32584c553c635daa23fbae7eb547530136c471e Mon Sep 17 00:00:00 2001 From: Joel Wetzell Date: Sat, 25 Jul 2020 10:22:21 -0500 Subject: [PATCH] Add heading and speed to detail view --- firmware/application/apps/ui_adsb_rx.cpp | 8 ++++++-- firmware/application/apps/ui_adsb_rx.hpp | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/firmware/application/apps/ui_adsb_rx.cpp b/firmware/application/apps/ui_adsb_rx.cpp index c44868af9..1fff7e07d 100644 --- a/firmware/application/apps/ui_adsb_rx.cpp +++ b/firmware/application/apps/ui_adsb_rx.cpp @@ -92,7 +92,11 @@ void ADSBRxDetailsView::update(const AircraftRecentEntry& entry) { text_last_seen.set(to_string_dec_uint(age / 60) + " minutes ago"); text_infos.set(entry_copy.info_string); - text_info2.set("Hdg:" + to_string_dec_uint(entry_copy.velo.heading)); + if(entry_copy.velo.heading < 360 && entry_copy.velo.speed >=0){ //I don't like this but... + text_info2.set("Hdg:" + to_string_dec_uint(entry_copy.velo.heading) + " Spd:" + to_string_dec_int(entry_copy.velo.speed)); + }else{ + text_info2.set(""); + } text_frame_pos_even.set(to_string_hex_array(entry_copy.frame_pos_even.get_raw_data(), 14)); text_frame_pos_odd.set(to_string_hex_array(entry_copy.frame_pos_odd.get_raw_data(), 14)); @@ -200,7 +204,7 @@ void ADSBRxView::on_frame(const ADSBFrameMessage * message) { auto frame = message->frame; uint32_t ICAO_address = frame.get_ICAO_address(); - + if (frame.check_CRC() && frame.get_ICAO_address()) { rtcGetTime(&RTCD1, &datetime); auto& entry = ::on_packet(recent, ICAO_address); diff --git a/firmware/application/apps/ui_adsb_rx.hpp b/firmware/application/apps/ui_adsb_rx.hpp index 6964aa9b5..55d590bdd 100644 --- a/firmware/application/apps/ui_adsb_rx.hpp +++ b/firmware/application/apps/ui_adsb_rx.hpp @@ -49,7 +49,7 @@ struct AircraftRecentEntry { uint16_t hits { 0 }; uint32_t age { 0 }; adsb_pos pos { false, 0, 0, 0 }; - adsb_vel velo { false, 0, 0 }; + adsb_vel velo { false, 0, 999 }; ADSBFrame frame_pos_even { }; ADSBFrame frame_pos_odd { };