bugfix message queuing to LMIC while LMIC is busy

This commit is contained in:
Verkehrsrot committed 2019-08-28 10:48:39 +02:00
1 parent bbca15a76e
commit 829ab0ea05
6 files changed
+27 -25

No files matched your search

+4 -3
View File
@@ -45,6 +45,9 @@
#define I2C_MUTEX_LOCK() (xSemaphoreTake(I2Caccess, pdMS_TO_TICKS(10)) == pdTRUE)
#define I2C_MUTEX_UNLOCK() (xSemaphoreGive(I2Caccess))
enum sendprio_t { prio_low, prio_normal, prio_high };
enum timesource_t { _gps, _rtc, _lora, _unsynced };
// Struct holding devices's runtime configuration
typedef struct {
uint8_t lorasf; // 7-12, lora spreadfactor
@@ -73,6 +76,7 @@ typedef struct {
typedef struct {
uint8_t MessageSize;
uint8_t MessagePort;
sendprio_t MessagePrio;
uint8_t Message[PAYLOAD_BUFFER_SIZE];
} MessageBuffer_t;
@@ -95,9 +99,6 @@ typedef struct {
float gas; // raw gas sensor signal
} bmeStatus_t;
enum sendprio_t { prio_low, prio_normal, prio_high };
enum timesource_t { _gps, _rtc, _lora, _unsynced };
extern std::set<uint16_t, std::less<uint16_t>, Mallocator<uint16_t>> macs;
extern std::array<uint64_t, 0xff>::iterator it;
extern std::array<uint64_t, 0xff> beacons;
+1 -1
View File
@@ -35,7 +35,7 @@ void os_getDevEui(u1_t *buf);
void showLoraKeys(void);
void switch_lora(uint8_t sf, uint8_t tx);
void lora_send(osjob_t *job);
void lora_enqueuedata(MessageBuffer_t *message, sendprio_t prio);
void lora_enqueuedata(MessageBuffer_t *message);
void lora_queuereset(void);
#if (TIME_SYNC_LORAWAN)
void user_request_network_time_callback(void *pVoidUserUTCTime,
+1 -1
View File
@@ -28,7 +28,7 @@ licenses. Refer to LICENSE.txt file in repository for more details.
esp_err_t spi_init();
void spi_enqueuedata(MessageBuffer_t *message, sendprio_t prio);
void spi_enqueuedata(MessageBuffer_t *message);
void spi_queuereset();
#endif // _SPISLAVE_H