diff --git a/Core/Inc/main.h b/Core/Inc/main.h index 1c8d2ae..3a56424 100644 --- a/Core/Inc/main.h +++ b/Core/Inc/main.h @@ -229,7 +229,13 @@ void Error_Handler(void); #define I2C2_SDA_PIN GPIO_PIN_11 #define I2C2_SCL_PORT GPIOA #define I2C2_SDA_PORT GPIOA +/* + * +#define I2C_TIMING_STANDARD_MODE 0x2000090E //STANDARD MODE 100Khz +#define I2C_TIMING_FAST_MODE 0x2010091A //FAST MODE 400Khz +#define I2C_TIMING_FAST_PLUS_MODE 0x20000209 //FAST PLUS MODE 1000Khz + */ // FOR STM32WLE5CCU6 UFQFPN48 PA12 PA11 #ifdef STM32WLE5xx #define I2C2_STANDARD_100K 0x00000E14 diff --git a/Core/Inc/sys_conf.h b/Core/Inc/sys_conf.h index 37cdd34..4941614 100644 --- a/Core/Inc/sys_conf.h +++ b/Core/Inc/sys_conf.h @@ -47,12 +47,12 @@ extern "C" { /** * @brief Verbose level for all trace logs */ -#define VERBOSE_LEVEL VLEVEL_H +#define VERBOSE_LEVEL VLEVEL_OFF /** * @brief Enable trace logs */ -#define APP_LOG_ENABLED 1 +#define APP_LOG_ENABLED 0 /** * @brief Activate monitoring (probes) of some internal RF signals for debug purpose @@ -75,13 +75,13 @@ extern "C" { * @brief Enable/Disable MCU Debugger pins (dbg serial wires) * @note by HW serial wires are ON by default, need to put them OFF to save power */ -#define DEBUGGER_ENABLED 1 +#define DEBUGGER_ENABLED 0 /** * @brief Disable Low Power mode * @note 0: LowPowerMode enabled. MCU enters stop2 mode, 1: LowPowerMode disabled. MCU enters sleep mode only */ -#define LOW_POWER_DISABLE 1 +#define LOW_POWER_DISABLE 0 /* USER CODE BEGIN EC */ diff --git a/Core/Src/dma.c b/Core/Src/dma.c index 0aad753..8496db5 100644 --- a/Core/Src/dma.c +++ b/Core/Src/dma.c @@ -71,7 +71,7 @@ void MX_DMA_Init(void) /* DMA1_Channel5_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 0, 0); HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn); - +#if 0 // USART2 /* DMA1_Channel6_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Channel6_IRQn, 0, 0); @@ -82,7 +82,7 @@ void MX_DMA_Init(void) HAL_NVIC_SetPriority(DMA1_Channel5_IRQn, 2, 0); HAL_NVIC_EnableIRQ(DMA1_Channel5_IRQn); - +#endif } diff --git a/Core/Src/gpio.c b/Core/Src/gpio.c index 8f0d4aa..557e202 100644 --- a/Core/Src/gpio.c +++ b/Core/Src/gpio.c @@ -46,16 +46,57 @@ void MX_GPIO_Init(void) /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOB_CLK_ENABLE(); - __HAL_RCC_GPIOC_CLK_ENABLE(); + //__HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); +#if 0 + // 0b0000 0000 0000 0000 + // 0b0001 1010 0000 0000 INCLUDE PA9 PA11 PA12 --> 0x1A00 + // 0b1110 0101 1111 1111 exclude PA9 PA11 PA12 --> 0xE5FF + // GPIO_InitStruct.Pin = 0xE5FF; // or ~0x1A00; + + // 0b1001 1010 0000 0000 INCLUDE PA9 PA11 PA12 PA15--> 0x9A00 + // 0b0110 0101 1111 1111 exclude PA9 PA11 PA12 PA15--> 0x65FF + GPIO_InitStruct.Pin = 0x65FF; // or ~0x1A00; + GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; + GPIO_InitStruct.Pull = GPIO_NOPULL; + HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + + GPIO_InitStruct.Pin = GPIO_PIN_15; // PA15 ADC-5, BAT LEVEL INPUT + GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + + + //0b0000 0001 0011 1100 INCLUDE PB2 PB3 PB4 PB5 PB8 --> 0x013C + //0b1111 1110 1100 0011 exclude PB2 PB3 PB4 PB5 PB8 --> 0xFEC3 + GPIO_InitStruct.Pin = 0xFEC3; // or ~0x013C; + GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; + GPIO_InitStruct.Pull = GPIO_NOPULL; + HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + + //0b0010 0000 0000 0000 INCLUDE PC13 --> 0x2000 + //0b1101 1111 1111 1111 exclude PC13 --> 0xDFFF + GPIO_InitStruct.Pin = 0xDFFF; + GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; + GPIO_InitStruct.Pull = GPIO_NOPULL; + HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); + + //__HAL_RCC_GPIOA_CLK_DISABLE(); + //__HAL_RCC_GPIOB_CLK_DISABLE(); + __HAL_RCC_GPIOC_CLK_DISABLE(); +#endif /*Configure GPIO pin Output Level */ +#if 0 HAL_GPIO_WritePin(GPIOB, LED1_Pin|LED2_Pin|PROB2_Pin|PROB1_Pin |LED3_Pin, GPIO_PIN_RESET); +#endif #ifdef L8 HAL_GPIO_WritePin(VL53L8A1_PWR_EN_C_PORT, VL53L8A1_PWR_EN_C_PIN, GPIO_PIN_SET); HAL_GPIO_WritePin(VL53L8A1_LPn_C_PORT, VL53L8A1_LPn_C_PIN, GPIO_PIN_SET); #endif +#if 0 /*Configure GPIO pins : PBPin PBPin PBPin */ GPIO_InitStruct.Pin = LED1_Pin|LED2_Pin|LED3_Pin; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; @@ -81,6 +122,42 @@ void MX_GPIO_Init(void) GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING; GPIO_InitStruct.Pull = GPIO_PULLUP; HAL_GPIO_Init(BUT3_GPIO_Port, &GPIO_InitStruct); +#endif + +#if (defined(TOF_1) && defined(TOF_2)) + GPIO_InitStruct.Pin = TOF_C_INT_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; + HAL_GPIO_Init(TOF_C_INT_GPIO_Port, &GPIO_InitStruct); +#endif +#if (defined(TOF_1) && defined(TOF_2)) + GPIO_InitStruct.Pin = TOF_C_XSHUT_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_PULLDOWN; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(TOF_C_XSHUT_GPIO_Port, &GPIO_InitStruct); + + /*Configure GPIO pins : TOF_L_XSHUT_Pin */ + + GPIO_InitStruct.Pin = TOF_L_XSHUT_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_PULLDOWN; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(TOF_L_XSHUT_GPIO_Port, &GPIO_InitStruct); +#endif + +#if defined(TOF_1) + HAL_GPIO_WritePin(TOF_C_XSHUT_GPIO_Port, TOF_C_XSHUT_Pin, GPIO_PIN_SET); +#endif +#if defined(TOF_2) + HAL_GPIO_WritePin(TOF_L_XSHUT_GPIO_Port, TOF_L_XSHUT_Pin, GPIO_PIN_SET); +#endif + +#if (defined(TOF_1) && defined(TOF_2)) + HAL_NVIC_SetPriority(TOF_C_INT_EXTI_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(TOF_C_INT_EXTI_IRQn); +#endif #ifndef L8 /* STS-PME PB-4 */ @@ -160,7 +237,7 @@ void MX_GPIO_Init(void) #endif /* ============== SOAP LEVEL DETECTION ========================= */ - +#if 0 /* EXTI interrupt init*/ HAL_NVIC_SetPriority(EXTI0_IRQn, 0, 0); HAL_NVIC_EnableIRQ(EXTI0_IRQn); @@ -170,7 +247,7 @@ void MX_GPIO_Init(void) HAL_NVIC_SetPriority(EXTI9_5_IRQn, 0, 0); HAL_NVIC_EnableIRQ(EXTI9_5_IRQn); - +#endif #ifdef L8 HAL_NVIC_SetPriority(TOF_INT_EXTI_IRQn, 0, 0); HAL_NVIC_EnableIRQ(TOF_INT_EXTI_IRQn); diff --git a/Core/Src/main.c b/Core/Src/main.c index 1b0920b..b10dc6b 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -110,13 +110,15 @@ int main(void) else #endif { - MX_I2C2_Init(); MX_DMA_Init(); + MX_I2C2_Init(); + MX_LoRaWAN_Init(); } /* USER CODE BEGIN 2 */ - MX_USART2_UART_Init(); + //MX_USART2_UART_Init(); + HAL_UART_DeInit(&huart2); /* USER CODE END 2 */ /* Infinite loop */ @@ -156,7 +158,7 @@ void SystemClock_Config(void) RCC_OscInitStruct.LSEState = RCC_LSE_ON; RCC_OscInitStruct.MSIState = RCC_MSI_ON; RCC_OscInitStruct.MSICalibrationValue = RCC_MSICALIBRATION_DEFAULT; - RCC_OscInitStruct.MSIClockRange = RCC_MSIRANGE_11; + RCC_OscInitStruct.MSIClockRange = RCC_MSIRANGE_11; //RCC_MSIRANGE_8 RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE; if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { @@ -169,8 +171,10 @@ void SystemClock_Config(void) |RCC_CLOCKTYPE_SYSCLK|RCC_CLOCKTYPE_PCLK1 |RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_MSI; - RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; - RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; + //RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV10; //DIV10 = 4.8 MHZ + //RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV16; RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; RCC_ClkInitStruct.AHBCLK3Divider = RCC_SYSCLK_DIV1; diff --git a/Core/Src/stm32_lpm_if.c b/Core/Src/stm32_lpm_if.c index a4186b6..4a76b81 100644 --- a/Core/Src/stm32_lpm_if.c +++ b/Core/Src/stm32_lpm_if.c @@ -101,11 +101,20 @@ void PWR_ExitOffMode(void) void PWR_EnterStopMode(void) { /* USER CODE BEGIN EnterStopMode_1 */ - PME_OFF; +#if 0 + HAL_GPIO_WritePin(GPIOA, 0x65FF, GPIO_PIN_RESET); + HAL_GPIO_WritePin(GPIOB, 0xFEC3, GPIO_PIN_RESET); + HAL_GPIO_WritePin(GPIOC, 0xDFFF, GPIO_PIN_RESET); +#endif +#if 1 + HAL_UART_DeInit(&huart2); + vcom_DeInit(); + HAL_GPIO_WritePin(GPIOA, GPIO_PIN_All, GPIO_PIN_RESET); + HAL_GPIO_DeInit(GPIOB,GPIO_PIN_All); // NO rejoin issue + HAL_GPIO_WritePin(GPIOB, GPIO_PIN_All, GPIO_PIN_RESET); //no rejoin issue - HAL_GPIO_DeInit(GPIOA,GPIO_PIN_All); - HAL_GPIO_DeInit(GPIOB,GPIO_PIN_All); - HAL_GPIO_DeInit(GPIOC,GPIO_PIN_All); + HAL_GPIO_WritePin(GPIOC, GPIO_PIN_All, GPIO_PIN_RESET); //no rejoin issue +#endif /* USER CODE END EnterStopMode_1 */ HAL_SuspendTick(); /* Clear Status Flag before entering STOP/STANDBY Mode */ @@ -134,10 +143,12 @@ void PWR_ExitStopMode(void) /* Resume not retained USARTx and DMA */ MX_GPIO_Init(); +#if 0 PME_ON; MX_I2C2_Init(); MX_DMA_Init(); - vcom_Resume(); + // vcom_Resume(); +#endif /* USER CODE BEGIN ExitStopMode_2 */ /* USER CODE END ExitStopMode_2 */ diff --git a/Core/Src/stm32wlxx_it.c b/Core/Src/stm32wlxx_it.c index 69ff4b6..26e4203 100644 --- a/Core/Src/stm32wlxx_it.c +++ b/Core/Src/stm32wlxx_it.c @@ -58,14 +58,17 @@ extern RTC_HandleTypeDef hrtc; extern SUBGHZ_HandleTypeDef hsubghz; extern DMA_HandleTypeDef hdma_usart2_tx; +#if 0 extern DMA_HandleTypeDef hdma_usart2_rx; +#endif extern UART_HandleTypeDef huart2; /* USER CODE BEGIN EV */ extern DMA_HandleTypeDef hdma_i2c2_rx; extern DMA_HandleTypeDef hdma_i2c2_tx; +#if 0 extern DMA_HandleTypeDef hdma_usart2_tx; extern DMA_HandleTypeDef hdma_usart2_rx; - +#endif /* USER CODE END EV */ /******************************************************************************/ @@ -218,7 +221,7 @@ void TAMP_STAMP_LSECSS_SSRU_IRQHandler(void) /* USER CODE END TAMP_STAMP_LSECSS_SSRU_IRQn 1 */ } - +#if 0 /** * @brief This function handles EXTI Line 0 Interrupt. */ @@ -246,6 +249,7 @@ void EXTI1_IRQHandler(void) /* USER CODE END EXTI1_IRQn 1 */ } +#endif void EXTI3_IRQHandler(void) { @@ -260,7 +264,7 @@ void EXTI3_IRQHandler(void) /* USER CODE END EXTI3_IRQn 1 */ } - +#if 0 /** * @brief This function handles EXTI Line 1 Interrupt. */ @@ -274,7 +278,8 @@ void EXTI4_IRQHandler(void) /* USER CODE END EXTI1_IRQn 1 */ } - +#endif +#if 0 /* SPI1 */ /** * @brief This function handles DMA1 Channel 2 Interrupt. @@ -303,7 +308,7 @@ void DMA1_Channel3_IRQHandler(void) /* USER CODE END DMA1_Channel3_IRQn 1 */ } - +#endif /* I2C2 */ /** @@ -335,7 +340,7 @@ void DMA1_Channel5_IRQHandler(void) /* USER CODE END DMA1_Channel5_IRQn 1 */ } - +#if 0 // USART2 /** * @brief This function handles DMA1 Channel 6 Interrupt. @@ -364,7 +369,8 @@ void DMA1_Channel7_IRQHandler(void) /* USER CODE END DMA1_Channel7_IRQn 1 */ } - +#endif +#if 0 /** * @brief This function handles EXTI Lines [9:5] Interrupt. */ @@ -383,7 +389,8 @@ void EXTI9_5_IRQHandler(void) /* USER CODE END EXTI9_5_IRQn 1 */ } - +#endif +#if 0 /** * @brief This function handles EXTI Lines [15:10] Interrupt. */ @@ -401,7 +408,8 @@ void EXTI15_10_IRQHandler(void) /* USER CODE END EXTI15_10_IRQn 1 */ } - +#endif +#if 0 /** * @brief This function handles USART2 Interrupt. */ @@ -415,7 +423,7 @@ void USART2_IRQHandler(void) /* USER CODE END USART2_IRQn 1 */ } - +#endif /** * @brief This function handles RTC Alarms (A and B) Interrupt. */ diff --git a/Core/Src/sys_app.c b/Core/Src/sys_app.c index 8b99d65..a7cf10b 100644 --- a/Core/Src/sys_app.c +++ b/Core/Src/sys_app.c @@ -105,7 +105,7 @@ void SystemApp_Init(void) UTIL_TIMER_Init(); SYS_TimerInitialisedFlag = 1; /* Initializes the SW probes pins and the monitor RF pins via Alternate Function */ - DBG_Init(); + //DBG_Init(); /*Initialize the terminal */ UTIL_ADV_TRACE_Init(); @@ -121,7 +121,7 @@ void SystemApp_Init(void) SYS_InitMeasurement(); /*Initialize the Sensors */ - EnvSensors_Init(); + //EnvSensors_Init(); #if defined(L8) MX_TOF_Init(); #endif diff --git a/Core/Src/usart.c b/Core/Src/usart.c index 64cf905..ac3eaa1 100644 --- a/Core/Src/usart.c +++ b/Core/Src/usart.c @@ -26,8 +26,9 @@ UART_HandleTypeDef huart2; DMA_HandleTypeDef hdma_usart2_tx; +#if 0 DMA_HandleTypeDef hdma_usart2_rx; - +#endif /* USART2 init function */ void MX_USART2_UART_Init(void) @@ -63,10 +64,12 @@ void MX_USART2_UART_Init(void) { Error_Handler(); } +#if 0 if (HAL_UARTEx_SetRxFifoThreshold(&huart2, UART_RXFIFO_THRESHOLD_1_8) != HAL_OK) { Error_Handler(); } +#endif if (HAL_UARTEx_EnableFifoMode(&huart2) != HAL_OK) { Error_Handler(); @@ -105,16 +108,23 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle) PA3 ------> USART2_RX PA2 ------> USART2_TX */ - GPIO_InitStruct.Pin = USARTx_RX_Pin|USARTx_TX_Pin; + GPIO_InitStruct.Pin = USARTx_TX_Pin; //USARTx_RX_Pin|USARTx_TX_Pin; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.Alternate = GPIO_AF7_USART2; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + GPIO_InitStruct.Pin = USARTx_RX_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + //GPIO_InitStruct.Alternate = GPIO_AF7_USART2; + HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + /* USART2 DMA Init */ /* USART2_TX Init */ - hdma_usart2_tx.Instance = DMA1_Channel6; + hdma_usart2_tx.Instance = DMA1_Channel7; hdma_usart2_tx.Init.Request = DMA_REQUEST_USART2_TX; hdma_usart2_tx.Init.Direction = DMA_MEMORY_TO_PERIPH; hdma_usart2_tx.Init.PeriphInc = DMA_PINC_DISABLE; @@ -136,7 +146,7 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle) __HAL_LINKDMA(uartHandle,hdmatx,hdma_usart2_tx); #if 0 /* USART2_RX Init */ - hdma_usart2_rx.Instance = DMA1_Channel7; + hdma_usart2_rx.Instance = DMA1_Channel6; hdma_usart2_rx.Init.Request = DMA_REQUEST_USART2_RX; hdma_usart2_rx.Init.Direction = DMA_PERIPH_TO_MEMORY; hdma_usart2_rx.Init.PeriphInc = DMA_PINC_DISABLE; @@ -187,9 +197,9 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* uartHandle) /* USART2 DMA DeInit */ HAL_DMA_DeInit(uartHandle->hdmatx); - - //HAL_DMA_DeInit(uartHandle->hdmarx); - +#if 0 + HAL_DMA_DeInit(uartHandle->hdmarx); +#endif /* USART2 interrupt Deinit */ HAL_NVIC_DisableIRQ(USART2_IRQn); /* USER CODE BEGIN USART2_MspDeInit 1 */ diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 1475f1d..db15d1f 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -912,9 +912,15 @@ static void SendTxData(void) #ifdef VL53L0 //VL53L0 #if (defined(STS_R1)||defined(STS_R5)) - AppData.Buffer[i++] = 2; + AppData.Buffer[i++] = 6; AppData.Buffer[i++] = (uint8_t)(sts_rr_sensor_data.tof_1_distance_mm >>8 & 0xFF); AppData.Buffer[i++] = (uint8_t)(sts_rr_sensor_data.tof_1_distance_mm & 0xFF); + + AppData.Buffer[i++] = (uint8_t)(sts_rr_sensor_data.tof_1_distance_mm >>8 & 0xFF); + AppData.Buffer[i++] = (uint8_t)(sts_rr_sensor_data.tof_1_distance_mm & 0xFF); + AppData.Buffer[i++] = (uint8_t)(sts_rr_sensor_data.tof_2_distance_mm >>8 & 0xFF); + AppData.Buffer[i++] = (uint8_t)(sts_rr_sensor_data.tof_2_distance_mm & 0xFF); + #elif defined(STS_R1D) AppData.Buffer[i++] = 4; AppData.Buffer[i++] = (uint8_t)(sts_rr_sensor_data.tof_1_distance_mm >>8 & 0xFF); @@ -1111,10 +1117,9 @@ static void OnJoinRequest(LmHandlerJoinParams_t *joinParams) } AppData.Port = 1; AppData.BufferSize = 16; - //UTIL_MEM_cpy_8((uint8_t*)AppData.Buffer, (uint8_t *)"YUNHORN168", 10); - UTIL_MEM_cpy_8((uint8_t*)AppData.Buffer, (uint8_t *)(uint8_t*)YUNHORN_STS_PRD_STRING, sizeof(YUNHORN_STS_PRD_STRING)); - AppData.BufferSize = sizeof(YUNHORN_STS_PRD_STRING)-1; - LmHandlerParams.IsTxConfirmed = LORAMAC_HANDLER_CONFIRMED_MSG; + UTIL_MEM_cpy_8((uint8_t*)AppData.Buffer, (uint8_t*)YUNHORN_STS_PRD_STRING, sizeof(YUNHORN_STS_PRD_STRING)); + AppData.BufferSize = (sizeof(YUNHORN_STS_PRD_STRING)-1); + LmHandlerParams.IsTxConfirmed = true; LmHandlerErrorStatus_t status = LmHandlerSend(&AppData, LmHandlerParams.IsTxConfirmed, false); if (status ==LORAMAC_HANDLER_SUCCESS ) LmHandlerParams.IsTxConfirmed = LORAMAC_HANDLER_UNCONFIRMED_MSG; } diff --git a/LoRaWAN/App/lora_app.h b/LoRaWAN/App/lora_app.h index ae4a403..2af99ea 100644 --- a/LoRaWAN/App/lora_app.h +++ b/LoRaWAN/App/lora_app.h @@ -85,7 +85,7 @@ extern "C" { * LoRaWAN Default Data Rate * @note Please note that LORAWAN_DEFAULT_DATA_RATE is used only when LORAWAN_ADR_STATE is disabled */ -#define LORAWAN_DEFAULT_DATA_RATE DR_0 +#define LORAWAN_DEFAULT_DATA_RATE DR_2 /*! * LoRaWAN Default Tx output power diff --git a/LoRaWAN/Target/lorawan_conf.h b/LoRaWAN/Target/lorawan_conf.h index 7d231b6..31b262b 100644 --- a/LoRaWAN/Target/lorawan_conf.h +++ b/LoRaWAN/Target/lorawan_conf.h @@ -58,8 +58,8 @@ extern "C" { * - 0x01000400: Link Layer TS001-1.0.4 + Regional Parameters RP002-1.0.1 * - 0x01010100: soon available ... */ -//#define LORAMAC_SPECIFICATION_VERSION 0x01000400 -#define LORAMAC_SPECIFICATION_VERSION 0x01010100 +#define LORAMAC_SPECIFICATION_VERSION 0x01010100 + /*! * @brief Enable the additional LoRaWAN packages * @note LoRaWAN Packages available when enabled: diff --git a/STM32CubeIDE/.cproject b/STM32CubeIDE/.cproject index bb541aa..5ed4181 100644 --- a/STM32CubeIDE/.cproject +++ b/STM32CubeIDE/.cproject @@ -22,6 +22,7 @@