formating, refactoring
This commit is contained in:
parent
505d8281bf
commit
93d8c837d2
|
|
@ -3,14 +3,12 @@ BasedOnStyle: LLVM
|
||||||
Standard: Cpp11
|
Standard: Cpp11
|
||||||
|
|
||||||
UseTab: Never
|
UseTab: Never
|
||||||
|
|
||||||
IndentWidth: 4
|
IndentWidth: 4
|
||||||
ConstructorInitializerIndentWidth: 4
|
ConstructorInitializerIndentWidth: 4
|
||||||
ContinuationIndentWidth: 8
|
ContinuationIndentWidth: 8
|
||||||
AccessModifierOffset: -4
|
AccessModifierOffset: -4
|
||||||
|
|
||||||
AlwaysBreakTemplateDeclarations: true
|
AlwaysBreakTemplateDeclarations: true
|
||||||
|
|
||||||
BreakConstructorInitializersBeforeComma: true
|
BreakConstructorInitializersBeforeComma: true
|
||||||
ConstructorInitializerAllOnOneLineOrOnePerLine: false
|
ConstructorInitializerAllOnOneLineOrOnePerLine: false
|
||||||
|
|
||||||
|
|
@ -29,8 +27,9 @@ SpaceAfterCStyleCast: true
|
||||||
|
|
||||||
CommentPragmas: '^[/!]<'
|
CommentPragmas: '^[/!]<'
|
||||||
|
|
||||||
ColumnLimit: 150 # Adjusted column limit to prevent line breaks
|
ColumnLimit: 150
|
||||||
|
|
||||||
BreakBeforeBraces: Allman
|
BreakBeforeBraces: Allman
|
||||||
|
|
||||||
IndentAccessModifiers: true
|
IndentAccessModifiers: true
|
||||||
|
|
||||||
|
IndentPPDirectives: AfterHash
|
||||||
|
|
|
||||||
|
|
@ -366,7 +366,9 @@ class BNO08x
|
||||||
bool wait_for_rx_done();
|
bool wait_for_rx_done();
|
||||||
bool wait_for_tx_done();
|
bool wait_for_tx_done();
|
||||||
bool wait_for_data();
|
bool wait_for_data();
|
||||||
bool receive_packet();
|
esp_err_t receive_packet();
|
||||||
|
esp_err_t receive_packet_header(bno08x_rx_packet_t* packet);
|
||||||
|
esp_err_t receive_packet_body(bno08x_rx_packet_t* packet);
|
||||||
void send_packet(bno08x_tx_packet_t* packet);
|
void send_packet(bno08x_tx_packet_t* packet);
|
||||||
void flush_rx_packets(uint8_t flush_count);
|
void flush_rx_packets(uint8_t flush_count);
|
||||||
void enable_report(uint8_t report_ID, uint32_t time_between_reports, const EventBits_t report_evt_grp_bit, uint32_t special_config = 0);
|
void enable_report(uint8_t report_ID, uint32_t time_between_reports, const EventBits_t report_evt_grp_bit, uint32_t special_config = 0);
|
||||||
|
|
@ -549,6 +551,7 @@ class BNO08x
|
||||||
static const constexpr uint8_t SHTP_REPORT_PRODUCT_ID_REQUEST = 0xF9U; ///< See SH2 Ref. Manual 6.3.1
|
static const constexpr uint8_t SHTP_REPORT_PRODUCT_ID_REQUEST = 0xF9U; ///< See SH2 Ref. Manual 6.3.1
|
||||||
static const constexpr uint8_t SHTP_REPORT_BASE_TIMESTAMP = 0xFBU; ///< See SH2 Ref. Manual 7.2.1
|
static const constexpr uint8_t SHTP_REPORT_BASE_TIMESTAMP = 0xFBU; ///< See SH2 Ref. Manual 7.2.1
|
||||||
static const constexpr uint8_t SHTP_REPORT_SET_FEATURE_COMMAND = 0xFDU; ///< See SH2 Ref. Manual 6.5.4
|
static const constexpr uint8_t SHTP_REPORT_SET_FEATURE_COMMAND = 0xFDU; ///< See SH2 Ref. Manual 6.5.4
|
||||||
|
static const constexpr uint8_t SHTP_REPORT_GET_FEATURE_RESPONSE = 0xFCU; ///< See SH2 Ref. Manual 6.5.5
|
||||||
|
|
||||||
// Sensor report IDs, used when enabling and reading BNO08x reports
|
// Sensor report IDs, used when enabling and reading BNO08x reports
|
||||||
static const constexpr uint8_t SENSOR_REPORT_ID_ACCELEROMETER = 0x01U; ///< See SH2 Ref. Manual 6.5.9
|
static const constexpr uint8_t SENSOR_REPORT_ID_ACCELEROMETER = 0x01U; ///< See SH2 Ref. Manual 6.5.9
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
// parsing universal to any packet
|
// parsing universal to any packet
|
||||||
#define PARSE_PACKET_LENGTH(packet) \
|
#define PARSE_PACKET_LENGTH(packet) \
|
||||||
(UINT16_CLR_LSB(static_cast<uint16_t>(packet.header[1]) << 8U) | UINT16_CLR_MSB(static_cast<uint16_t>(packet.header[0])))
|
(UINT16_CLR_LSB(static_cast<uint16_t>(packet->header[1]) << 8U) | UINT16_CLR_MSB(static_cast<uint16_t>(packet->header[0])))
|
||||||
|
|
||||||
#define PARSE_PACKET_DATA_LENGTH(packet_ptr) \
|
#define PARSE_PACKET_DATA_LENGTH(packet_ptr) \
|
||||||
(UINT16_CLR_LSB(static_cast<uint16_t>(packet->header[1]) << 8U) | UINT16_CLR_MSB(static_cast<uint16_t>(packet->header[0])))
|
(UINT16_CLR_LSB(static_cast<uint16_t>(packet->header[1]) << 8U) | UINT16_CLR_MSB(static_cast<uint16_t>(packet->header[0])))
|
||||||
|
|
|
||||||
|
|
@ -443,9 +443,11 @@ bool BNO08x::wait_for_rx_done()
|
||||||
// wait until an interrupt has been asserted and data received or timeout has occured
|
// wait until an interrupt has been asserted and data received or timeout has occured
|
||||||
if (xEventGroupWaitBits(evt_grp_spi, EVT_GRP_SPI_RX_DONE_BIT, pdTRUE, pdTRUE, HOST_INT_TIMEOUT_MS))
|
if (xEventGroupWaitBits(evt_grp_spi, EVT_GRP_SPI_RX_DONE_BIT, pdTRUE, pdTRUE, HOST_INT_TIMEOUT_MS))
|
||||||
{
|
{
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
ESP_LOGI(TAG, "int asserted");
|
ESP_LOGI(TAG, "int asserted");
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
success = true;
|
success = true;
|
||||||
}
|
}
|
||||||
|
|
@ -483,9 +485,11 @@ bool BNO08x::wait_for_data()
|
||||||
// only return true if packet is valid
|
// only return true if packet is valid
|
||||||
if (xEventGroupGetBits(evt_grp_spi) & EVT_GRP_SPI_RX_VALID_PACKET_BIT)
|
if (xEventGroupGetBits(evt_grp_spi) & EVT_GRP_SPI_RX_VALID_PACKET_BIT)
|
||||||
{
|
{
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
ESP_LOGI(TAG, "Valid packet received.");
|
ESP_LOGI(TAG, "Valid packet received.");
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
success = true;
|
success = true;
|
||||||
}
|
}
|
||||||
|
|
@ -519,9 +523,11 @@ bool BNO08x::wait_for_tx_done()
|
||||||
|
|
||||||
if (xEventGroupWaitBits(evt_grp_spi, EVT_GRP_SPI_TX_DONE_BIT, pdTRUE, pdTRUE, HOST_INT_TIMEOUT_MS))
|
if (xEventGroupWaitBits(evt_grp_spi, EVT_GRP_SPI_TX_DONE_BIT, pdTRUE, pdTRUE, HOST_INT_TIMEOUT_MS))
|
||||||
{
|
{
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
ESP_LOGI(TAG, "Packet sent successfully.");
|
ESP_LOGI(TAG, "Packet sent successfully.");
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
@ -673,52 +679,89 @@ bool BNO08x::mode_sleep()
|
||||||
*
|
*
|
||||||
* @return void, nothing to return
|
* @return void, nothing to return
|
||||||
*/
|
*/
|
||||||
bool BNO08x::receive_packet()
|
esp_err_t BNO08x::receive_packet()
|
||||||
{
|
{
|
||||||
bno08x_rx_packet_t packet;
|
bno08x_rx_packet_t packet;
|
||||||
uint8_t dummy_header_tx[4] = {0};
|
esp_err_t ret = ESP_OK;
|
||||||
|
|
||||||
if (gpio_get_level(imu_config.io_int)) // ensure INT pin is low
|
if (gpio_get_level(imu_config.io_int)) // ensure INT pin is low
|
||||||
return false;
|
return ESP_ERR_INVALID_STATE;
|
||||||
|
|
||||||
|
gpio_set_level(imu_config.io_cs, 0); // assert chip select
|
||||||
|
|
||||||
|
// receive packet header
|
||||||
|
ret = receive_packet_header(&packet);
|
||||||
|
if (ret != ESP_OK)
|
||||||
|
{
|
||||||
|
gpio_set_level(imu_config.io_cs, 1); // de-assert chip select
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
// clang-format off
|
||||||
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
|
ESP_LOGW(TAG, "packet rx length: %d", packet.length);
|
||||||
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
|
if (packet.length == 0)
|
||||||
|
{
|
||||||
|
gpio_set_level(imu_config.io_cs, 1); // de-assert chip select
|
||||||
|
return ESP_ERR_INVALID_RESPONSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = receive_packet_body(&packet);
|
||||||
|
if (ret == ESP_OK)
|
||||||
|
{
|
||||||
|
xQueueSend(queue_rx_data, &packet, 0); // send received data to data_proc_task
|
||||||
|
xEventGroupSetBits(evt_grp_spi, EVT_GRP_SPI_RX_DONE_BIT);
|
||||||
|
}
|
||||||
|
|
||||||
|
gpio_set_level(imu_config.io_cs, 1); // de-assert chip select
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
esp_err_t BNO08x::receive_packet_header(bno08x_rx_packet_t* packet)
|
||||||
|
{
|
||||||
|
|
||||||
|
esp_err_t ret = ESP_OK;
|
||||||
|
uint8_t dummy_header_tx[4] = {0};
|
||||||
|
|
||||||
// setup transaction to receive first 4 bytes (packet header)
|
// setup transaction to receive first 4 bytes (packet header)
|
||||||
spi_transaction.rx_buffer = packet.header;
|
spi_transaction.rx_buffer = packet->header;
|
||||||
spi_transaction.tx_buffer = dummy_header_tx;
|
spi_transaction.tx_buffer = dummy_header_tx;
|
||||||
spi_transaction.length = 4 * 8;
|
spi_transaction.length = 4 * 8;
|
||||||
spi_transaction.rxlength = 4 * 8;
|
spi_transaction.rxlength = 4 * 8;
|
||||||
spi_transaction.flags = 0;
|
spi_transaction.flags = 0;
|
||||||
|
|
||||||
gpio_set_level(imu_config.io_cs, 0); // assert chip select
|
ret = spi_device_polling_transmit(spi_hdl, &spi_transaction); // receive first 4 bytes (packet header)
|
||||||
spi_device_polling_transmit(spi_hdl, &spi_transaction); // receive first 4 bytes (packet header)
|
|
||||||
|
|
||||||
|
if (ret == ESP_OK)
|
||||||
|
{
|
||||||
// calculate length of packet from received header
|
// calculate length of packet from received header
|
||||||
packet.length = PARSE_PACKET_LENGTH(packet);
|
packet->length = PARSE_PACKET_LENGTH(packet);
|
||||||
packet.length &= ~(1U << 15U); // Clear the MSbit
|
packet->length &= ~(1U << 15U); // clear the MSbit
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
return ret;
|
||||||
ESP_LOGW(TAG, "packet rx length: %d", packet.length);
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (packet.length == 0)
|
esp_err_t BNO08x::receive_packet_body(bno08x_rx_packet_t* packet)
|
||||||
return false;
|
{
|
||||||
|
esp_err_t ret = ESP_OK;
|
||||||
|
|
||||||
packet.length -= 4; // remove 4 header bytes from packet length (we already read those)
|
packet->length -= 4; // remove 4 header bytes from packet length (we already read those)
|
||||||
|
|
||||||
// setup transacton to read the data packet
|
// setup transacton to read the data packet
|
||||||
spi_transaction.rx_buffer = packet.body;
|
spi_transaction.rx_buffer = packet->body;
|
||||||
spi_transaction.tx_buffer = NULL;
|
spi_transaction.tx_buffer = NULL;
|
||||||
spi_transaction.length = packet.length * 8;
|
spi_transaction.length = packet->length * 8;
|
||||||
spi_transaction.rxlength = packet.length * 8;
|
spi_transaction.rxlength = packet->length * 8;
|
||||||
spi_transaction.flags = 0;
|
spi_transaction.flags = 0;
|
||||||
|
|
||||||
spi_device_polling_transmit(spi_hdl, &spi_transaction); // receive rest of packet
|
ret = spi_device_polling_transmit(spi_hdl, &spi_transaction); // receive rest of packet
|
||||||
|
|
||||||
gpio_set_level(imu_config.io_cs, 1); // de-assert chip select
|
return ret;
|
||||||
|
|
||||||
xQueueSend(queue_rx_data, &packet, 0); // send received data to data_proc_task
|
|
||||||
xEventGroupSetBits(evt_grp_spi, EVT_GRP_SPI_RX_DONE_BIT);
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -1195,15 +1238,23 @@ void BNO08x::register_cb(std::function<void()> cb_fxn)
|
||||||
*/
|
*/
|
||||||
uint16_t BNO08x::parse_packet(bno08x_rx_packet_t* packet)
|
uint16_t BNO08x::parse_packet(bno08x_rx_packet_t* packet)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
ESP_LOGW(TAG, "SHTP Header RX'd: 0x%X 0x%X 0x%X 0x%X", packet->header[0], packet->header[1], packet->header[2], packet->header[3]);
|
ESP_LOGW(TAG, "SHTP Header RX'd: 0x%X 0x%X 0x%X 0x%X", packet->header[0], packet->header[1], packet->header[2], packet->header[3]);
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
if (packet->body[0] == SHTP_REPORT_PRODUCT_ID_RESPONSE) // check to see that product ID matches what it should
|
if (packet->body[0] == SHTP_REPORT_PRODUCT_ID_RESPONSE) // check to see that product ID matches what it should
|
||||||
{
|
{
|
||||||
return parse_product_id_report(packet);
|
return parse_product_id_report(packet);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*if(packet->body[0] == SHTP_REPORT_GET_FEATURE_RESPONSE)
|
||||||
|
{
|
||||||
|
|
||||||
|
}*/
|
||||||
|
|
||||||
if (packet->body[0] == SHTP_REPORT_FRS_READ_RESPONSE)
|
if (packet->body[0] == SHTP_REPORT_FRS_READ_RESPONSE)
|
||||||
{
|
{
|
||||||
return parse_frs_read_response_report(packet);
|
return parse_frs_read_response_report(packet);
|
||||||
|
|
@ -1212,9 +1263,11 @@ uint16_t BNO08x::parse_packet(bno08x_rx_packet_t* packet)
|
||||||
// Check to see if this packet is a sensor reporting its data to us
|
// Check to see if this packet is a sensor reporting its data to us
|
||||||
if (packet->header[2] == CHANNEL_REPORTS && packet->body[0] == SHTP_REPORT_BASE_TIMESTAMP)
|
if (packet->header[2] == CHANNEL_REPORTS && packet->body[0] == SHTP_REPORT_BASE_TIMESTAMP)
|
||||||
{
|
{
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
ESP_LOGI(TAG, "RX'd packet, channel report");
|
ESP_LOGI(TAG, "RX'd packet, channel report");
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
return parse_input_report(packet); // This will update the rawAccelX, etc variables depending on which feature
|
return parse_input_report(packet); // This will update the rawAccelX, etc variables depending on which feature
|
||||||
// report is found
|
// report is found
|
||||||
|
|
@ -1222,18 +1275,22 @@ uint16_t BNO08x::parse_packet(bno08x_rx_packet_t* packet)
|
||||||
|
|
||||||
if (packet->header[2] == CHANNEL_CONTROL)
|
if (packet->header[2] == CHANNEL_CONTROL)
|
||||||
{
|
{
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
ESP_LOGI(TAG, "RX'd packet, channel control");
|
ESP_LOGI(TAG, "RX'd packet, channel control");
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
return parse_command_report(packet); // This will update responses to commands, calibrationStatus, etc.
|
return parse_command_report(packet); // This will update responses to commands, calibrationStatus, etc.
|
||||||
}
|
}
|
||||||
|
|
||||||
if (packet->header[2] == CHANNEL_GYRO)
|
if (packet->header[2] == CHANNEL_GYRO)
|
||||||
{
|
{
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
ESP_LOGI(TAG, "Rx packet, channel gyro");
|
ESP_LOGI(TAG, "Rx packet, channel gyro");
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
return parse_input_report(packet); // This will update the rawAccelX, etc variables depending on which feature
|
return parse_input_report(packet); // This will update the rawAccelX, etc variables depending on which feature
|
||||||
// report is found
|
// report is found
|
||||||
|
|
@ -1250,13 +1307,13 @@ uint16_t BNO08x::parse_packet(bno08x_rx_packet_t* packet)
|
||||||
*/
|
*/
|
||||||
uint16_t BNO08x::parse_product_id_report(bno08x_rx_packet_t* packet)
|
uint16_t BNO08x::parse_product_id_report(bno08x_rx_packet_t* packet)
|
||||||
{
|
{
|
||||||
uint32_t product_id = PARSE_PRODUCT_ID_REPORT_PRODUCT_ID(packet);
|
const uint32_t product_id = PARSE_PRODUCT_ID_REPORT_PRODUCT_ID(packet);
|
||||||
uint32_t reset_reason = PARSE_PRODUCT_ID_REPORT_RESET_REASON(packet);
|
const uint32_t reset_reason = PARSE_PRODUCT_ID_REPORT_RESET_REASON(packet);
|
||||||
uint32_t sw_part_number = PARSE_PRODUCT_ID_REPORT_SW_PART_NO(packet);
|
const uint32_t sw_part_number = PARSE_PRODUCT_ID_REPORT_SW_PART_NO(packet);
|
||||||
uint32_t sw_version_major = PARSE_PRODUCT_ID_REPORT_SW_VERSION_MAJOR(packet);
|
const uint32_t sw_version_major = PARSE_PRODUCT_ID_REPORT_SW_VERSION_MAJOR(packet);
|
||||||
uint32_t sw_version_minor = PARSE_PRODUCT_ID_REPORT_SW_VERSION_MINOR(packet);
|
const uint32_t sw_version_minor = PARSE_PRODUCT_ID_REPORT_SW_VERSION_MINOR(packet);
|
||||||
uint32_t sw_build_number = PARSE_PRODUCT_ID_REPORT_SW_BUILD_NO(packet);
|
const uint32_t sw_build_number = PARSE_PRODUCT_ID_REPORT_SW_BUILD_NO(packet);
|
||||||
uint32_t sw_version_patch = PARSE_PRODUCT_ID_REPORT_SW_VERSION_PATCH(packet);
|
const uint32_t sw_version_patch = PARSE_PRODUCT_ID_REPORT_SW_VERSION_PATCH(packet);
|
||||||
|
|
||||||
if (first_boot)
|
if (first_boot)
|
||||||
{
|
{
|
||||||
|
|
@ -3174,10 +3231,12 @@ void BNO08x::spi_task_trampoline(void* arg)
|
||||||
*/
|
*/
|
||||||
void BNO08x::spi_task()
|
void BNO08x::spi_task()
|
||||||
{
|
{
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
static uint64_t prev_time = esp_timer_get_time();
|
static uint64_t prev_time = esp_timer_get_time();
|
||||||
static uint64_t current_time = 0;
|
static uint64_t current_time = 0;
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
bno08x_tx_packet_t tx_packet;
|
bno08x_tx_packet_t tx_packet;
|
||||||
|
|
||||||
|
|
@ -3193,11 +3252,13 @@ void BNO08x::spi_task()
|
||||||
if (CHECK_TASKS_RUNNING(evt_grp_task_flow, EVT_GRP_TSK_FLW_RUNNING_BIT)) // ensure deconstructor has not requested that task be deleted
|
if (CHECK_TASKS_RUNNING(evt_grp_task_flow, EVT_GRP_TSK_FLW_RUNNING_BIT)) // ensure deconstructor has not requested that task be deleted
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// clang-format off
|
||||||
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
#ifdef CONFIG_ESP32_BNO08x_DEBUG_STATEMENTS
|
||||||
current_time = esp_timer_get_time();
|
current_time = esp_timer_get_time();
|
||||||
ESP_LOGI(TAG, "HINT asserted, time since last assertion: %llu", (current_time - prev_time));
|
ESP_LOGI(TAG, "HINT asserted, time since last assertion: %llu", (current_time - prev_time));
|
||||||
prev_time = current_time;
|
prev_time = current_time;
|
||||||
#endif
|
#endif
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
if (xQueueReceive(queue_tx_data, &tx_packet, 0)) // check for queued packet to be sent, non blocking
|
if (xQueueReceive(queue_tx_data, &tx_packet, 0)) // check for queued packet to be sent, non blocking
|
||||||
send_packet(&tx_packet); // send packet
|
send_packet(&tx_packet); // send packet
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue