buffer 0.1
This commit is contained in:
parent
4d4598e09e
commit
c5dcfd86b2
|
|
@ -64,8 +64,6 @@ uint32_t lastBatteryCheck = 0;
|
||||||
|
|
||||||
String batteryVoltage;
|
String batteryVoltage;
|
||||||
|
|
||||||
std::vector<String> lastHeardStation;
|
|
||||||
std::vector<String> outputPacketBuffer;
|
|
||||||
uint32_t lastTxTime = millis();
|
uint32_t lastTxTime = millis();
|
||||||
uint32_t lastRxTime = millis();
|
uint32_t lastRxTime = millis();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -159,29 +159,31 @@ namespace APRS_IS_Utils {
|
||||||
if ((packet.substring(0, 3) == "\x3c\xff\x01") && (packet.indexOf("TCPIP") == -1) && (packet.indexOf("NOGATE") == -1) && (packet.indexOf("RFONLY") == -1)) {
|
if ((packet.substring(0, 3) == "\x3c\xff\x01") && (packet.indexOf("TCPIP") == -1) && (packet.indexOf("NOGATE") == -1) && (packet.indexOf("RFONLY") == -1)) {
|
||||||
Sender = packet.substring(3, packet.indexOf(">"));
|
Sender = packet.substring(3, packet.indexOf(">"));
|
||||||
if (Sender != Config.callsign) { // avoid listening yourself by digirepeating
|
if (Sender != Config.callsign) { // avoid listening yourself by digirepeating
|
||||||
STATION_Utils::updateLastHeard(Sender);
|
if (STATION_Utils::check25SegBuffer(Sender, packet.substring(packet.indexOf(":")+2))) {
|
||||||
Utils::typeOfPacket(packet.substring(3), "LoRa-APRS");
|
STATION_Utils::updateLastHeard(Sender);
|
||||||
AddresseeAndMessage = packet.substring(packet.indexOf("::") + 2);
|
Utils::typeOfPacket(packet.substring(3), "LoRa-APRS");
|
||||||
Addressee = AddresseeAndMessage.substring(0, AddresseeAndMessage.indexOf(":"));
|
AddresseeAndMessage = packet.substring(packet.indexOf("::") + 2);
|
||||||
Addressee.trim();
|
Addressee = AddresseeAndMessage.substring(0, AddresseeAndMessage.indexOf(":"));
|
||||||
if (packet.indexOf("::") > 10 && Addressee == Config.callsign) { // its a message for me!
|
Addressee.trim();
|
||||||
queryMessage = processReceivedLoRaMessage(Sender, AddresseeAndMessage);
|
if (packet.indexOf("::") > 10 && Addressee == Config.callsign) { // its a message for me!
|
||||||
}
|
queryMessage = processReceivedLoRaMessage(Sender, AddresseeAndMessage);
|
||||||
if (!queryMessage) {
|
}
|
||||||
aprsPacket = buildPacketToUpload(packet);
|
if (!queryMessage) {
|
||||||
if (!Config.display.alwaysOn && Config.display.timeout != 0) {
|
aprsPacket = buildPacketToUpload(packet);
|
||||||
display_toggle(true);
|
if (!Config.display.alwaysOn && Config.display.timeout != 0) {
|
||||||
|
display_toggle(true);
|
||||||
|
}
|
||||||
|
lastScreenOn = millis();
|
||||||
|
#ifdef ESP32_DIY_LoRa_A7670
|
||||||
|
stationBeacon = true;
|
||||||
|
A7670_Utils::uploadToAPRSIS(aprsPacket);
|
||||||
|
stationBeacon = false;
|
||||||
|
#else
|
||||||
|
upload(aprsPacket);
|
||||||
|
#endif
|
||||||
|
Utils::println("---> Uploaded to APRS-IS");
|
||||||
|
show_display(firstLine, secondLine, thirdLine, fourthLine, fifthLine, sixthLine, seventhLine, 0);
|
||||||
}
|
}
|
||||||
lastScreenOn = millis();
|
|
||||||
#ifdef ESP32_DIY_LoRa_A7670
|
|
||||||
stationBeacon = true;
|
|
||||||
A7670_Utils::uploadToAPRSIS(aprsPacket);
|
|
||||||
stationBeacon = false;
|
|
||||||
#else
|
|
||||||
upload(aprsPacket);
|
|
||||||
#endif
|
|
||||||
Utils::println("---> Uploaded to APRS-IS");
|
|
||||||
show_display(firstLine, secondLine, thirdLine, fourthLine, fifthLine, sixthLine, seventhLine, 0);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,12 +6,12 @@
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
extern Configuration Config;
|
extern Configuration Config;
|
||||||
extern std::vector<String> lastHeardStation;
|
|
||||||
extern std::vector<String> outputPacketBuffer;
|
|
||||||
extern uint32_t lastTxTime;
|
extern uint32_t lastTxTime;
|
||||||
extern uint32_t lastRxTime;
|
extern uint32_t lastRxTime;
|
||||||
extern String fourthLine;
|
extern String fourthLine;
|
||||||
|
|
||||||
|
std::vector<String> lastHeardStation;
|
||||||
|
std::vector<String> outputPacketBuffer;
|
||||||
std::vector<String> packet25SegBuffer;
|
std::vector<String> packet25SegBuffer;
|
||||||
std::vector<uint32_t> packet25SegTimeBuffer;
|
std::vector<uint32_t> packet25SegTimeBuffer;
|
||||||
|
|
||||||
|
|
@ -69,6 +69,7 @@ namespace STATION_Utils {
|
||||||
void clean25SegBuffer() {
|
void clean25SegBuffer() {
|
||||||
if (!packet25SegTimeBuffer.empty()) {
|
if (!packet25SegTimeBuffer.empty()) {
|
||||||
if (millis() - packet25SegTimeBuffer[0] > 25 * 1000) {
|
if (millis() - packet25SegTimeBuffer[0] > 25 * 1000) {
|
||||||
|
Serial.print("Borrando : "); Serial.println(packet25SegBuffer[0]);
|
||||||
packet25SegTimeBuffer.erase(packet25SegTimeBuffer.begin());
|
packet25SegTimeBuffer.erase(packet25SegTimeBuffer.begin());
|
||||||
packet25SegBuffer.erase(packet25SegBuffer.begin());
|
packet25SegBuffer.erase(packet25SegBuffer.begin());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue