2018-07-14 19:12:20 +02:00
|
|
|
// Basic Config
|
|
|
|
#include "globals.h"
|
|
|
|
|
|
|
|
void senddata(uint8_t port) {
|
|
|
|
|
|
|
|
#ifdef HAS_LORA
|
|
|
|
// Check if there is a pending TX/RX job running
|
|
|
|
if (LMIC.opmode & OP_TXRXPEND) {
|
2018-07-14 20:07:33 +02:00
|
|
|
ESP_LOGI(TAG, "LoRa busy, data not sent");
|
|
|
|
sprintf(display_line7, "LORA BUSY");
|
2018-07-14 19:12:20 +02:00
|
|
|
} else {
|
2018-07-21 17:14:27 +02:00
|
|
|
LMIC_setTxData2(PAYLOAD_ENCODER == 4 ? CAYENNEPORT : port,
|
2018-07-21 13:36:49 +02:00
|
|
|
payload.getBuffer(), payload.getSize(),
|
2018-07-14 20:07:33 +02:00
|
|
|
(cfg.countermode & 0x02));
|
2018-07-21 13:36:49 +02:00
|
|
|
|
2018-07-14 19:12:20 +02:00
|
|
|
ESP_LOGI(TAG, "%d bytes queued to send on LoRa", payload.getSize());
|
2018-07-14 20:07:33 +02:00
|
|
|
sprintf(display_line7, "PACKET QUEUED");
|
2018-07-14 19:12:20 +02:00
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAS_SPI
|
2018-07-14 23:58:41 +02:00
|
|
|
// to come here: code for sending payload to a local master via SPI
|
2018-07-14 20:07:33 +02:00
|
|
|
ESP_LOGI(TAG, "%d bytes sent on SPI", payload.getSize());
|
2018-07-14 19:12:20 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
// clear counter if not in cumulative counter mode
|
2018-07-14 23:58:41 +02:00
|
|
|
if ((port == PAYLOADPORT) && (cfg.countermode != 1)) {
|
2018-07-14 19:12:20 +02:00
|
|
|
reset_counters(); // clear macs container and reset all counters
|
|
|
|
reset_salt(); // get new salt for salting hashes
|
|
|
|
ESP_LOGI(TAG, "Counter cleared (countermode = %d)", cfg.countermode);
|
|
|
|
}
|
|
|
|
|
2018-07-14 20:07:33 +02:00
|
|
|
} // senddata
|