Files
overland-controller/firmware/esp32-s3-dashboard/sensor_node_receiver.h
T

41 lines
1.0 KiB
C

#pragma once
#include <Arduino.h>
struct SensorNodeDashboardStatus {
bool frameReceived = false;
bool imuOnline = false;
bool imuValid = false;
bool levelCalibrationValid = false;
bool gpsOnline = false;
bool gpsFix = false;
uint8_t imuAccuracy = 0;
uint32_t bootId = 0;
uint32_t frameSequence = 0;
uint32_t framesReceived = 0;
uint32_t framesDropped = 0;
uint32_t parseErrors = 0;
uint32_t oversizedFrames = 0;
uint32_t bytesReceived = 0;
uint32_t nodeRestarts = 0;
uint32_t satellites = 0;
float pitchDegrees = 0;
float rollDegrees = 0;
float yawDegrees = 0;
float speedKph = 0;
float hdop = 0;
float altitudeMeters = 0;
double latitude = 0;
double longitude = 0;
String stability = "unknown";
String firmwareVersion;
String utcTime;
unsigned long lastByteMs = 0;
unsigned long lastFrameMs = 0;
};
void initSensorNodeRs485();
void processSensorNodeRs485();
bool sensorNodeRs485Connected();
const SensorNodeDashboardStatus &getSensorNodeStatus();