Compare commits

..

No commits in common. "main" and "v1.3.1" have entirely different histories.
main ... v1.3.1

22 changed files with 17 additions and 128 deletions

@ -1 +1 @@
Subproject commit a496d1eebd7394fb880ebfdd56fdcb5f2cce687b Subproject commit 8188d40505f5f77cb6ff9cea404b661d445acbd2

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -485,7 +485,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
{ {
sfx_u8 status = SFX_ERR_NONE; sfx_u8 status = SFX_ERR_NONE;
sfx_rx_state_enum_t cs_state = DL_TIMEOUT; sfx_rx_state_enum_t cs_state = DL_TIMEOUT;
sfx_s8 lbt_threshold_cal;
/* Starts Rx Windows to sense if channel is occupied or clear* /* Starts Rx Windows to sense if channel is occupied or clear*
* If the channel is clear during the minimum carrier sense * If the channel is clear during the minimum carrier sense
* value (cs_min), under the limit of the cs_threshold, * value (cs_min), under the limit of the cs_threshold,
@ -503,8 +502,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
HAL_Delay(Radio.GetWakeupTime()); HAL_Delay(Radio.GetWakeupTime());
lbt_threshold_cal = E2P_Read_RssiCal();
cs_threshold += lbt_threshold_cal;
APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold); APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold);
while (RxCarrierSenseGetStatus() == 0) while (RxCarrierSenseGetStatus() == 0)

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -485,7 +485,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
{ {
sfx_u8 status = SFX_ERR_NONE; sfx_u8 status = SFX_ERR_NONE;
sfx_rx_state_enum_t cs_state = DL_TIMEOUT; sfx_rx_state_enum_t cs_state = DL_TIMEOUT;
sfx_s8 lbt_threshold_cal;
/* Starts Rx Windows to sense if channel is occupied or clear* /* Starts Rx Windows to sense if channel is occupied or clear*
* If the channel is clear during the minimum carrier sense * If the channel is clear during the minimum carrier sense
* value (cs_min), under the limit of the cs_threshold, * value (cs_min), under the limit of the cs_threshold,
@ -503,8 +502,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
HAL_Delay(Radio.GetWakeupTime()); HAL_Delay(Radio.GetWakeupTime());
lbt_threshold_cal = E2P_Read_RssiCal();
cs_threshold += lbt_threshold_cal;
APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold); APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold);
while (RxCarrierSenseGetStatus() == 0) while (RxCarrierSenseGetStatus() == 0)

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -485,7 +485,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
{ {
sfx_u8 status = SFX_ERR_NONE; sfx_u8 status = SFX_ERR_NONE;
sfx_rx_state_enum_t cs_state = DL_TIMEOUT; sfx_rx_state_enum_t cs_state = DL_TIMEOUT;
sfx_s8 lbt_threshold_cal;
/* Starts Rx Windows to sense if channel is occupied or clear* /* Starts Rx Windows to sense if channel is occupied or clear*
* If the channel is clear during the minimum carrier sense * If the channel is clear during the minimum carrier sense
* value (cs_min), under the limit of the cs_threshold, * value (cs_min), under the limit of the cs_threshold,
@ -503,8 +502,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
HAL_Delay(Radio.GetWakeupTime()); HAL_Delay(Radio.GetWakeupTime());
lbt_threshold_cal = E2P_Read_RssiCal();
cs_threshold += lbt_threshold_cal;
APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold); APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold);
while (RxCarrierSenseGetStatus() == 0) while (RxCarrierSenseGetStatus() == 0)

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -485,7 +485,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
{ {
sfx_u8 status = SFX_ERR_NONE; sfx_u8 status = SFX_ERR_NONE;
sfx_rx_state_enum_t cs_state = DL_TIMEOUT; sfx_rx_state_enum_t cs_state = DL_TIMEOUT;
sfx_s8 lbt_threshold_cal;
/* Starts Rx Windows to sense if channel is occupied or clear* /* Starts Rx Windows to sense if channel is occupied or clear*
* If the channel is clear during the minimum carrier sense * If the channel is clear during the minimum carrier sense
* value (cs_min), under the limit of the cs_threshold, * value (cs_min), under the limit of the cs_threshold,
@ -503,8 +502,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
HAL_Delay(Radio.GetWakeupTime()); HAL_Delay(Radio.GetWakeupTime());
lbt_threshold_cal = E2P_Read_RssiCal();
cs_threshold += lbt_threshold_cal;
APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold); APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold);
while (RxCarrierSenseGetStatus() == 0) while (RxCarrierSenseGetStatus() == 0)

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -485,7 +485,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
{ {
sfx_u8 status = SFX_ERR_NONE; sfx_u8 status = SFX_ERR_NONE;
sfx_rx_state_enum_t cs_state = DL_TIMEOUT; sfx_rx_state_enum_t cs_state = DL_TIMEOUT;
sfx_s8 lbt_threshold_cal;
/* Starts Rx Windows to sense if channel is occupied or clear* /* Starts Rx Windows to sense if channel is occupied or clear*
* If the channel is clear during the minimum carrier sense * If the channel is clear during the minimum carrier sense
* value (cs_min), under the limit of the cs_threshold, * value (cs_min), under the limit of the cs_threshold,
@ -503,8 +502,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
HAL_Delay(Radio.GetWakeupTime()); HAL_Delay(Radio.GetWakeupTime());
lbt_threshold_cal = E2P_Read_RssiCal();
cs_threshold += lbt_threshold_cal;
APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold); APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold);
while (RxCarrierSenseGetStatus() == 0) while (RxCarrierSenseGetStatus() == 0)

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -485,7 +485,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
{ {
sfx_u8 status = SFX_ERR_NONE; sfx_u8 status = SFX_ERR_NONE;
sfx_rx_state_enum_t cs_state = DL_TIMEOUT; sfx_rx_state_enum_t cs_state = DL_TIMEOUT;
sfx_s8 lbt_threshold_cal;
/* Starts Rx Windows to sense if channel is occupied or clear* /* Starts Rx Windows to sense if channel is occupied or clear*
* If the channel is clear during the minimum carrier sense * If the channel is clear during the minimum carrier sense
* value (cs_min), under the limit of the cs_threshold, * value (cs_min), under the limit of the cs_threshold,
@ -503,8 +502,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
HAL_Delay(Radio.GetWakeupTime()); HAL_Delay(Radio.GetWakeupTime());
lbt_threshold_cal = E2P_Read_RssiCal();
cs_threshold += lbt_threshold_cal;
APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold); APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold);
while (RxCarrierSenseGetStatus() == 0) while (RxCarrierSenseGetStatus() == 0)

View File

@ -248,7 +248,7 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++) for (page_index = start_page_index; page_index < (start_page_index + number_pages); page_index++)
{ {
page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE; page_address = page_index * FLASH_PAGE_SIZE + FLASH_BASE;
if (FLASH_IF_INT_IsEmpty((void *)uDest, length) != FLASH_IF_MEM_EMPTY) if (FLASH_IF_INT_IsEmpty(pDestination, length) != FLASH_IF_MEM_EMPTY)
{ {
if (pAllocatedBuffer == NULL) if (pAllocatedBuffer == NULL)
{ {
@ -272,12 +272,6 @@ static FLASH_IF_StatusTypedef FLASH_IF_INT_Write(void *pDestination, const void
current_dest = page_address; current_dest = page_address;
current_source = (uint32_t)pAllocatedBuffer; current_source = (uint32_t)pAllocatedBuffer;
current_length = FLASH_PAGE_SIZE; current_length = FLASH_PAGE_SIZE;
/* Unlock back the Flash */
if (HAL_OK != HAL_FLASH_Unlock())
{
ret_status = FLASH_IF_LOCK_ERROR;
}
} }
else else
{ {

View File

@ -485,7 +485,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
{ {
sfx_u8 status = SFX_ERR_NONE; sfx_u8 status = SFX_ERR_NONE;
sfx_rx_state_enum_t cs_state = DL_TIMEOUT; sfx_rx_state_enum_t cs_state = DL_TIMEOUT;
sfx_s8 lbt_threshold_cal;
/* Starts Rx Windows to sense if channel is occupied or clear* /* Starts Rx Windows to sense if channel is occupied or clear*
* If the channel is clear during the minimum carrier sense * If the channel is clear during the minimum carrier sense
* value (cs_min), under the limit of the cs_threshold, * value (cs_min), under the limit of the cs_threshold,
@ -503,8 +502,6 @@ sfx_u8 RF_API_wait_for_clear_channel(sfx_u8 cs_min, sfx_s8 cs_threshold, sfx_rx_
HAL_Delay(Radio.GetWakeupTime()); HAL_Delay(Radio.GetWakeupTime());
lbt_threshold_cal = E2P_Read_RssiCal();
cs_threshold += lbt_threshold_cal;
APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold); APP_LOG(TS_ON, VLEVEL_M, "CS start cs_min=%dms, cs_threshold=%dBm\n\r", cs_min, cs_threshold);
while (RxCarrierSenseGetStatus() == 0) while (RxCarrierSenseGetStatus() == 0)

View File

@ -78,7 +78,7 @@ series</li>
<div class="collapse"> <div class="collapse">
<input type="checkbox" id="collapse-section5" checked aria-hidden="true"> <input type="checkbox" id="collapse-section5" checked aria-hidden="true">
<label for="collapse-section5" aria-hidden="true"><strong>V1.3.1 / <label for="collapse-section5" aria-hidden="true"><strong>V1.3.1 /
20-December-2024</strong></label> 29-November-2024</strong></label>
<div> <div>
<h2 id="main-changes">Main Changes</h2> <h2 id="main-changes">Main Changes</h2>
<h3 id="patch-release">Patch Release</h3> <h3 id="patch-release">Patch Release</h3>
@ -124,8 +124,7 @@ class="icon-st-update"></span></td>
</tr> </tr>
<tr> <tr>
<td style="text-align: left;">NUCLEO-WL55JC</td> <td style="text-align: left;">NUCLEO-WL55JC</td>
<td style="text-align: left;">Demonstrations <span <td style="text-align: left;">Demonstrations</td>
class="icon-st-update"></span></td>
<td style="text-align: left;">Projects\NUCLEO-WL55JC\Demonstrations</td> <td style="text-align: left;">Projects\NUCLEO-WL55JC\Demonstrations</td>
</tr> </tr>
<tr> <tr>
@ -187,14 +186,6 @@ RTC</li>
<li>Set the ulExpectedIdleTime flag before entering in low power mode in <li>Set the ulExpectedIdleTime flag before entering in low power mode in
PreSleepProcessing</li> PreSleepProcessing</li>
</ul></li> </ul></li>
<li><strong>Applications/LoRaWAN/LoRaWAN_AT_Slave</strong>
<ul>
<li>Update CubeMonitor RF test panel</li>
</ul></li>
<li><strong>Applications/LoRaWAN/LoRaWAN_AT_Slave_DualCore</strong>
<ul>
<li>Update CubeMonitor RF test panel</li>
</ul></li>
<li><strong>Applications/LoRaWAN_FUOTA_DualCore</strong> <li><strong>Applications/LoRaWAN_FUOTA_DualCore</strong>
<ul> <ul>
<li>Fix compilation on Linux host due to lower case letters used in file <li>Fix compilation on Linux host due to lower case letters used in file
@ -210,10 +201,6 @@ names</li>
<li>Fix compilation on Linux host due to lower case letters used in file <li>Fix compilation on Linux host due to lower case letters used in file
names</li> names</li>
</ul></li> </ul></li>
<li><strong>Demonstrations/LocalNetwork/LocalNetwork_Concentrator/</strong>
<ul>
<li>Update CubeMonitor RF demo panel</li>
</ul></li>
<li><strong>Examples/PWR/PWR_STOP2_RTC</strong> <li><strong>Examples/PWR/PWR_STOP2_RTC</strong>
<ul> <ul>
<li>Fix PWR_STOP2_RTC test due to uninitialized RCC_OscInitStruct <li>Fix PWR_STOP2_RTC test due to uninitialized RCC_OscInitStruct
@ -236,16 +223,11 @@ struct</li>
<li><strong>Applications/LoRaWAN_FUOTA_DualCore_ExtFlash</strong> <li><strong>Applications/LoRaWAN_FUOTA_DualCore_ExtFlash</strong>
<ul> <ul>
<li>Fix compilation on Linux host due to lower case letters used in file <li>Fix compilation on Linux host due to lower case letters used in file
names</li> names<br />
</ul></li> </li>
<li><strong>Applications/LoRaWAN/LoRaWAN_AT_Slave</strong>
<ul>
<li>Update CubeMonitor RF test panel</li>
</ul></li> </ul></li>
</ul></li> </ul></li>
</ul> </ul>
<p><br />
</p>
<h2 id="known-limitations">Known Limitations</h2> <h2 id="known-limitations">Known Limitations</h2>
<ul> <ul>
<li><strong>LL/HAL</strong> <li><strong>LL/HAL</strong>