From c26e5e012c2a8cffd6e9e33790ba0e88fb80bd52 Mon Sep 17 00:00:00 2001 From: bruno Date: Wed, 30 Apr 2025 15:44:35 +0200 Subject: [PATCH] smt --- main/components/radio.c | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/main/components/radio.c b/main/components/radio.c index 6411f8d..843e042 100644 --- a/main/components/radio.c +++ b/main/components/radio.c @@ -69,19 +69,19 @@ static void prepare_downbound_packet(DownBoundPacket *packet, uint8_t type, uint static void send_packet_without_retries(uint8_t *data, uint16_t size) { - if (xSemaphoreTake(loraRadioMutex, portMAX_DELAY) == pdTRUE) + if (xSemaphoreTake(loraRadioMutex, portMAX_DELAY) == pdTRUE) + { + if (!LoRaSend(data, size, SX126x_TXMODE_SYNC)) { - if (!LoRaSend(data, size, SX126x_TXMODE_SYNC)) - { - ESP_LOGW(TAG, "LoRaSend failed"); - xSemaphoreGive(loraRadioMutex); - } - else - { - ESP_LOGI(TAG, "%d byte packet sent", size); - xSemaphoreGive(loraRadioMutex); - } + ESP_LOGW(TAG, "LoRaSend failed"); + xSemaphoreGive(loraRadioMutex); } + else + { + ESP_LOGI(TAG, "%d byte packet sent", size); + xSemaphoreGive(loraRadioMutex); + } + } } static void send_packet_with_retries(uint8_t *data, uint16_t size) @@ -126,7 +126,7 @@ void prepare_and_send_telemetry(uint64_t missionTimer) uint8_t bufOut[256] = {0}; DownBoundPacket downboundPacket; - uint32_t crc = esp_rom_crc32_le(0,(uint8_t *) &telemetryPacket, sizeof(telemetryPacket)); + uint32_t crc = esp_rom_crc32_le(0, (uint8_t *)&telemetryPacket, sizeof(telemetryPacket)); prepare_downbound_packet(&downboundPacket, DownlinkPacketType_Telemetry, missionTimer, crc); uint16_t offset = 0; @@ -143,13 +143,12 @@ static void build_and_send_ack(uint32_t ackIndex, uint32_t crc32Checksum, uint64 { uint8_t bufOut[256] = {0}; - ACKPacket ackPacket = { .packetIndex = ackIndex, .crc32Checksum = crc32Checksum, }; - uint32_t crc = esp_rom_crc32_le(0, (uint8_t *) &ackPacket, sizeof(ackPacket)); + uint32_t crc = esp_rom_crc32_le(0, (uint8_t *)&ackPacket, sizeof(ackPacket)); DownBoundPacket downboundPacket; prepare_downbound_packet(&downboundPacket, DownlinkPacketType_ACK, missionTimer, crc); @@ -199,7 +198,8 @@ void process_uplink_packet(uint8_t *data, uint8_t len, uint64_t missionTimer) uint32_t crc = esp_rom_crc32_le(0, payload, payloadRXLen); - if (crc != uplinkPacket.CRCCheck) { + if (crc != uplinkPacket.CRCCheck) + { ESP_LOGE(TAG, "Received BAD CRC for packet %ld, crc is %ld, should be %ld", uplinkPacket.packetIndex, crc, uplinkPacket.CRCCheck); return; } @@ -285,19 +285,17 @@ void lora_receive_task(void *pvParameters) void lora_comms_task(void *pvParameters) { - - - ESP_LOGI(TAG, "lora_comms_task started"); - // while (foundDevices[0] != 2) { // vTaskDelay(10); // } - + // Initialize the semaphore for radio access (binary semaphore, 1 = available) loraRadioMutex = xSemaphoreCreateMutex(); xSemaphoreGive(loraRadioMutex); // Set semaphore as available + ESP_LOGI(TAG, "lora_comms_task started"); setup_lora(); + ESP_LOGI(TAG, "lora_comms_task continuing"); xTaskCreate( lora_receive_task, "LoraReceiveTask", @@ -305,10 +303,12 @@ void lora_comms_task(void *pvParameters) NULL, (tskIDLE_PRIORITY + 2), NULL); + ESP_LOGI(TAG, "loraInit"); while (1) { int64_t start_time = esp_timer_get_time(); + ESP_LOGI(TAG, "fdfgtfet"); if (packetReadiness) { ESP_LOGI(TAG, "Preparing telemetry");