speed > 200 and altitude > 9000 fix
This commit is contained in:
parent
5e4d27ee39
commit
e5dd31deab
|
|
@ -49,6 +49,8 @@ ____________________________________________________
|
|||
____________________________________________________
|
||||
## Timeline (Versions):
|
||||
|
||||
- 2024.06.21 If Tracker Speed > 200km/hr and/or Altitude > 9.000 mts , path ("WIDE1-1") will be omited as its probably a plane.
|
||||
- 2024.06.21 Wx Telemetry Tx on Tracker only if standing still > 15min. (On screen Wx Data will be available but won't be sended if moving).
|
||||
- 2024.06.07 Dynamic Height Correction of the BME280 Pressure readings.
|
||||
- 2024.05.21 WEMOS ESP32 Battery Holder + LoRa SX1278 + GPS Module support added.
|
||||
- 2024.05.16 all boards now work with Radiolib (LoRa) library from @jgromes.
|
||||
|
|
|
|||
|
|
@ -402,17 +402,21 @@ namespace STATION_Utils {
|
|||
void sendBeacon(uint8_t type) {
|
||||
String packet;
|
||||
if (Config.bme.sendTelemetry && type == 1) { // WX
|
||||
packet = APRSPacketLib::generateGPSBeaconPacket(currentBeacon->callsign, "APLRT1", Config.path, "/", APRSPacketLib::encodeGPS(gps.location.lat(),gps.location.lng(), gps.course.deg(), gps.speed.knots(), currentBeacon->symbol, Config.sendAltitude, gps.altitude.feet(), sendStandingUpdate, "Wx"));
|
||||
packet = APRSPacketLib::generateGPSBeaconPacket(currentBeacon->callsign, "APLRT1", Config.path, "/", APRSPacketLib::encodeGPS(gps.location.lat(),gps.location.lng(), gps.course.deg(), 0.0, currentBeacon->symbol, Config.sendAltitude, gps.altitude.feet(), sendStandingUpdate, "Wx"));
|
||||
if (wxModuleType != 0) {
|
||||
packet += BME_Utils::readDataSensor(0);
|
||||
} else {
|
||||
packet += ".../...g...t...r...p...P...h..b.....";
|
||||
}
|
||||
} else {
|
||||
String path = Config.path;
|
||||
if (gps.speed.kmph() > 200 || gps.altitude.meters() > 9000) { // avoid plane speed and altitude
|
||||
path = "";
|
||||
}
|
||||
if (miceActive) {
|
||||
packet = APRSPacketLib::generateMiceGPSBeacon(currentBeacon->micE, currentBeacon->callsign, currentBeacon->symbol, currentBeacon->overlay, Config.path, gps.location.lat(), gps.location.lng(), gps.course.deg(), gps.speed.knots(), gps.altitude.meters());
|
||||
packet = APRSPacketLib::generateMiceGPSBeacon(currentBeacon->micE, currentBeacon->callsign, currentBeacon->symbol, currentBeacon->overlay, path, gps.location.lat(), gps.location.lng(), gps.course.deg(), gps.speed.knots(), gps.altitude.meters());
|
||||
} else {
|
||||
packet = APRSPacketLib::generateGPSBeaconPacket(currentBeacon->callsign, "APLRT1", Config.path, currentBeacon->overlay, APRSPacketLib::encodeGPS(gps.location.lat(),gps.location.lng(), gps.course.deg(), gps.speed.knots(), currentBeacon->symbol, Config.sendAltitude, gps.altitude.feet(), sendStandingUpdate, "GPS"));
|
||||
packet = APRSPacketLib::generateGPSBeaconPacket(currentBeacon->callsign, "APLRT1", path, currentBeacon->overlay, APRSPacketLib::encodeGPS(gps.location.lat(),gps.location.lng(), gps.course.deg(), gps.speed.knots(), currentBeacon->symbol, Config.sendAltitude, gps.altitude.feet(), sendStandingUpdate, "GPS"));
|
||||
}
|
||||
}
|
||||
String comment;
|
||||
|
|
@ -471,7 +475,7 @@ namespace STATION_Utils {
|
|||
}
|
||||
|
||||
void checkTelemetryTx() {
|
||||
if (Config.bme.active && Config.bme.sendTelemetry) {
|
||||
if (Config.bme.active && Config.bme.sendTelemetry && sendStandingUpdate) {
|
||||
lastTx = millis() - lastTxTime;
|
||||
telemetryTx = millis() - lastTelemetryTx;
|
||||
if ((lastTelemetryTx == 0 || telemetryTx > 10 * 60 * 1000) && lastTx > 10 * 1000) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue