118 out_message_.
CFG_PRT.inProtoMask = CFG_PRT_t::IN_UBX | CFG_PRT_t::IN_NMEA | CFG_PRT_t::IN_RTCM;
120 out_message_.
CFG_PRT.mode = CFG_PRT_t::CHARLEN_8BIT | CFG_PRT_t::PARITY_NONE | CFG_PRT_t::STOP_BITS_1;
169 uint64_t time_recieved =
micros();
212 length_ |=
static_cast<uint16_t
>(byte) << 8;
279 return mktime(&c_time);
388 const uint8_t msg_id,
407 ck_a += (len >> 8) & 0xFF;
411 for (
int i = 0;
i < len;
i++)
#define UBLOX_BUFFER_SIZE
bool tx_buffer_empty() override
void register_rx_callback(void(*cb)(uint8_t data)) override
void set_baudrate(const uint32_t baudrate)
volatile uint32_t num_messages_received_
NAV_POSECEF_t NAV_POSECEF
volatile uint32_t millis(void)
void increment_detect_baudrate_async()
static constexpr uint32_t BAUD_RATE
void delayMicroseconds(uint32_t us)
void enable_message(uint8_t msg_cls, uint8_t msg_id, uint8_t rate)
void put_byte(uint8_t ch) override
uint32_t last_baudrate_change_ms_
uint8_t buffer[UBLOX_BUFFER_SIZE]
UBX_message_t out_message_
volatile uint64_t micros(void)
uint64_t convert_to_unix_time(const UBLOX::GNSS_TIME_T &time)
size_t baudrate_search_index_
static constexpr uint32_t TIMEOUT_MS
parse_state_t parse_state_
static constexpr UART::uart_mode_t UART_MODE
void calculate_checksum(const uint8_t msg_cls, const uint8_t msg_id, const uint16_t len, const UBX_message_t &payload, uint8_t &ck_a, uint8_t &ck_b) const
uint32_t current_baudrate_
void set_nav_rate(uint8_t period_ms)
void start_detect_baudrate_async()
bool send_ubx_message(uint8_t msg_class, uint8_t msg_id, UBX_message_t &message, uint16_t len)
uint32_t last_valid_message_
static constexpr uint32_t BAUDRATE_SEARCH_TIME_MS
NAV_VELECEF_t NAV_VELECEF
GNSSPosECEF read_pos_ecef()
bool set_mode(uint32_t baud, uart_mode_t mode)
const NAV_PVT_t & read_full()
void read_cb(uint8_t byte)
GNSSVelECEF read_vel_ecef()
void write(const uint8_t *ch, uint8_t len) override
void check_connection_status()
static constexpr size_t BAUDRATE_SEARCH_COUNT
uint64_t last_pvt_timestamp_
const uint32_t baudrates[BAUDRATE_SEARCH_COUNT]
UBX_message_t in_message_