├── CHANGELOG.md
├── README.md
├── apps
├── common
│ ├── apps_modem_common.c
│ ├── apps_modem_common.h
│ ├── apps_modem_common.mk
│ ├── apps_modem_event.c
│ ├── apps_modem_event.h
│ ├── apps_utilities.c
│ ├── apps_utilities.h
│ └── lorawan_key_config.h
└── tracker_application
│ ├── bin
│ ├── BLE_Ota.bin
│ ├── BLE_Ota.hex
│ ├── manifest.json
│ ├── tracker_application.bin
│ ├── tracker_application_as923_grp1.bin
│ ├── tracker_application_as923_grp2.bin
│ ├── tracker_application_as923_grp3.bin
│ ├── tracker_application_au915.bin
│ ├── tracker_application_autonomous.bin
│ ├── tracker_application_autonomous_as923_grp1.bin
│ ├── tracker_application_autonomous_as923_grp2.bin
│ ├── tracker_application_autonomous_as923_grp3.bin
│ ├── tracker_application_autonomous_au915.bin
│ ├── tracker_application_autonomous_eu868.bin
│ ├── tracker_application_autonomous_in865.bin
│ ├── tracker_application_autonomous_japan.bin
│ ├── tracker_application_autonomous_kr920.bin
│ ├── tracker_application_autonomous_us915.bin
│ ├── tracker_application_eu868.bin
│ ├── tracker_application_in865.bin
│ ├── tracker_application_japan.bin
│ ├── tracker_application_kr920.bin
│ ├── tracker_application_ru864.bin
│ └── tracker_application_us915.bin
│ ├── doc
│ ├── apps.uart_firmware_update.md
│ ├── doxyfile
│ └── img
│ │ ├── StartScanA.png
│ │ ├── StartScanIos.png
│ │ ├── TrackDiscA.png
│ │ ├── TrackDiscI.png
│ │ ├── TrackerDetectApp.png
│ │ ├── Tracker_ble.png
│ │ ├── apps.Tracker.statemachine.png
│ │ └── migration.png
│ ├── lr1110_firmware_update.py
│ ├── main_tracker_application.h
│ ├── main_tracker_application_autonomous.c
│ ├── main_tracker_update_lr1110.c
│ ├── makefile
│ ├── Makefile
│ ├── run_coverity.sh
│ └── stm32wb55xx_flash_cm4.ld
│ ├── middleware
│ └── ble
│ │ ├── STM32_WPAN
│ │ ├── ble
│ │ │ ├── ble.h
│ │ │ ├── ble_common.h
│ │ │ ├── core
│ │ │ │ ├── auto
│ │ │ │ │ ├── ble_events.c
│ │ │ │ │ ├── ble_events.h
│ │ │ │ │ ├── ble_gap_aci.c
│ │ │ │ │ ├── ble_gap_aci.h
│ │ │ │ │ ├── ble_gatt_aci.c
│ │ │ │ │ ├── ble_gatt_aci.h
│ │ │ │ │ ├── ble_hal_aci.c
│ │ │ │ │ ├── ble_hal_aci.h
│ │ │ │ │ ├── ble_hci_le.c
│ │ │ │ │ ├── ble_hci_le.h
│ │ │ │ │ ├── ble_l2cap_aci.c
│ │ │ │ │ ├── ble_l2cap_aci.h
│ │ │ │ │ └── ble_types.h
│ │ │ │ ├── ble_bufsize.h
│ │ │ │ ├── ble_core.h
│ │ │ │ ├── ble_defs.h
│ │ │ │ ├── ble_legacy.h
│ │ │ │ ├── ble_std.h
│ │ │ │ └── template
│ │ │ │ │ ├── ble_const.h
│ │ │ │ │ ├── compiler.h
│ │ │ │ │ ├── osal.c
│ │ │ │ │ └── osal.h
│ │ │ └── svc
│ │ │ │ ├── Inc
│ │ │ │ ├── bls.h
│ │ │ │ ├── bvopus_service_stm.h
│ │ │ │ ├── crs_stm.h
│ │ │ │ ├── dis.h
│ │ │ │ ├── eds_stm.h
│ │ │ │ ├── hids.h
│ │ │ │ ├── hrs.h
│ │ │ │ ├── hts.h
│ │ │ │ ├── ias.h
│ │ │ │ ├── lls.h
│ │ │ │ ├── mesh.h
│ │ │ │ ├── motenv_stm.h
│ │ │ │ ├── opus_interface_stm.h
│ │ │ │ ├── otas_stm.h
│ │ │ │ ├── p2p_stm.h
│ │ │ │ ├── svc_ctl.h
│ │ │ │ ├── template_stm.h
│ │ │ │ ├── tps.h
│ │ │ │ └── uuid.h
│ │ │ │ └── Src
│ │ │ │ ├── bls.c
│ │ │ │ ├── bvopus_service_stm.c
│ │ │ │ ├── common_blesvc.h
│ │ │ │ ├── crs_stm.c
│ │ │ │ ├── dis.c
│ │ │ │ ├── eds_stm.c
│ │ │ │ ├── hids.c
│ │ │ │ ├── hrs.c
│ │ │ │ ├── hts.c
│ │ │ │ ├── ias.c
│ │ │ │ ├── lls.c
│ │ │ │ ├── mesh.c
│ │ │ │ ├── motenv_stm.c
│ │ │ │ ├── opus_interface_stm.c
│ │ │ │ ├── otas_stm.c
│ │ │ │ ├── p2p_stm.c
│ │ │ │ ├── svc_ctl.c
│ │ │ │ ├── template_stm.c
│ │ │ │ └── tps.c
│ │ ├── interface
│ │ │ └── patterns
│ │ │ │ └── ble_thread
│ │ │ │ ├── hw.h
│ │ │ │ ├── shci
│ │ │ │ ├── shci.c
│ │ │ │ └── shci.h
│ │ │ │ └── tl
│ │ │ │ ├── hci_tl.c
│ │ │ │ ├── hci_tl.h
│ │ │ │ ├── hci_tl_if.c
│ │ │ │ ├── mbox_def.h
│ │ │ │ ├── shci_tl.c
│ │ │ │ ├── shci_tl.h
│ │ │ │ ├── shci_tl_if.c
│ │ │ │ ├── tl.h
│ │ │ │ ├── tl_mac_802_15_4.h
│ │ │ │ ├── tl_mbox.c
│ │ │ │ ├── tl_thread_hci.c
│ │ │ │ ├── tl_thread_hci.h
│ │ │ │ ├── tl_zigbee_hci.c
│ │ │ │ └── tl_zigbee_hci.h
│ │ ├── stm32_wpan_common.h
│ │ └── utilities
│ │ │ ├── dbg_trace.c
│ │ │ ├── dbg_trace.h
│ │ │ ├── otp.c
│ │ │ ├── otp.h
│ │ │ ├── stm_list.c
│ │ │ ├── stm_list.h
│ │ │ ├── stm_queue.c
│ │ │ ├── stm_queue.h
│ │ │ └── utilities_common.h
│ │ ├── app
│ │ ├── app_ble.c
│ │ ├── app_ble.h
│ │ ├── ble_conf.h
│ │ ├── ble_dbg_conf.h
│ │ ├── ble_thread.c
│ │ ├── ble_thread.h
│ │ ├── p2p_server_app.c
│ │ └── p2p_server_app.h
│ │ ├── app_common.h
│ │ ├── app_conf.h
│ │ ├── app_debug.c
│ │ ├── app_debug.h
│ │ ├── app_entry.c
│ │ ├── app_entry.h
│ │ ├── hw_conf.h
│ │ ├── hw_if.h
│ │ ├── hw_timerserver.c
│ │ ├── lpm
│ │ └── tiny_lpm
│ │ │ ├── stm32_lpm.c
│ │ │ └── stm32_lpm.h
│ │ ├── sequencer
│ │ ├── stm32_seq.c
│ │ └── stm32_seq.h
│ │ ├── stack_binary
│ │ ├── README.md
│ │ ├── stm32wb5x_BLE_Stack_full_fw.bin
│ │ ├── stm32wb5x_FUS_fw.bin
│ │ └── stm32wb5x_FUS_fw_for_fus_0_5_3.bin
│ │ ├── stm32_lpm_if.c
│ │ ├── stm32_lpm_if.h
│ │ ├── target
│ │ └── hw_ipcc.c
│ │ └── utilities_conf.h
│ └── tracker_utility
│ ├── tracker_utility.c
│ └── tracker_utility.h
├── board
├── LR1110TRK1xKS
│ ├── BSP
│ │ ├── board
│ │ │ ├── lr1110_trk1xks_board.c
│ │ │ ├── lr1110_trk1xks_board.h
│ │ │ └── modem_pinout.h
│ │ ├── geolocation_bsp
│ │ │ └── geolocation_bsp.c
│ │ ├── peripherals
│ │ │ ├── Leds
│ │ │ │ ├── leds.c
│ │ │ │ └── leds.h
│ │ │ ├── hall_effect
│ │ │ │ ├── hall_effect.c
│ │ │ │ └── hall_effect.h
│ │ │ ├── lis2de12
│ │ │ │ ├── lis2de12.c
│ │ │ │ └── lis2de12.h
│ │ │ └── usr_button
│ │ │ │ ├── usr_button.c
│ │ │ │ └── usr_button.h
│ │ └── ral_bsp
│ │ │ └── ral_lr11xx_bsp.c
│ └── lr1110_trk1xks.mk
├── interface
│ ├── smtc_board.h
│ └── smtc_board_ralf.h
├── radio_drivers_hal
│ ├── lr11xx_hal.c
│ └── lr11xx_hal_context.h
└── smtc_lr11xx_board
│ └── smtc_lr11xx_board.h
├── host_driver
└── STM32WBxx
│ ├── Drivers
│ ├── CMSIS
│ │ ├── Device
│ │ │ └── ST
│ │ │ │ └── STM32WBxx
│ │ │ │ ├── Include
│ │ │ │ ├── stm32wb30xx.h
│ │ │ │ ├── stm32wb35xx.h
│ │ │ │ ├── stm32wb50xx.h
│ │ │ │ ├── stm32wb55xx.h
│ │ │ │ ├── stm32wb5mxx.h
│ │ │ │ ├── stm32wbxx.h
│ │ │ │ └── system_stm32wbxx.h
│ │ │ │ ├── Release_Notes.html
│ │ │ │ └── Source
│ │ │ │ └── Templates
│ │ │ │ ├── arm
│ │ │ │ ├── linker
│ │ │ │ │ ├── stm32wb30xx_flash_cm4.sct
│ │ │ │ │ ├── stm32wb35xx_flash_cm4.sct
│ │ │ │ │ ├── stm32wb50xx_flash_cm4.sct
│ │ │ │ │ ├── stm32wb55xx_flash_cm4.sct
│ │ │ │ │ └── stm32wb5mxx_flash_cm4.sct
│ │ │ │ ├── startup_stm32wb30xx_cm4.s
│ │ │ │ ├── startup_stm32wb35xx_cm4.s
│ │ │ │ ├── startup_stm32wb50xx_cm4.s
│ │ │ │ ├── startup_stm32wb55xx_cm4.s
│ │ │ │ └── startup_stm32wb5mxx_cm4.s
│ │ │ │ ├── gcc
│ │ │ │ ├── linker
│ │ │ │ │ ├── stm32wb30xx_flash_cm4.ld
│ │ │ │ │ ├── stm32wb35xx_flash_cm4.ld
│ │ │ │ │ ├── stm32wb50xx_flash_cm4.ld
│ │ │ │ │ ├── stm32wb55xx_flash_cm4.ld
│ │ │ │ │ └── stm32wb5mxx_flash_cm4.ld
│ │ │ │ ├── startup_stm32wb30xx_cm4.s
│ │ │ │ ├── startup_stm32wb35xx_cm4.s
│ │ │ │ ├── startup_stm32wb50xx_cm4.s
│ │ │ │ ├── startup_stm32wb55xx_cm4.s
│ │ │ │ └── startup_stm32wb5mxx_cm4.s
│ │ │ │ ├── iar
│ │ │ │ ├── linker
│ │ │ │ │ ├── stm32wb30xx_flash_cm4.icf
│ │ │ │ │ ├── stm32wb30xx_sram_cm4.icf
│ │ │ │ │ ├── stm32wb35xx_flash_cm4.icf
│ │ │ │ │ ├── stm32wb35xx_sram_cm4.icf
│ │ │ │ │ ├── stm32wb50xx_flash_cm4.icf
│ │ │ │ │ ├── stm32wb50xx_sram_cm4.icf
│ │ │ │ │ ├── stm32wb55xx_flash_cm4.icf
│ │ │ │ │ ├── stm32wb55xx_sram_cm4.icf
│ │ │ │ │ ├── stm32wb5mxx_flash_cm4.icf
│ │ │ │ │ └── stm32wb5mxx_sram_cm4.icf
│ │ │ │ ├── startup_stm32wb30xx_cm4.s
│ │ │ │ ├── startup_stm32wb35xx_cm4.s
│ │ │ │ ├── startup_stm32wb50xx_cm4.s
│ │ │ │ ├── startup_stm32wb55xx_cm4.s
│ │ │ │ └── startup_stm32wb5mxx_cm4.s
│ │ │ │ └── system_stm32wbxx.c
│ │ ├── Include
│ │ │ ├── cmsis_armcc.h
│ │ │ ├── cmsis_armclang.h
│ │ │ ├── cmsis_compiler.h
│ │ │ ├── cmsis_gcc.h
│ │ │ ├── cmsis_iccarm.h
│ │ │ ├── cmsis_version.h
│ │ │ ├── core_armv8mbl.h
│ │ │ ├── core_armv8mml.h
│ │ │ ├── core_cm0.h
│ │ │ ├── core_cm0plus.h
│ │ │ ├── core_cm1.h
│ │ │ ├── core_cm23.h
│ │ │ ├── core_cm3.h
│ │ │ ├── core_cm33.h
│ │ │ ├── core_cm4.h
│ │ │ ├── core_cm7.h
│ │ │ ├── core_sc000.h
│ │ │ ├── core_sc300.h
│ │ │ ├── mpu_armv7.h
│ │ │ ├── mpu_armv8.h
│ │ │ └── tz_context.h
│ │ ├── LICENSE.txt
│ │ └── README.md
│ └── STM32WBxx_HAL_Driver
│ │ ├── Inc
│ │ ├── Legacy
│ │ │ └── stm32_hal_legacy.h
│ │ ├── stm32_assert_template.h
│ │ ├── stm32wbxx_hal.h
│ │ ├── stm32wbxx_hal_adc.h
│ │ ├── stm32wbxx_hal_adc_ex.h
│ │ ├── stm32wbxx_hal_comp.h
│ │ ├── stm32wbxx_hal_conf_template.h
│ │ ├── stm32wbxx_hal_cortex.h
│ │ ├── stm32wbxx_hal_crc.h
│ │ ├── stm32wbxx_hal_crc_ex.h
│ │ ├── stm32wbxx_hal_cryp.h
│ │ ├── stm32wbxx_hal_cryp_ex.h
│ │ ├── stm32wbxx_hal_def.h
│ │ ├── stm32wbxx_hal_dma.h
│ │ ├── stm32wbxx_hal_dma_ex.h
│ │ ├── stm32wbxx_hal_exti.h
│ │ ├── stm32wbxx_hal_flash.h
│ │ ├── stm32wbxx_hal_flash_ex.h
│ │ ├── stm32wbxx_hal_gpio.h
│ │ ├── stm32wbxx_hal_gpio_ex.h
│ │ ├── stm32wbxx_hal_hsem.h
│ │ ├── stm32wbxx_hal_i2c.h
│ │ ├── stm32wbxx_hal_i2c_ex.h
│ │ ├── stm32wbxx_hal_ipcc.h
│ │ ├── stm32wbxx_hal_irda.h
│ │ ├── stm32wbxx_hal_irda_ex.h
│ │ ├── stm32wbxx_hal_iwdg.h
│ │ ├── stm32wbxx_hal_lcd.h
│ │ ├── stm32wbxx_hal_lptim.h
│ │ ├── stm32wbxx_hal_pcd.h
│ │ ├── stm32wbxx_hal_pcd_ex.h
│ │ ├── stm32wbxx_hal_pka.h
│ │ ├── stm32wbxx_hal_pwr.h
│ │ ├── stm32wbxx_hal_pwr_ex.h
│ │ ├── stm32wbxx_hal_qspi.h
│ │ ├── stm32wbxx_hal_rcc.h
│ │ ├── stm32wbxx_hal_rcc_ex.h
│ │ ├── stm32wbxx_hal_rng.h
│ │ ├── stm32wbxx_hal_rtc.h
│ │ ├── stm32wbxx_hal_rtc_ex.h
│ │ ├── stm32wbxx_hal_sai.h
│ │ ├── stm32wbxx_hal_sai_ex.h
│ │ ├── stm32wbxx_hal_smartcard.h
│ │ ├── stm32wbxx_hal_smartcard_ex.h
│ │ ├── stm32wbxx_hal_smbus.h
│ │ ├── stm32wbxx_hal_spi.h
│ │ ├── stm32wbxx_hal_spi_ex.h
│ │ ├── stm32wbxx_hal_tim.h
│ │ ├── stm32wbxx_hal_tim_ex.h
│ │ ├── stm32wbxx_hal_tsc.h
│ │ ├── stm32wbxx_hal_uart.h
│ │ ├── stm32wbxx_hal_uart_ex.h
│ │ ├── stm32wbxx_hal_usart.h
│ │ ├── stm32wbxx_hal_usart_ex.h
│ │ ├── stm32wbxx_hal_wwdg.h
│ │ ├── stm32wbxx_ll_adc.h
│ │ ├── stm32wbxx_ll_bus.h
│ │ ├── stm32wbxx_ll_comp.h
│ │ ├── stm32wbxx_ll_cortex.h
│ │ ├── stm32wbxx_ll_crc.h
│ │ ├── stm32wbxx_ll_crs.h
│ │ ├── stm32wbxx_ll_dma.h
│ │ ├── stm32wbxx_ll_dmamux.h
│ │ ├── stm32wbxx_ll_exti.h
│ │ ├── stm32wbxx_ll_gpio.h
│ │ ├── stm32wbxx_ll_hsem.h
│ │ ├── stm32wbxx_ll_i2c.h
│ │ ├── stm32wbxx_ll_ipcc.h
│ │ ├── stm32wbxx_ll_iwdg.h
│ │ ├── stm32wbxx_ll_lptim.h
│ │ ├── stm32wbxx_ll_lpuart.h
│ │ ├── stm32wbxx_ll_pka.h
│ │ ├── stm32wbxx_ll_pwr.h
│ │ ├── stm32wbxx_ll_rcc.h
│ │ ├── stm32wbxx_ll_rng.h
│ │ ├── stm32wbxx_ll_rtc.h
│ │ ├── stm32wbxx_ll_spi.h
│ │ ├── stm32wbxx_ll_system.h
│ │ ├── stm32wbxx_ll_tim.h
│ │ ├── stm32wbxx_ll_usart.h
│ │ ├── stm32wbxx_ll_usb.h
│ │ ├── stm32wbxx_ll_utils.h
│ │ └── stm32wbxx_ll_wwdg.h
│ │ ├── License.md
│ │ ├── README.md
│ │ ├── Release_Notes.html
│ │ └── Src
│ │ ├── stm32wbxx_hal.c
│ │ ├── stm32wbxx_hal_adc.c
│ │ ├── stm32wbxx_hal_adc_ex.c
│ │ ├── stm32wbxx_hal_comp.c
│ │ ├── stm32wbxx_hal_cortex.c
│ │ ├── stm32wbxx_hal_crc.c
│ │ ├── stm32wbxx_hal_crc_ex.c
│ │ ├── stm32wbxx_hal_cryp.c
│ │ ├── stm32wbxx_hal_cryp_ex.c
│ │ ├── stm32wbxx_hal_dma.c
│ │ ├── stm32wbxx_hal_dma_ex.c
│ │ ├── stm32wbxx_hal_exti.c
│ │ ├── stm32wbxx_hal_flash.c
│ │ ├── stm32wbxx_hal_flash_ex.c
│ │ ├── stm32wbxx_hal_gpio.c
│ │ ├── stm32wbxx_hal_hsem.c
│ │ ├── stm32wbxx_hal_i2c.c
│ │ ├── stm32wbxx_hal_i2c_ex.c
│ │ ├── stm32wbxx_hal_ipcc.c
│ │ ├── stm32wbxx_hal_irda.c
│ │ ├── stm32wbxx_hal_iwdg.c
│ │ ├── stm32wbxx_hal_lcd.c
│ │ ├── stm32wbxx_hal_lptim.c
│ │ ├── stm32wbxx_hal_msp_template.c
│ │ ├── stm32wbxx_hal_pcd.c
│ │ ├── stm32wbxx_hal_pcd_ex.c
│ │ ├── stm32wbxx_hal_pka.c
│ │ ├── stm32wbxx_hal_pwr.c
│ │ ├── stm32wbxx_hal_pwr_ex.c
│ │ ├── stm32wbxx_hal_qspi.c
│ │ ├── stm32wbxx_hal_rcc.c
│ │ ├── stm32wbxx_hal_rcc_ex.c
│ │ ├── stm32wbxx_hal_rng.c
│ │ ├── stm32wbxx_hal_rtc.c
│ │ ├── stm32wbxx_hal_rtc_ex.c
│ │ ├── stm32wbxx_hal_sai.c
│ │ ├── stm32wbxx_hal_sai_ex.c
│ │ ├── stm32wbxx_hal_smartcard.c
│ │ ├── stm32wbxx_hal_smartcard_ex.c
│ │ ├── stm32wbxx_hal_smbus.c
│ │ ├── stm32wbxx_hal_spi.c
│ │ ├── stm32wbxx_hal_spi_ex.c
│ │ ├── stm32wbxx_hal_tim.c
│ │ ├── stm32wbxx_hal_tim_ex.c
│ │ ├── stm32wbxx_hal_timebase_rtc_alarm_template.c
│ │ ├── stm32wbxx_hal_timebase_rtc_wakeup_template.c
│ │ ├── stm32wbxx_hal_timebase_tim_template.c
│ │ ├── stm32wbxx_hal_tsc.c
│ │ ├── stm32wbxx_hal_uart.c
│ │ ├── stm32wbxx_hal_uart_ex.c
│ │ ├── stm32wbxx_hal_usart.c
│ │ ├── stm32wbxx_hal_usart_ex.c
│ │ ├── stm32wbxx_hal_wwdg.c
│ │ ├── stm32wbxx_ll_adc.c
│ │ ├── stm32wbxx_ll_comp.c
│ │ ├── stm32wbxx_ll_crc.c
│ │ ├── stm32wbxx_ll_crs.c
│ │ ├── stm32wbxx_ll_dma.c
│ │ ├── stm32wbxx_ll_exti.c
│ │ ├── stm32wbxx_ll_gpio.c
│ │ ├── stm32wbxx_ll_i2c.c
│ │ ├── stm32wbxx_ll_lptim.c
│ │ ├── stm32wbxx_ll_lpuart.c
│ │ ├── stm32wbxx_ll_pka.c
│ │ ├── stm32wbxx_ll_pwr.c
│ │ ├── stm32wbxx_ll_rcc.c
│ │ ├── stm32wbxx_ll_rng.c
│ │ ├── stm32wbxx_ll_rtc.c
│ │ ├── stm32wbxx_ll_spi.c
│ │ ├── stm32wbxx_ll_tim.c
│ │ ├── stm32wbxx_ll_usart.c
│ │ ├── stm32wbxx_ll_usb.c
│ │ └── stm32wbxx_ll_utils.c
│ ├── License.md
│ ├── Middlewares
│ └── ST
│ │ └── STM32_WPAN
│ │ ├── Release_Notes.html
│ │ ├── ble
│ │ ├── ble.h
│ │ ├── ble_common.h
│ │ ├── core
│ │ │ ├── auto
│ │ │ │ ├── ble_events.c
│ │ │ │ ├── ble_events.h
│ │ │ │ ├── ble_gap_aci.c
│ │ │ │ ├── ble_gap_aci.h
│ │ │ │ ├── ble_gatt_aci.c
│ │ │ │ ├── ble_gatt_aci.h
│ │ │ │ ├── ble_hal_aci.c
│ │ │ │ ├── ble_hal_aci.h
│ │ │ │ ├── ble_hci_le.c
│ │ │ │ ├── ble_hci_le.h
│ │ │ │ ├── ble_l2cap_aci.c
│ │ │ │ ├── ble_l2cap_aci.h
│ │ │ │ └── ble_types.h
│ │ │ ├── ble_bufsize.h
│ │ │ ├── ble_core.h
│ │ │ ├── ble_defs.h
│ │ │ ├── ble_legacy.h
│ │ │ ├── ble_std.h
│ │ │ ├── doc
│ │ │ │ └── STM32WB_BLE_Wireless_Interface.html
│ │ │ └── template
│ │ │ │ ├── ble_const.h
│ │ │ │ ├── compiler.h
│ │ │ │ ├── osal.c
│ │ │ │ └── osal.h
│ │ ├── cryptographic
│ │ │ ├── Inc
│ │ │ │ ├── AES
│ │ │ │ │ ├── CBC
│ │ │ │ │ │ └── aes_cbc.h
│ │ │ │ │ ├── CCM
│ │ │ │ │ │ └── aes_ccm.h
│ │ │ │ │ ├── CFB
│ │ │ │ │ │ └── aes_cfb.h
│ │ │ │ │ ├── CMAC
│ │ │ │ │ │ └── aes_cmac.h
│ │ │ │ │ ├── CTR
│ │ │ │ │ │ └── aes_ctr.h
│ │ │ │ │ ├── Common
│ │ │ │ │ │ ├── aes_common.h
│ │ │ │ │ │ └── aes_low_level.h
│ │ │ │ │ ├── ECB
│ │ │ │ │ │ └── aes_ecb.h
│ │ │ │ │ ├── GCM
│ │ │ │ │ │ └── aes_gcm.h
│ │ │ │ │ ├── KEYWRAP
│ │ │ │ │ │ └── aes_keywrap.h
│ │ │ │ │ ├── OFB
│ │ │ │ │ │ └── aes_ofb.h
│ │ │ │ │ ├── XTS
│ │ │ │ │ │ └── aes_xts.h
│ │ │ │ │ └── aes.h
│ │ │ │ ├── ARC4
│ │ │ │ │ └── arc4.h
│ │ │ │ ├── C25519
│ │ │ │ │ └── c25519.h
│ │ │ │ ├── CHACHA
│ │ │ │ │ └── chacha.h
│ │ │ │ ├── CHACHA20-POLY1305
│ │ │ │ │ └── chacha20-poly1305.h
│ │ │ │ ├── Common
│ │ │ │ │ ├── err_codes.h
│ │ │ │ │ ├── macros.h
│ │ │ │ │ ├── sk.h
│ │ │ │ │ └── types.h
│ │ │ │ ├── Common_chacha20_poly1305
│ │ │ │ │ ├── chacha20_core.h
│ │ │ │ │ └── poly1305_core.h
│ │ │ │ ├── Common_ecc_rsa
│ │ │ │ │ └── MATH
│ │ │ │ │ │ ├── BN
│ │ │ │ │ │ ├── arith.h
│ │ │ │ │ │ ├── bn.h
│ │ │ │ │ │ ├── conv.h
│ │ │ │ │ │ ├── modular.h
│ │ │ │ │ │ ├── monty.h
│ │ │ │ │ │ └── rng_bn.h
│ │ │ │ │ │ └── math.h
│ │ │ │ ├── Common_ed25519_c25519
│ │ │ │ │ └── internals
│ │ │ │ │ │ └── fe25519.h
│ │ │ │ ├── DES
│ │ │ │ │ ├── CBC
│ │ │ │ │ │ └── des_cbc.h
│ │ │ │ │ ├── Common
│ │ │ │ │ │ └── des_common.h
│ │ │ │ │ ├── ECB
│ │ │ │ │ │ └── des_ecb.h
│ │ │ │ │ └── des.h
│ │ │ │ ├── ECC
│ │ │ │ │ ├── LowLevel
│ │ │ │ │ │ └── elliptic.h
│ │ │ │ │ └── ecc.h
│ │ │ │ ├── ED25519
│ │ │ │ │ ├── ed25519.h
│ │ │ │ │ └── internals
│ │ │ │ │ │ ├── ge25519.h
│ │ │ │ │ │ └── sc25519.h
│ │ │ │ ├── HASH
│ │ │ │ │ ├── Common
│ │ │ │ │ │ ├── hash_common.h
│ │ │ │ │ │ ├── sha256_sha224_transform.h
│ │ │ │ │ │ └── sha512_sha384_transform.h
│ │ │ │ │ ├── MD5
│ │ │ │ │ │ ├── hmac_md5.h
│ │ │ │ │ │ ├── md5.h
│ │ │ │ │ │ └── md5_low_level.h
│ │ │ │ │ ├── SHA1
│ │ │ │ │ │ ├── hmac_sha1.h
│ │ │ │ │ │ ├── sha1.h
│ │ │ │ │ │ └── sha1_low_level.h
│ │ │ │ │ ├── SHA224
│ │ │ │ │ │ ├── hmac_sha224.h
│ │ │ │ │ │ ├── sha224.h
│ │ │ │ │ │ └── sha224_low_level.h
│ │ │ │ │ ├── SHA256
│ │ │ │ │ │ ├── hmac_sha256.h
│ │ │ │ │ │ ├── sha256.h
│ │ │ │ │ │ └── sha256_low_level.h
│ │ │ │ │ ├── SHA384
│ │ │ │ │ │ ├── hmac_sha384.h
│ │ │ │ │ │ ├── sha384.h
│ │ │ │ │ │ └── sha384_low_level.h
│ │ │ │ │ ├── SHA512
│ │ │ │ │ │ ├── hkdf512.h
│ │ │ │ │ │ ├── hmac_sha512.h
│ │ │ │ │ │ ├── sha512.h
│ │ │ │ │ │ └── sha512_low_level.h
│ │ │ │ │ └── hash.h
│ │ │ │ ├── POLY1305
│ │ │ │ │ └── poly1305.h
│ │ │ │ ├── RNG
│ │ │ │ │ ├── DRBG_AES128
│ │ │ │ │ │ └── drbg.h
│ │ │ │ │ └── rng.h
│ │ │ │ ├── RSA
│ │ │ │ │ ├── LowLevel
│ │ │ │ │ │ └── rsa_low_level.h
│ │ │ │ │ ├── PKCS#1v15
│ │ │ │ │ │ └── rsa_pkcs1v15.h
│ │ │ │ │ └── rsa.h
│ │ │ │ ├── TDES
│ │ │ │ │ ├── CBC
│ │ │ │ │ │ └── tdes_cbc.h
│ │ │ │ │ ├── Common
│ │ │ │ │ │ └── tdes_common.h
│ │ │ │ │ ├── ECB
│ │ │ │ │ │ └── tdes_ecb.h
│ │ │ │ │ └── tdes.h
│ │ │ │ ├── config.h
│ │ │ │ └── crypto.h
│ │ │ └── Lib
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_GCC.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_GCC_fpu.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_GCC_ot.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_GCC_ot_fpu.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_IARv8.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_IARv8_fpu.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_IARv8_otnsc.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_IARv8_otnsc_fpu.a
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_KEIL_1elfspf.lib
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_KEIL_1elfspf_fpu.lib
│ │ │ │ ├── STM32CryptographicV3.1.3_CM4_KEIL_ot1elfspf.lib
│ │ │ │ └── STM32CryptographicV3.1.3_CM4_KEIL_ot1elfspf_fpu.lib
│ │ ├── menu
│ │ │ ├── DispTools.c
│ │ │ ├── DispTools.h
│ │ │ ├── hids_menu.c
│ │ │ ├── hids_menu.h
│ │ │ └── hids_mouse_menu.c
│ │ ├── mesh
│ │ │ ├── Inc
│ │ │ │ ├── appli_test.h
│ │ │ │ ├── ble_clock.h
│ │ │ │ ├── ble_mesh.h
│ │ │ │ ├── pal_if.h
│ │ │ │ ├── pal_nvm.h
│ │ │ │ ├── serial_ctrl.h
│ │ │ │ ├── serial_if.h
│ │ │ │ ├── serial_prvn.h
│ │ │ │ ├── serial_ut.h
│ │ │ │ └── types.h
│ │ │ ├── Library
│ │ │ │ ├── libBle_Mesh_CM4_GCC.a
│ │ │ │ ├── libBle_Mesh_CM4_GCC_DEBUG.a
│ │ │ │ ├── libBle_Mesh_CM4_IAR.a
│ │ │ │ ├── libBle_Mesh_CM4_IAR_DEBUG.a
│ │ │ │ ├── libBle_Mesh_CM4_Keil.lib
│ │ │ │ ├── libBle_Mesh_CM4_Keil_DEBUG.lib
│ │ │ │ └── nofile.txt
│ │ │ ├── MeshModel
│ │ │ │ ├── Inc
│ │ │ │ │ ├── common.h
│ │ │ │ │ ├── config_client.h
│ │ │ │ │ ├── generic.h
│ │ │ │ │ ├── generic_client.h
│ │ │ │ │ ├── light.h
│ │ │ │ │ ├── light_client.h
│ │ │ │ │ ├── light_lc.h
│ │ │ │ │ ├── sensors.h
│ │ │ │ │ ├── time_scene.h
│ │ │ │ │ └── vendor.h
│ │ │ │ └── Src
│ │ │ │ │ ├── common.c
│ │ │ │ │ ├── config_client.c
│ │ │ │ │ ├── generic.c
│ │ │ │ │ ├── generic_client.c
│ │ │ │ │ ├── light.c
│ │ │ │ │ ├── light_client.c
│ │ │ │ │ ├── light_lc.c
│ │ │ │ │ ├── sensors.c
│ │ │ │ │ ├── time_scene.c
│ │ │ │ │ └── vendor.c
│ │ │ ├── PAL
│ │ │ │ └── STM32WB
│ │ │ │ │ └── pal_nvm.c
│ │ │ └── Src
│ │ │ │ ├── appli_test.c
│ │ │ │ ├── mesh_cfg.c
│ │ │ │ ├── serial_ctrl.c
│ │ │ │ ├── serial_if.c
│ │ │ │ ├── serial_prvn.c
│ │ │ │ └── serial_ut.c
│ │ └── svc
│ │ │ ├── Inc
│ │ │ ├── bls.h
│ │ │ ├── bvopus_service_stm.h
│ │ │ ├── crs_stm.h
│ │ │ ├── dis.h
│ │ │ ├── eds_stm.h
│ │ │ ├── hids.h
│ │ │ ├── hrs.h
│ │ │ ├── hts.h
│ │ │ ├── ias.h
│ │ │ ├── lls.h
│ │ │ ├── mesh.h
│ │ │ ├── motenv_stm.h
│ │ │ ├── opus_interface_stm.h
│ │ │ ├── otas_stm.h
│ │ │ ├── p2p_stm.h
│ │ │ ├── svc_ctl.h
│ │ │ ├── template_stm.h
│ │ │ ├── tps.h
│ │ │ └── uuid.h
│ │ │ └── Src
│ │ │ ├── bls.c
│ │ │ ├── bvopus_service_stm.c
│ │ │ ├── common_blesvc.h
│ │ │ ├── crs_stm.c
│ │ │ ├── dis.c
│ │ │ ├── eds_stm.c
│ │ │ ├── hids.c
│ │ │ ├── hrs.c
│ │ │ ├── hts.c
│ │ │ ├── ias.c
│ │ │ ├── lls.c
│ │ │ ├── mesh.c
│ │ │ ├── motenv_stm.c
│ │ │ ├── opus_interface_stm.c
│ │ │ ├── otas_stm.c
│ │ │ ├── p2p_stm.c
│ │ │ ├── svc_ctl.c
│ │ │ ├── template_stm.c
│ │ │ └── tps.c
│ │ ├── interface
│ │ └── patterns
│ │ │ └── ble_thread
│ │ │ ├── conf
│ │ │ ├── tl_conf_template.h
│ │ │ └── vcp_conf_template.h
│ │ │ ├── hw.h
│ │ │ ├── lhci
│ │ │ ├── lhci.c
│ │ │ └── lhci.h
│ │ │ ├── shci
│ │ │ ├── shci.c
│ │ │ └── shci.h
│ │ │ ├── tl
│ │ │ ├── hci_tl.c
│ │ │ ├── hci_tl.h
│ │ │ ├── hci_tl_if.c
│ │ │ ├── mbox_def.h
│ │ │ ├── shci_tl.c
│ │ │ ├── shci_tl.h
│ │ │ ├── shci_tl_if.c
│ │ │ ├── tl.h
│ │ │ ├── tl_mac_802_15_4.h
│ │ │ ├── tl_mbox.c
│ │ │ ├── tl_thread_hci.c
│ │ │ ├── tl_thread_hci.h
│ │ │ ├── tl_zigbee_hci.c
│ │ │ └── tl_zigbee_hci.h
│ │ │ └── vcp
│ │ │ ├── usbd_conf.c
│ │ │ ├── usbd_conf.h
│ │ │ ├── usbd_desc.c
│ │ │ ├── usbd_desc.h
│ │ │ ├── vcp.c
│ │ │ └── vcp.h
│ │ ├── stm32_wpan_common.h
│ │ └── utilities
│ │ ├── dbg_trace.c
│ │ ├── dbg_trace.h
│ │ ├── otp.c
│ │ ├── otp.h
│ │ ├── stm_list.c
│ │ ├── stm_list.h
│ │ ├── stm_queue.c
│ │ ├── stm_queue.h
│ │ └── utilities_common.h
│ ├── README.md
│ ├── hal_config
│ └── stm32wbxx_hal_conf.h
│ └── stm32wbxx.mk
├── lora_basics_modem
├── lora_basics_modem
│ ├── CHANGELOG.md
│ ├── LICENSE.txt
│ ├── LICENSES.txt
│ ├── README.md
│ └── lbm_lib
│ │ ├── Makefile
│ │ ├── PORTING_GUIDE.md
│ │ ├── README.md
│ │ ├── lora_basics_modem_version.h
│ │ ├── makefiles
│ │ ├── common.mk
│ │ ├── lr11xx.mk
│ │ ├── options.mk
│ │ ├── printing.mk
│ │ ├── regions.mk
│ │ ├── sx126x.mk
│ │ ├── sx127x.mk
│ │ └── sx128x.mk
│ │ ├── smtc_modem_api
│ │ ├── CHANGELOG.md
│ │ ├── Makefile
│ │ ├── smtc_modem_api.h
│ │ ├── smtc_modem_geolocation_api.h
│ │ ├── smtc_modem_test_api.h
│ │ └── smtc_modem_utilities.h
│ │ ├── smtc_modem_core
│ │ ├── geolocation_services
│ │ │ ├── README.md
│ │ │ ├── doc
│ │ │ │ ├── docMiddlewareSequenceOverview.png
│ │ │ │ └── raw
│ │ │ │ │ ├── Makefile
│ │ │ │ │ └── docMiddlewareSequenceOverview.puml
│ │ │ ├── geolocation_bsp.h
│ │ │ ├── gnss_helpers.c
│ │ │ ├── gnss_helpers.h
│ │ │ ├── gnss_helpers_defs.h
│ │ │ ├── mw_common.c
│ │ │ ├── mw_common.h
│ │ │ ├── mw_gnss_almanac.c
│ │ │ ├── mw_gnss_almanac.h
│ │ │ ├── mw_gnss_defs.h
│ │ │ ├── mw_gnss_scan.c
│ │ │ ├── mw_gnss_scan.h
│ │ │ ├── mw_gnss_send.c
│ │ │ ├── mw_gnss_send.h
│ │ │ ├── mw_wifi_scan.c
│ │ │ ├── mw_wifi_scan.h
│ │ │ ├── mw_wifi_send.c
│ │ │ ├── mw_wifi_send.h
│ │ │ ├── wifi_helpers.c
│ │ │ ├── wifi_helpers.h
│ │ │ └── wifi_helpers_defs.h
│ │ ├── lorawan_api
│ │ │ ├── lorawan_api.c
│ │ │ └── lorawan_api.h
│ │ ├── lorawan_manager
│ │ │ ├── doc
│ │ │ │ ├── class_b_sequence.png
│ │ │ │ ├── join_sequence.png
│ │ │ │ └── raw
│ │ │ │ │ ├── Class_B_Services.puml
│ │ │ │ │ └── join.puml
│ │ │ ├── lorawan_cid_request_management.c
│ │ │ ├── lorawan_cid_request_management.h
│ │ │ ├── lorawan_class_b_management.c
│ │ │ ├── lorawan_class_b_management.h
│ │ │ ├── lorawan_dwn_ack_management.c
│ │ │ ├── lorawan_dwn_ack_management.h
│ │ │ ├── lorawan_join_management.c
│ │ │ ├── lorawan_join_management.h
│ │ │ ├── lorawan_management_defs.h
│ │ │ ├── lorawan_send_management.c
│ │ │ └── lorawan_send_management.h
│ │ ├── lorawan_packages
│ │ │ ├── application_layer_clock_synchronization
│ │ │ │ ├── lorawan_alcsync.h
│ │ │ │ ├── v1.0.0
│ │ │ │ │ └── lorawan_alcsync_v1.0.0.c
│ │ │ │ └── v2.0.0
│ │ │ │ │ └── lorawan_alcsync_v2.0.0.c
│ │ │ ├── firmware_management_protocol
│ │ │ │ ├── lorawan_fmp_package.c
│ │ │ │ └── lorawan_fmp_package.h
│ │ │ ├── fragmented_data_block_transport
│ │ │ │ ├── lorawan_fragmentation_package.h
│ │ │ │ ├── v1.0.0
│ │ │ │ │ ├── fragmentation_helper_v1.0.0.c
│ │ │ │ │ ├── fragmentation_helper_v1.0.0.h
│ │ │ │ │ └── lorawan_fragmentation_package_v1.0.0.c
│ │ │ │ └── v2.0.0
│ │ │ │ │ ├── fragmentation_helper_v2.0.0.c
│ │ │ │ │ ├── fragmentation_helper_v2.0.0.h
│ │ │ │ │ └── lorawan_fragmentation_package_v2.0.0.c
│ │ │ ├── lorawan_certification
│ │ │ │ ├── lorawan_certification.c
│ │ │ │ └── lorawan_certification.h
│ │ │ ├── multi_package_access
│ │ │ │ ├── lorawan_mpa_package.c
│ │ │ │ └── lorawan_mpa_package.h
│ │ │ └── remote_multicast_setup
│ │ │ │ ├── lorawan_remote_multicast_setup_package.h
│ │ │ │ ├── v1.0.0
│ │ │ │ └── lorawan_remote_multicast_setup_package_v1.0.0.c
│ │ │ │ └── v2.0.0
│ │ │ │ └── lorawan_remote_multicast_setup_package_v2.0.0.c
│ │ ├── lr1mac
│ │ │ ├── lr1mac_config.h
│ │ │ └── src
│ │ │ │ ├── lr1_stack_mac_layer.c
│ │ │ │ ├── lr1_stack_mac_layer.h
│ │ │ │ ├── lr1mac_class_b
│ │ │ │ ├── smtc_beacon_sniff.c
│ │ │ │ ├── smtc_beacon_sniff.h
│ │ │ │ ├── smtc_ping_slot.c
│ │ │ │ └── smtc_ping_slot.h
│ │ │ │ ├── lr1mac_class_c
│ │ │ │ ├── lr1mac_class_c.c
│ │ │ │ └── lr1mac_class_c.h
│ │ │ │ ├── lr1mac_core.c
│ │ │ │ ├── lr1mac_core.h
│ │ │ │ ├── lr1mac_defs.h
│ │ │ │ ├── lr1mac_utilities.c
│ │ │ │ ├── lr1mac_utilities.h
│ │ │ │ ├── services
│ │ │ │ ├── smtc_duty_cycle.c
│ │ │ │ ├── smtc_duty_cycle.h
│ │ │ │ ├── smtc_lbt.c
│ │ │ │ ├── smtc_lbt.h
│ │ │ │ ├── smtc_lora_cad_bt.c
│ │ │ │ ├── smtc_lora_cad_bt.h
│ │ │ │ └── smtc_multicast
│ │ │ │ │ ├── smtc_multicast.c
│ │ │ │ │ └── smtc_multicast.h
│ │ │ │ └── smtc_real
│ │ │ │ └── src
│ │ │ │ ├── region_as_923.c
│ │ │ │ ├── region_as_923.h
│ │ │ │ ├── region_as_923_defs.h
│ │ │ │ ├── region_au_915.c
│ │ │ │ ├── region_au_915.h
│ │ │ │ ├── region_au_915_defs.h
│ │ │ │ ├── region_cn_470.c
│ │ │ │ ├── region_cn_470.h
│ │ │ │ ├── region_cn_470_defs.h
│ │ │ │ ├── region_cn_470_rp_1_0.c
│ │ │ │ ├── region_cn_470_rp_1_0.h
│ │ │ │ ├── region_cn_470_rp_1_0_defs.h
│ │ │ │ ├── region_eu_868.c
│ │ │ │ ├── region_eu_868.h
│ │ │ │ ├── region_eu_868_defs.h
│ │ │ │ ├── region_in_865.c
│ │ │ │ ├── region_in_865.h
│ │ │ │ ├── region_in_865_defs.h
│ │ │ │ ├── region_kr_920.c
│ │ │ │ ├── region_kr_920.h
│ │ │ │ ├── region_kr_920_defs.h
│ │ │ │ ├── region_ru_864.c
│ │ │ │ ├── region_ru_864.h
│ │ │ │ ├── region_ru_864_defs.h
│ │ │ │ ├── region_us_915.c
│ │ │ │ ├── region_us_915.h
│ │ │ │ ├── region_us_915_defs.h
│ │ │ │ ├── region_ww2g4.c
│ │ │ │ ├── region_ww2g4.h
│ │ │ │ ├── region_ww2g4_defs.h
│ │ │ │ ├── smtc_real.c
│ │ │ │ ├── smtc_real.h
│ │ │ │ ├── smtc_real_defs.h
│ │ │ │ └── smtc_real_defs_str.h
│ │ ├── modem_services
│ │ │ ├── almanac_packages
│ │ │ │ ├── almanac.c
│ │ │ │ └── almanac.h
│ │ │ ├── beacon_tx_service
│ │ │ │ ├── lorawan_beacon_tx_service_example.c
│ │ │ │ └── lorawan_beacon_tx_service_example.h
│ │ │ ├── cloud_dm_package
│ │ │ │ ├── cloud_dm_package.c
│ │ │ │ └── cloud_dm_package.h
│ │ │ ├── device_management_defs.h
│ │ │ ├── lfu_service
│ │ │ │ ├── file_upload.c
│ │ │ │ └── file_upload.h
│ │ │ ├── modem_services_common.h
│ │ │ ├── service_template
│ │ │ │ ├── service_template.c
│ │ │ │ └── service_template.h
│ │ │ ├── store_and_forward
│ │ │ │ ├── README.md
│ │ │ │ ├── store_and_forward.c
│ │ │ │ ├── store_and_forward.h
│ │ │ │ ├── store_and_forward_flash.c
│ │ │ │ └── store_and_forward_flash.h
│ │ │ └── stream_packages
│ │ │ │ ├── lmic_defines.h
│ │ │ │ ├── rose.c
│ │ │ │ ├── rose.h
│ │ │ │ ├── rose.rst
│ │ │ │ ├── rose_defs.h
│ │ │ │ ├── stream.c
│ │ │ │ └── stream.h
│ │ ├── modem_supervisor
│ │ │ ├── modem_supervisor_light.c
│ │ │ └── modem_supervisor_light.h
│ │ ├── modem_utilities
│ │ │ ├── circularfs.c
│ │ │ ├── circularfs.h
│ │ │ ├── fifo_ctrl.c
│ │ │ ├── fifo_ctrl.h
│ │ │ ├── modem_core.c
│ │ │ ├── modem_core.h
│ │ │ ├── modem_event_utilities.c
│ │ │ ├── modem_event_utilities.h
│ │ │ └── modem_services_config.h
│ │ ├── radio_drivers
│ │ │ ├── lr11xx_driver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── README.md
│ │ │ │ └── src
│ │ │ │ │ ├── lr11xx_bootloader.c
│ │ │ │ │ ├── lr11xx_bootloader.h
│ │ │ │ │ ├── lr11xx_bootloader_types.h
│ │ │ │ │ ├── lr11xx_crypto_engine.c
│ │ │ │ │ ├── lr11xx_crypto_engine.h
│ │ │ │ │ ├── lr11xx_crypto_engine_types.h
│ │ │ │ │ ├── lr11xx_driver_module.cmake
│ │ │ │ │ ├── lr11xx_driver_version.c
│ │ │ │ │ ├── lr11xx_driver_version.h
│ │ │ │ │ ├── lr11xx_gnss.c
│ │ │ │ │ ├── lr11xx_gnss.h
│ │ │ │ │ ├── lr11xx_gnss_types.h
│ │ │ │ │ ├── lr11xx_hal.h
│ │ │ │ │ ├── lr11xx_lr_fhss.c
│ │ │ │ │ ├── lr11xx_lr_fhss.h
│ │ │ │ │ ├── lr11xx_lr_fhss_types.h
│ │ │ │ │ ├── lr11xx_radio.c
│ │ │ │ │ ├── lr11xx_radio.h
│ │ │ │ │ ├── lr11xx_radio_timings.c
│ │ │ │ │ ├── lr11xx_radio_timings.h
│ │ │ │ │ ├── lr11xx_radio_types.h
│ │ │ │ │ ├── lr11xx_regmem.c
│ │ │ │ │ ├── lr11xx_regmem.h
│ │ │ │ │ ├── lr11xx_rttof.c
│ │ │ │ │ ├── lr11xx_rttof.h
│ │ │ │ │ ├── lr11xx_rttof_types.h
│ │ │ │ │ ├── lr11xx_system.c
│ │ │ │ │ ├── lr11xx_system.h
│ │ │ │ │ ├── lr11xx_system_types.h
│ │ │ │ │ ├── lr11xx_types.h
│ │ │ │ │ ├── lr11xx_wifi.c
│ │ │ │ │ ├── lr11xx_wifi.h
│ │ │ │ │ ├── lr11xx_wifi_types.h
│ │ │ │ │ └── lr_fhss_v1_base_types.h
│ │ │ ├── sx126x_driver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── README.md
│ │ │ │ └── src
│ │ │ │ │ ├── lr_fhss_mac.c
│ │ │ │ │ ├── lr_fhss_mac.h
│ │ │ │ │ ├── lr_fhss_v1_base_types.h
│ │ │ │ │ ├── sx126x.c
│ │ │ │ │ ├── sx126x.h
│ │ │ │ │ ├── sx126x_driver_version.c
│ │ │ │ │ ├── sx126x_driver_version.h
│ │ │ │ │ ├── sx126x_hal.h
│ │ │ │ │ ├── sx126x_lr_fhss.c
│ │ │ │ │ ├── sx126x_lr_fhss.h
│ │ │ │ │ └── sx126x_regs.h
│ │ │ ├── sx127x_driver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.md
│ │ │ │ ├── README.md
│ │ │ │ └── src
│ │ │ │ │ ├── sx127x.c
│ │ │ │ │ ├── sx127x.h
│ │ │ │ │ ├── sx127x_hal.h
│ │ │ │ │ ├── sx127x_regs.h
│ │ │ │ │ ├── sx127x_regs_common_defs.h
│ │ │ │ │ ├── sx127x_regs_gfsk_defs.h
│ │ │ │ │ └── sx127x_regs_lora_defs.h
│ │ │ └── sx128x_driver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE.txt
│ │ │ │ ├── README.md
│ │ │ │ └── src
│ │ │ │ ├── sx128x.c
│ │ │ │ ├── sx128x.h
│ │ │ │ ├── sx128x_driver_module.cmake
│ │ │ │ ├── sx128x_hal.h
│ │ │ │ └── sx128x_regs.h
│ │ ├── radio_planner
│ │ │ └── src
│ │ │ │ ├── radio_planner.c
│ │ │ │ ├── radio_planner.h
│ │ │ │ ├── radio_planner_hook_id_defs.h
│ │ │ │ ├── radio_planner_stats.h
│ │ │ │ └── radio_planner_types.h
│ │ ├── smtc_modem.c
│ │ ├── smtc_modem_crypto
│ │ │ ├── lr11xx_crypto_engine
│ │ │ │ └── lr11xx_ce.c
│ │ │ ├── smtc_modem_crypto.c
│ │ │ ├── smtc_modem_crypto.h
│ │ │ ├── smtc_secure_element
│ │ │ │ └── smtc_secure_element.h
│ │ │ └── soft_secure_element
│ │ │ │ ├── aes.c
│ │ │ │ ├── aes.h
│ │ │ │ ├── cmac.c
│ │ │ │ ├── cmac.h
│ │ │ │ └── soft_se.c
│ │ ├── smtc_modem_hal_dbg_trace.h
│ │ ├── smtc_modem_test.c
│ │ ├── smtc_ral
│ │ │ ├── README.md
│ │ │ ├── license.md
│ │ │ └── src
│ │ │ │ ├── lr_fhss_v1_base_types.h
│ │ │ │ ├── ral.h
│ │ │ │ ├── ral_defs.h
│ │ │ │ ├── ral_drv.h
│ │ │ │ ├── ral_llcc68.c
│ │ │ │ ├── ral_llcc68.h
│ │ │ │ ├── ral_llcc68_bsp.h
│ │ │ │ ├── ral_lr11xx.c
│ │ │ │ ├── ral_lr11xx.h
│ │ │ │ ├── ral_lr11xx_bsp.h
│ │ │ │ ├── ral_sx126x.c
│ │ │ │ ├── ral_sx126x.h
│ │ │ │ ├── ral_sx126x_bsp.h
│ │ │ │ ├── ral_sx127x.c
│ │ │ │ ├── ral_sx127x.h
│ │ │ │ ├── ral_sx127x_bsp.h
│ │ │ │ ├── ral_sx128x.c
│ │ │ │ ├── ral_sx128x.h
│ │ │ │ └── ral_sx128x_bsp.h
│ │ └── smtc_ralf
│ │ │ ├── license.md
│ │ │ └── src
│ │ │ ├── ralf.h
│ │ │ ├── ralf_defs.h
│ │ │ ├── ralf_drv.h
│ │ │ ├── ralf_lr11xx.c
│ │ │ ├── ralf_lr11xx.h
│ │ │ ├── ralf_lr11xx_bsp.h
│ │ │ ├── ralf_sx126x.c
│ │ │ ├── ralf_sx126x.h
│ │ │ ├── ralf_sx126x_bsp.h
│ │ │ ├── ralf_sx127x.c
│ │ │ ├── ralf_sx127x.h
│ │ │ ├── ralf_sx127x_bsp.h
│ │ │ ├── ralf_sx128x.c
│ │ │ ├── ralf_sx128x.h
│ │ │ └── ralf_sx128x_bsp.h
│ │ └── smtc_modem_hal
│ │ ├── CHANGELOG.md
│ │ └── smtc_modem_hal.h
├── makefiles
│ ├── common.mk
│ └── printing.mk
└── printers
│ ├── smtc_modem_api_str.c
│ └── smtc_modem_api_str.h
├── smtc_hal
├── STMicroelectronics
│ └── STM32WB55xx
│ │ ├── inc
│ │ ├── smtc_hal_flash_mapping.h
│ │ ├── smtc_hal_mcu_ex.h
│ │ └── smtc_hal_rtc_ex.h
│ │ ├── smtc_hal_wb55.mk
│ │ ├── smtc_modem_hal
│ │ └── smtc_modem_hal.c
│ │ └── src
│ │ ├── smtc_hal_adc.c
│ │ ├── smtc_hal_flash.c
│ │ ├── smtc_hal_gpio.c
│ │ ├── smtc_hal_i2c.c
│ │ ├── smtc_hal_lp_timer.c
│ │ ├── smtc_hal_mcu.c
│ │ ├── smtc_hal_rng.c
│ │ ├── smtc_hal_rtc.c
│ │ ├── smtc_hal_spi.c
│ │ ├── smtc_hal_tmr_list.c
│ │ ├── smtc_hal_trace.c
│ │ ├── smtc_hal_uart.c
│ │ └── smtc_hal_watchdog.c
├── board
│ └── board_options.h
├── inc
│ ├── smtc_hal.h
│ ├── smtc_hal_adc.h
│ ├── smtc_hal_dbg_trace.h
│ ├── smtc_hal_def.h
│ ├── smtc_hal_flash.h
│ ├── smtc_hal_gpio.h
│ ├── smtc_hal_gpio_pin_names.h
│ ├── smtc_hal_i2c.h
│ ├── smtc_hal_lp_timer.h
│ ├── smtc_hal_mcu.h
│ ├── smtc_hal_options.h
│ ├── smtc_hal_rng.h
│ ├── smtc_hal_rtc.h
│ ├── smtc_hal_spi.h
│ ├── smtc_hal_tmr_list.h
│ ├── smtc_hal_trace.h
│ ├── smtc_hal_uart.h
│ └── smtc_hal_watchdog.h
└── smtc_hal_target.mk
└── toolchain
└── gcc
└── toolchain.mk
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | All notable changes to this project will be documented in this file.
4 |
5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6 | and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7 |
8 | ## [3.0.0] - 2023-11-12
9 |
10 | ### Added
11 |
12 | - New app architecture, geolocation fully autonomous, device doesn't need to be connected to a network to start geolocation operation.
13 | - Add capability to send data thought store and forward service.
14 | - Uptate LoRa Basics Modem version from 3.3.0 to 4.3.0
15 |
16 | ### removed
17 |
18 | - [geolocation_gnss] Application code.
19 | - [geolocation_gnss_wifi] Application code.
20 | - [geolocation_wifi] Application code.
21 |
22 | ## [2.3.0] - 2023-06-12
23 |
24 | ### Change
25 | - Application code update according to geolocation middleware v2.1.0. see [Geolocation middleware Changelog](../../../geolocation_middleware/CHANGELOG.md).
26 | - Uptate LoRa Basics Modem version from 3.2.4 to 3.3.0
27 |
28 | ## [2.2.0] - 2023-01-23
29 |
30 | ### Change
31 | - Application code update according to geolocation middleware v2.0.0. see [Geolocation middleware Changelog](../../../geolocation_middleware/CHANGELOG.md).
32 |
33 | ## [2.1.1] - 2022-11-10
34 |
35 | ### Added
36 | - Support of the regions IN_865 / RU_864 / AU_915 / AS_923_GRP1 / AS_923_GRP2 /AS_923_GRP3 / KR_920
37 |
38 | ### Change
39 | - General code improvement
40 |
41 | ### Fixed
42 | - LoRa Basics Modem crashlog was not functionnal
43 | - `smtc_modem_hal_get_battery_level` was always returning 254
44 | - Race condition when time was not available anymore in `on_middleware_gnss_event` function
45 |
46 | ## [2.0.8] - 2022-06-29
47 |
48 | ### Fixed
49 |
50 | - Overconsumption in airplane mode
51 | - RTC rollover after 6 days
52 |
53 | ## [2.0.7] - 2022-06-15
54 |
55 | ### Added
56 |
57 | - Initial version
58 |
--------------------------------------------------------------------------------
/apps/tracker_application/bin/BLE_Ota.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/BLE_Ota.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/manifest.json:
--------------------------------------------------------------------------------
1 | {"lr1110_transceiver": {
2 | "version": "03.08",
3 | "url": "https://api.github.com/repos/Lora-net/radio_firmware_images/contents/lr1110/transceiver/lr1110_transceiver_0308.h",
4 | "hash": "b6528986d0448b56d9282fe3bc0e678e"},
5 | "lbm_app": {
6 | "version": "2.03.00",
7 | "url": "https://api.github.com/repos/Lora-net/SWSD004/contents/apps/tracker_application/bin/tracker_application.bin",
8 | "hash": "025107862d0af581f0ea8b26f466eaf4"},
9 | "lr1110_fa_transceiver": {
10 | "version": "04.01",
11 | "url": "https://api.github.com/repos/Lora-net/radio_firmware_images/contents/lr1110/transceiver/lr1110_transceiver_0401.h",
12 | "hash": "9cf07cebd4b7163504a2999cea6cc7be"},
13 | "lbm_fa_app": {
14 | "version": "3.00.00",
15 | "url": "https://api.github.com/repos/Lora-net/SWSD004/contents/apps/tracker_application/bin/tracker_application_autonomous.bin",
16 | "hash": "341b9258aee6eeccd1d0aff695c29aae"}
17 | }
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_as923_grp1.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_as923_grp1.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_as923_grp2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_as923_grp2.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_as923_grp3.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_as923_grp3.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_au915.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_au915.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_as923_grp1.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_as923_grp1.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_as923_grp2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_as923_grp2.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_as923_grp3.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_as923_grp3.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_au915.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_au915.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_eu868.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_eu868.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_in865.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_in865.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_japan.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_japan.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_kr920.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_kr920.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_autonomous_us915.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_autonomous_us915.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_eu868.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_eu868.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_in865.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_in865.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_japan.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_japan.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_kr920.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_kr920.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_ru864.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_ru864.bin
--------------------------------------------------------------------------------
/apps/tracker_application/bin/tracker_application_us915.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/bin/tracker_application_us915.bin
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/StartScanA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/StartScanA.png
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/StartScanIos.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/StartScanIos.png
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/TrackDiscA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/TrackDiscA.png
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/TrackDiscI.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/TrackDiscI.png
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/TrackerDetectApp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/TrackerDetectApp.png
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/Tracker_ble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/Tracker_ble.png
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/apps.Tracker.statemachine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/apps.Tracker.statemachine.png
--------------------------------------------------------------------------------
/apps/tracker_application/doc/img/migration.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/doc/img/migration.png
--------------------------------------------------------------------------------
/apps/tracker_application/makefile/run_coverity.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | rm -r html_output
4 | rm -r idir
5 | cov-build --dir idir make clean
6 | cov-build --dir idir make -j
7 | cov-analyze --dir idir --strip-path /home/bboulet/Documents/Documents/dev/lr1110/
8 | mkdir html_output
9 | cov-format-errors --dir idir --html-output ./html_output/
10 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/ble/core/ble_core.h:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * @file ble_core.h
3 | * @author MCD Application Team
4 | * @brief This file contains the definitions for BLE stack
5 | *****************************************************************************
6 | * @attention
7 | *
8 | *
© Copyright (c) 2019 STMicroelectronics.
9 | * All rights reserved.
10 | *
11 | * This software component is licensed by ST under Ultimate Liberty license
12 | * SLA0044, the "License"; You may not use this file except in compliance with
13 | * the License. You may obtain a copy of the License at:
14 | * www.st.com/SLA0044
15 | *
16 | ******************************************************************************
17 | */
18 |
19 | #ifndef BLE_CORE_H__
20 | #define BLE_CORE_H__
21 |
22 |
23 | /* BLE standard definitions */
24 | #include "ble_std.h"
25 |
26 | /* BLE API definitions */
27 | #include "ble_defs.h"
28 | #include "auto/ble_gap_aci.h"
29 | #include "auto/ble_gatt_aci.h"
30 | #include "auto/ble_hal_aci.h"
31 | #include "auto/ble_hci_le.h"
32 | #include "auto/ble_l2cap_aci.h"
33 | #include "auto/ble_events.h"
34 |
35 | /* BLE stack buffer size definitions */
36 | #include "ble_bufsize.h"
37 |
38 | /* BLE legacy definitions */
39 | #include "ble_legacy.h"
40 |
41 |
42 | #endif /* ! BLE_CORE_H__ */
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE***/
45 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/ble/core/template/osal.c:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * @file osal.c
3 | * @author MCD Application Team
4 | * @brief Implements the interface defined in "osal.h" needed by the stack.
5 | * Actually, only memset, memcpy and memcmp wrappers are implemented.
6 | *****************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | #include
21 | #include "osal.h"
22 |
23 |
24 | /**
25 | * Osal_MemCpy
26 | *
27 | */
28 |
29 | void* Osal_MemCpy( void *dest, const void *src, unsigned int size )
30 | {
31 | return memcpy( dest, src, size );
32 | }
33 |
34 | /**
35 | * Osal_MemSet
36 | *
37 | */
38 |
39 | void* Osal_MemSet( void *ptr, int value, unsigned int size )
40 | {
41 | return memset( ptr, value, size );
42 | }
43 |
44 | /**
45 | * Osal_MemCmp
46 | *
47 | */
48 | int Osal_MemCmp( const void *s1, const void *s2, unsigned int size )
49 | {
50 | return memcmp( s1, s2, size );
51 | }
52 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/ble/svc/Inc/dis.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file dis.h
4 | * @author MCD Application Team
5 | * @brief Header for dis.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __DIS_H
24 | #define __DIS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 | /* Exported types ------------------------------------------------------------*/
33 | typedef struct
34 | {
35 | uint8_t *pPayload;
36 | uint8_t Length;
37 | }DIS_Data_t;
38 |
39 |
40 | /* Exported constants --------------------------------------------------------*/
41 | /* External variables --------------------------------------------------------*/
42 | /* Exported macros -----------------------------------------------------------*/
43 | /* Exported functions ------------------------------------------------------- */
44 | void DIS_Init(void);
45 | tBleStatus DIS_UpdateChar(uint16_t uuid, DIS_Data_t *p_data);
46 |
47 | #ifdef __cplusplus
48 | }
49 | #endif
50 |
51 | #endif /*__DIS_H */
52 |
53 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
54 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/ble/svc/Inc/ias.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file ias.h
4 | * @author MCD Application Team
5 | * @brief Header for ias.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __IAS_H
24 | #define __IAS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 |
34 | /* Exported types ------------------------------------------------------------*/
35 | typedef enum
36 | {
37 | IAS_NO_ALERT_EVT,
38 | IAS_MID_ALERT_EVT,
39 | IAS_HIGH_ALERT_EVT
40 | } IAS_App_Opcode_Notification_evt_t;
41 |
42 | typedef struct
43 | {
44 | IAS_App_Opcode_Notification_evt_t IAS_Evt_Opcode;
45 | }IAS_App_Notification_evt_t;
46 |
47 |
48 | /* Exported constants --------------------------------------------------------*/
49 | /* External variables --------------------------------------------------------*/
50 | /* Exported macros -----------------------------------------------------------*/
51 | /* Exported functions ------------------------------------------------------- */
52 | void IAS_Init(void);
53 | tBleStatus IAS_Update_Char(uint16_t UUID, uint8_t *pPayload);
54 | void IAS_App_Notification(IAS_App_Notification_evt_t *pNotification);
55 |
56 |
57 | #ifdef __cplusplus
58 | }
59 | #endif
60 |
61 | #endif /*__IAS_H */
62 |
63 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
64 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/ble/svc/Inc/lls.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file lls.h
4 | * @author MCD Application Team
5 | * @brief Header for lls.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __LLS_H
24 | #define __LLS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 |
33 | /* Exported types ------------------------------------------------------------*/
34 | typedef enum
35 | {
36 | LLS_NO_ALERT_EVT,
37 | LLS_MID_ALERT_EVT,
38 | LLS_HIGH_ALERT_EVT,
39 | LLS_DISCONNECT_EVT,
40 | LLS_CONNECT_EVT
41 | } LLS_App_Opcode_Notification_evt_t;
42 |
43 | typedef struct
44 | {
45 | LLS_App_Opcode_Notification_evt_t LLS_Evt_Opcode;
46 | }LLS_App_Notification_evt_t;
47 |
48 |
49 | /* Exported constants --------------------------------------------------------*/
50 | /* External variables --------------------------------------------------------*/
51 | /* Exported macros -----------------------------------------------------------*/
52 | /* Exported functions ------------------------------------------------------- */
53 | void LLS_Init(void);
54 | tBleStatus LLS_Update_Char(uint16_t UUID, uint8_t *pPayload);
55 | void LLS_App_Notification(LLS_App_Notification_evt_t *pNotification);
56 |
57 |
58 | #ifdef __cplusplus
59 | }
60 | #endif
61 |
62 | #endif /*__LLS_H */
63 |
64 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
65 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/ble/svc/Inc/tps.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tps.h
4 | * @author MCD Application Team
5 | * @brief Header for tps.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __TPS_H
24 | #define __TPS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 |
33 | /* Exported types ------------------------------------------------------------*/
34 | /* Exported constants --------------------------------------------------------*/
35 | /* External variables --------------------------------------------------------*/
36 | /* Exported macros -----------------------------------------------------------*/
37 | /* Exported functions ------------------------------------------------------- */
38 | void TPS_Init(void);
39 | tBleStatus TPS_Update_Char(uint16_t UUID, uint8_t *pPayload);
40 |
41 | #ifdef __cplusplus
42 | }
43 | #endif
44 |
45 | #endif /*__TPS_H */
46 |
47 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
48 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/ble/svc/Src/common_blesvc.h:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | ******************************************************************************
4 | * @file common_blesvc.h
5 | * @author MCD Application Team
6 | * @brief Header for ble modules
7 | ******************************************************************************
8 | * @attention
9 | *
10 | * © Copyright (c) 2019 STMicroelectronics.
11 | * All rights reserved.
12 | *
13 | * This software component is licensed by ST under Ultimate Liberty license
14 | * SLA0044, the "License"; You may not use this file except in compliance with
15 | * the License. You may obtain a copy of the License at:
16 | * www.st.com/SLA0044
17 | *
18 | ******************************************************************************
19 | */
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __COMMON_BLESVC_H
24 | #define __COMMON_BLESVC_H
25 |
26 | #ifdef __cplusplus
27 | extern "C" {
28 | #endif
29 |
30 | /* Includes ------------------------------------------------------------------*/
31 | #include "ble_common.h"
32 | #include "ble.h"
33 | #include "dbg_trace.h"
34 |
35 |
36 |
37 | /* Exported types ------------------------------------------------------------*/
38 | typedef enum
39 | {
40 | COMSVC_Notification = ( 1 << 0 ),
41 | COMSVC_Indication = ( 1 << 1 ),
42 | } COMSVC_ClientCharConfMask_t;
43 |
44 | /* Exported constants --------------------------------------------------------*/
45 | /* External variables --------------------------------------------------------*/
46 | /* Exported macros -----------------------------------------------------------*/
47 |
48 |
49 | #ifdef __cplusplus
50 | }
51 | #endif
52 |
53 | #endif /*__COMMON_BLESVC_H */
54 |
55 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
56 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/interface/patterns/ble_thread/tl/hci_tl_if.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file hci_tl_if.c
4 | * @author MCD Application Team
5 | * @brief Transport layer interface to BLE
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 | #include "hci_tl.h"
20 | #include "tl.h"
21 |
22 |
23 | void hci_register_io_bus(tHciIO* fops)
24 | {
25 | /* Register IO bus services */
26 | fops->Init = TL_BLE_Init;
27 | fops->Send = TL_BLE_SendCmd;
28 |
29 | return;
30 | }
31 |
32 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
33 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/interface/patterns/ble_thread/tl/shci_tl_if.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file shci_tl_if.c
4 | * @author MCD Application Team
5 | * @brief Transport layer interface to the system channel
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 | #include "shci_tl.h"
20 | #include "tl.h"
21 |
22 |
23 | void shci_register_io_bus(tSHciIO* fops)
24 | {
25 | /* Register IO bus services */
26 | fops->Init = TL_SYS_Init;
27 | fops->Send = TL_SYS_SendCmd;
28 |
29 | return;
30 | }
31 |
32 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
33 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/interface/patterns/ble_thread/tl/tl_mac_802_15_4.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_mac_802_15_4.h
4 | * @author MCD Application Team
5 | * @brief Constants and functions for managing MAC 802.15.4 TL
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef __TL_MAC_802_15_4_H
22 | #define __TL_MAC_802_15_4_H
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 |
26 | #include "tl.h"
27 | #include
28 |
29 | #include "802_15_4_mac_core.h"
30 |
31 | /* Exported functions ------------------------------------------------------------*/
32 | void Mac_802_15_4_PreCmdProcessing(void);
33 | void Mac_802_15_4_CmdTransfer(void);
34 |
35 | TL_CmdPacket_t* MAC_802_15_4_GetCmdBuffer(void);
36 | TL_Evt_t* MAC_802_15_4_GetRspPayEvt(void);
37 |
38 | TL_Evt_t* MAC_802_15_4_GetNotificationBuffer(void);
39 | MAC_802_15_4_Notification_t* MAC_802_15_4_GetNotificationPayloadBuffer(void);
40 |
41 | /* Exported defines -----------------------------------------------------------*/
42 |
43 |
44 | #endif /* __TL_MAC_802_15_4_H_ */
45 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/interface/patterns/ble_thread/tl/tl_thread_hci.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_thread_hci.c
4 | * @author MCD Application Team
5 | * @brief Function for managing HCI interface.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Includes ------------------------------------------------------------------*/
22 | #include "stm32_wpan_common.h"
23 | #include "stm_list.h"
24 | #include "tl.h"
25 | #include "tl_thread_hci.h"
26 |
27 | /* Private typedef -----------------------------------------------------------*/
28 | /* Private defines -----------------------------------------------------------*/
29 |
30 |
31 |
32 | /* Private macros ------------------------------------------------------------*/
33 |
34 | /* Public variables ---------------------------------------------------------*/
35 |
36 |
37 |
38 | /* Private variables ---------------------------------------------------------*/
39 |
40 |
41 | /* Private function prototypes -----------------------------------------------*/
42 |
43 |
44 | /* Private functions ----------------------------------------------------------*/
45 | __WEAK void Pre_OtCmdProcessing(void){return;}
46 | __WEAK void Ot_Cmd_Transfer(void){return;}
47 | __WEAK Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdPayloadBuffer(void){return 0;}
48 | __WEAK Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdRspPayloadBuffer(void){return 0;}
49 | __WEAK Thread_OT_Cmd_Request_t* THREAD_Get_NotificationPayloadBuffer(void){return 0;}
50 |
51 |
52 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/interface/patterns/ble_thread/tl/tl_thread_hci.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_thread_hci.h
4 | * @author MCD Application Team
5 | * @brief Constants and functions for managing Thread TL
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef __TL_THREAD_HCI_H_
22 | #define __TL_THREAD_HCI_H_
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 | #include "stm32wbxx_core_interface_def.h"
26 |
27 | /* Exported functions ------------------------------------------------------------*/
28 | void Pre_OtCmdProcessing(void);
29 | void Ot_Cmd_Transfer(void);
30 | Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdPayloadBuffer(void);
31 | Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdRspPayloadBuffer(void);
32 | Thread_OT_Cmd_Request_t* THREAD_Get_NotificationPayloadBuffer(void);
33 |
34 | /* Exported defines -----------------------------------------------------------*/
35 |
36 |
37 | #endif /* __TL_THREAD_HCI_H_ */
38 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/interface/patterns/ble_thread/tl/tl_zigbee_hci.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_zigbee_hci.c
4 | * @author MCD Application Team
5 | * @brief Function for managing HCI interface.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Includes ------------------------------------------------------------------*/
22 | #include "stm32_wpan_common.h"
23 | #include "hw.h"
24 |
25 | #include "stm_list.h"
26 |
27 | #include "tl.h"
28 | #include "tl_zigbee_hci.h"
29 |
30 |
31 | /* Private typedef -----------------------------------------------------------*/
32 | /* Private defines -----------------------------------------------------------*/
33 |
34 |
35 |
36 | /* Private macros ------------------------------------------------------------*/
37 |
38 | /* Public variables ---------------------------------------------------------*/
39 |
40 |
41 |
42 | /* Private variables ---------------------------------------------------------*/
43 |
44 |
45 | /* Private function prototypes -----------------------------------------------*/
46 |
47 |
48 | /* Private functions ----------------------------------------------------------*/
49 | __weak void Pre_ZigbeeCmdProcessing(void){return;}
50 | __weak void ZIGBEE_CmdTransfer(void){return;}
51 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdPayloadBuffer(void){return 0;}
52 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdRspPayloadBuffer(void){return 0;}
53 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_NotificationPayloadBuffer(void){return 0;}
54 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_M0RequestPayloadBuffer(void){return 0;}
55 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/interface/patterns/ble_thread/tl/tl_zigbee_hci.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_zigbee_hci.h
4 | * @author MCD Application Team
5 | * @brief Constants and functions for managing Thread TL
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef __TL_ZIGBEE_HCI_H_
22 | #define __TL_ZIGBEE_HCI_H_
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 | #include "zigbee_core.h"
26 | #include "stm32wbxx_core_interface_def.h"
27 | #include "tl.h"
28 | #include
29 |
30 |
31 | /* Exported functions ------------------------------------------------------------*/
32 | void Pre_ZigbeeCmdProcessing(void);
33 | void ZIGBEE_CmdTransfer(void);
34 | Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdPayloadBuffer(void);
35 | Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdRspPayloadBuffer(void);
36 | Zigbee_Cmd_Request_t* ZIGBEE_Get_NotificationPayloadBuffer(void);
37 | Zigbee_Cmd_Request_t* ZIGBEE_Get_M0RequestPayloadBuffer(void);
38 |
39 | /* Exported defines -----------------------------------------------------------*/
40 |
41 |
42 | #endif /* __TL_ZIGBEE_HCI_H_*/
43 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/utilities/otp.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file otp.c
4 | * @author MCD Application Team
5 | * @brief OTP manager
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Includes ------------------------------------------------------------------*/
22 | #include "utilities_common.h"
23 |
24 | #include "otp.h"
25 |
26 | /* Private typedef -----------------------------------------------------------*/
27 | /* Private defines -----------------------------------------------------------*/
28 | /* Private macros ------------------------------------------------------------*/
29 | /* Private variables ---------------------------------------------------------*/
30 | /* Global variables ----------------------------------------------------------*/
31 | /* Private function prototypes -----------------------------------------------*/
32 | /* Functions Definition ------------------------------------------------------*/
33 |
34 | uint8_t * OTP_Read( uint8_t id )
35 | {
36 | uint8_t *p_id;
37 |
38 | p_id = (uint8_t*)(CFG_OTP_END_ADRESS - 7) ;
39 |
40 | while( ((*( p_id + 7 )) != id) && ( p_id != (uint8_t*)CFG_OTP_BASE_ADDRESS) )
41 | {
42 | p_id -= 8 ;
43 | }
44 |
45 | if((*( p_id + 7 )) != id)
46 | {
47 | p_id = 0 ;
48 | }
49 |
50 | return p_id ;
51 | }
52 |
53 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
54 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/STM32_WPAN/utilities/stm_list.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file stm_list.h
4 | * @author MCD Application Team
5 | * @brief Header file for linked list library.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef _STM_LIST_H_
22 | #define _STM_LIST_H_
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 |
26 | typedef struct _tListNode {
27 | struct _tListNode * next;
28 | struct _tListNode * prev;
29 | } tListNode;
30 |
31 | void LST_init_head (tListNode * listHead);
32 |
33 | uint8_t LST_is_empty (tListNode * listHead);
34 |
35 | void LST_insert_head (tListNode * listHead, tListNode * node);
36 |
37 | void LST_insert_tail (tListNode * listHead, tListNode * node);
38 |
39 | void LST_remove_node (tListNode * node);
40 |
41 | void LST_remove_head (tListNode * listHead, tListNode ** node );
42 |
43 | void LST_remove_tail (tListNode * listHead, tListNode ** node );
44 |
45 | void LST_insert_node_after (tListNode * node, tListNode * ref_node);
46 |
47 | void LST_insert_node_before (tListNode * node, tListNode * ref_node);
48 |
49 | int LST_get_size (tListNode * listHead);
50 |
51 | void LST_get_next_node (tListNode * ref_node, tListNode ** node);
52 |
53 | void LST_get_prev_node (tListNode * ref_node, tListNode ** node);
54 |
55 | #endif /* _STM_LIST_H_ */
56 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/app_debug.h:
--------------------------------------------------------------------------------
1 | /* USER CODE BEGIN Header */
2 | /**
3 | ******************************************************************************
4 | * File Name : app_debug.h
5 | * Description : Header for app_debug.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2020 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 | /* USER CODE END Header */
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __APP_DEBUG_H
23 | #define __APP_DEBUG_H
24 |
25 | #ifdef __cplusplus
26 | extern "C" {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /* Private includes ----------------------------------------------------------*/
32 | /* USER CODE BEGIN Includes */
33 |
34 | /* USER CODE END Includes */
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* USER CODE BEGIN ET */
38 |
39 | /* USER CODE END ET */
40 |
41 | /* Exported constants --------------------------------------------------------*/
42 | /* USER CODE BEGIN EC */
43 |
44 | /* USER CODE END EC */
45 |
46 | /* Exported variables --------------------------------------------------------*/
47 | /* USER CODE BEGIN EV */
48 |
49 | /* USER CODE END EV */
50 |
51 | /* Exported macros ------------------------------------------------------------*/
52 | /* USER CODE BEGIN EM */
53 |
54 | /* USER CODE END EM */
55 |
56 | /* Exported functions ---------------------------------------------*/
57 | void APPD_Init( void );
58 | void APPD_EnableCPU2( void );
59 | /* USER CODE BEGIN EF */
60 |
61 | /* USER CODE END EF */
62 |
63 | #ifdef __cplusplus
64 | } /* extern "C" */
65 | #endif
66 |
67 | #endif /*__APP_DEBUG_H */
68 |
69 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
70 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/app_entry.h:
--------------------------------------------------------------------------------
1 | /* USER CODE BEGIN Header */
2 | /**
3 | ******************************************************************************
4 | * File Name : app_entry.h
5 | * Description : App entry configuration file for STM32WPAN Middleware.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2020 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 | /* USER CODE END Header */
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef APP_ENTRY_H
23 | #define APP_ENTRY_H
24 |
25 | #ifdef __cplusplus
26 | extern "C" {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /* Private includes ----------------------------------------------------------*/
32 | /* USER CODE BEGIN Includes */
33 |
34 | /* USER CODE END Includes */
35 |
36 | /* Exported types ------------------------------------------------------------*/
37 | /* USER CODE BEGIN ET */
38 |
39 | /* USER CODE END ET */
40 |
41 | /* Exported constants --------------------------------------------------------*/
42 | /* USER CODE BEGIN EC */
43 |
44 | /* USER CODE END EC */
45 |
46 | /* Exported variables --------------------------------------------------------*/
47 | /* USER CODE BEGIN EV */
48 |
49 | /* USER CODE END EV */
50 |
51 | /* Exported macros ------------------------------------------------------------*/
52 | /* USER CODE BEGIN EM */
53 |
54 | /* USER CODE END EM */
55 |
56 | /* Exported functions ---------------------------------------------*/
57 | void APPE_Init( void );
58 | /* USER CODE BEGIN EF */
59 |
60 | /* USER CODE END EF */
61 |
62 | #ifdef __cplusplus
63 | } /* extern "C" */
64 | #endif
65 |
66 | #endif /*APP_ENTRY_H */
67 |
68 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
69 |
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/stack_binary/README.md:
--------------------------------------------------------------------------------
1 | # How to flash BLE stack in the tracker
2 | Here is the process to program the BLE stack into the STM32WB55CG M0 core
3 |
4 | - Install STM32CubeProgrammer available here : https://www.st.com/en/development-tools/stm32cubeprog.html
5 | - copy FUS and Stack binaries in PATH\STM32CubeProgrammer\bin
6 | - Put STM boot0 to VCC, to put STM32 in bootloader mode
7 | - Open a CMD
8 | - Go in the folder C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin
9 | - Run the following command lines :
10 | - `STM32_Programmer_CLI.exe -c port=usb1 -fwdelete`
11 | - `STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1`: read the FUSversion
12 | - if @0x20030030: 00050300: FUSv0.5.3:
13 | - `STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_FUS_fw_for_fus_0_5_3.bin 0x080EC000 firstinstall=0.`
14 | - if @0x20030030: 010X0Y00: FUSv1.x.y:
15 | - `STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_FUS_fw.bin 0x080EC000 firstinstall=0`
16 | - if @0x20030030: 01020X00: FUSv1.2.0 => We’re done
17 | - Update the BLE stack :
18 | - `STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade stm32wb5x_BLE_Stack_full_fw.bin 0x080CB000 firstinstall=1`
19 | - Put STM boot0 to GND, to put STM32 in run mode
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/stack_binary/stm32wb5x_BLE_Stack_full_fw.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/middleware/ble/stack_binary/stm32wb5x_BLE_Stack_full_fw.bin
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/stack_binary/stm32wb5x_FUS_fw.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/middleware/ble/stack_binary/stm32wb5x_FUS_fw.bin
--------------------------------------------------------------------------------
/apps/tracker_application/middleware/ble/stack_binary/stm32wb5x_FUS_fw_for_fus_0_5_3.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/apps/tracker_application/middleware/ble/stack_binary/stm32wb5x_FUS_fw_for_fus_0_5_3.bin
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb30xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb30xx.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb35xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb35xx.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb50xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb50xx.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb55xx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb55xx.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb5mxx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wb5mxx.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wbxx.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Include/stm32wbxx.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/arm/linker/stm32wb30xx_flash_cm4.sct:
--------------------------------------------------------------------------------
1 | ; *************************************************************
2 | ; *** Scatter-Loading Description File generated by uVision ***
3 | ; *************************************************************
4 |
5 | LR_IROM1 0x08000000 0x00040000 { ; load region size_region
6 | ER_IROM1 0x08000000 0x00040000 { ; load address = execution address
7 | *.o (RESET, +First)
8 | *(InRoot$$Sections)
9 | .ANY (+RO)
10 | }
11 | RW_IRAM1 0x20000004 0x7FFC { ; RW data
12 | .ANY (+RW +ZI)
13 | }
14 | RW_RAM_SHARED 0x20030000 0x2800 { ; RW data
15 | *(MAPPING_TABLE)
16 | *(MB_MEM1)
17 | *(MB_MEM2)
18 | }
19 | }
20 |
21 |
22 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/arm/linker/stm32wb35xx_flash_cm4.sct:
--------------------------------------------------------------------------------
1 | ; *************************************************************
2 | ; *** Scatter-Loading Description File generated by uVision ***
3 | ; *************************************************************
4 |
5 | LR_IROM1 0x08000000 0x00040000 { ; load region size_region
6 | ER_IROM1 0x08000000 0x00040000 { ; load address = execution address
7 | *.o (RESET, +First)
8 | *(InRoot$$Sections)
9 | .ANY (+RO)
10 | }
11 | RW_IRAM1 0x20000004 0x7FFC { ; RW data
12 | .ANY (+RW +ZI)
13 | }
14 | RW_RAM_SHARED 0x20030000 0x2800 { ; RW data
15 | *(MAPPING_TABLE)
16 | *(MB_MEM1)
17 | *(MB_MEM2)
18 | }
19 | }
20 |
21 |
22 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/arm/linker/stm32wb50xx_flash_cm4.sct:
--------------------------------------------------------------------------------
1 | ; *************************************************************
2 | ; *** Scatter-Loading Description File generated by uVision ***
3 | ; *************************************************************
4 |
5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region
6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address
7 | *.o (RESET, +First)
8 | *(InRoot$$Sections)
9 | .ANY (+RO)
10 | }
11 | RW_IRAM1 0x20000004 0xFFFC { ; RW data
12 | .ANY (+RW +ZI)
13 | }
14 | RW_RAM_SHARED 0x20030000 0x2800 { ; RW data
15 | *(MAPPING_TABLE)
16 | *(MB_MEM1)
17 | *(MB_MEM2)
18 | }
19 | }
20 |
21 |
22 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/arm/linker/stm32wb55xx_flash_cm4.sct:
--------------------------------------------------------------------------------
1 | ; *************************************************************
2 | ; *** Scatter-Loading Description File generated by uVision ***
3 | ; *************************************************************
4 |
5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region
6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address
7 | *.o (RESET, +First)
8 | *(InRoot$$Sections)
9 | .ANY (+RO)
10 | }
11 | RW_IRAM1 0x20000004 0x2FFFC { ; RW data
12 | .ANY (+RW +ZI)
13 | }
14 | RW_RAM_SHARED 0x20030000 0x2800 { ; RW data
15 | *(MAPPING_TABLE)
16 | *(MB_MEM1)
17 | *(MB_MEM2)
18 | }
19 | }
20 |
21 |
22 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/arm/linker/stm32wb5mxx_flash_cm4.sct:
--------------------------------------------------------------------------------
1 | ; *************************************************************
2 | ; *** Scatter-Loading Description File generated by uVision ***
3 | ; *************************************************************
4 |
5 | LR_IROM1 0x08000000 0x00080000 { ; load region size_region
6 | ER_IROM1 0x08000000 0x00080000 { ; load address = execution address
7 | *.o (RESET, +First)
8 | *(InRoot$$Sections)
9 | .ANY (+RO)
10 | }
11 | RW_IRAM1 0x20000004 0x2FFFC { ; RW data
12 | .ANY (+RW +ZI)
13 | }
14 | RW_RAM_SHARED 0x20030000 0x2800 { ; RW data
15 | *(MAPPING_TABLE)
16 | *(MB_MEM1)
17 | *(MB_MEM2)
18 | }
19 | }
20 |
21 |
22 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb30xx_flash_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | /***** FLASH Part dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x0803FFFF;
10 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000004;
11 | define symbol __ICFEDIT_region_RAM_end__ = 0x20007FFF;
12 | /*-Sizes-*/
13 | define symbol __ICFEDIT_size_cstack__ = 0x1000;
14 | define symbol __ICFEDIT_size_heap__ = 0x400;
15 | /**** End of ICF editor section. ###ICF###*/
16 |
17 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
18 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x200327FF;
19 |
20 | define memory mem with size = 4G;
21 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
22 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
23 | define region RAM_SHARED_region = mem:[from __ICFEDIT_region_RAM_SHARED_start__ to __ICFEDIT_region_RAM_SHARED_end__];
24 |
25 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
26 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
27 |
28 | /* MB_MEM1 and MB_MEM2 are sections reserved to mailbox communication. It is placed in the shared memory */
29 | initialize by copy { readwrite };
30 | do not initialize { section .noinit,
31 | section MAPPING_TABLE,
32 | section MB_MEM1 };
33 |
34 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
35 |
36 | place in ROM_region { readonly };
37 | place in RAM_region { readwrite,block CSTACK, block HEAP };
38 | place in RAM_SHARED_region { first section MAPPING_TABLE};
39 | place in RAM_SHARED_region { section MB_MEM1};
40 | place in RAM_SHARED_region { section MB_MEM2};
41 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb30xx_sram_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x20000000;
6 | /*-Memory Regions-*/
7 | /***** RAM dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x20000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x20003FFF;
10 |
11 | define symbol __ICFEDIT_region_RAM_start__ = 0x20004000 ;
12 | define symbol __ICFEDIT_region_RAM_end__ = 0x20007FFF ;
13 |
14 | /***** RAM2a *****/
15 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20038000 ;
16 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x2003A7FF ;
17 |
18 | /*-Sizes-*/
19 | define symbol __ICFEDIT_size_cstack__ = 0x400;
20 | define symbol __ICFEDIT_size_heap__ = 0x200;
21 | /**** End of ICF editor section. ###ICF###*/
22 |
23 |
24 | define memory mem with size = 4G;
25 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
26 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
27 |
28 |
29 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31 |
32 | initialize by copy { readwrite };
33 | do not initialize { section .noinit };
34 |
35 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
36 |
37 | place in ROM_region { readonly };
38 | place in RAM_region { readwrite,
39 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb35xx_flash_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | /***** FLASH Part dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x0803FFFF;
10 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000004;
11 | define symbol __ICFEDIT_region_RAM_end__ = 0x20007FFF;
12 | /*-Sizes-*/
13 | define symbol __ICFEDIT_size_cstack__ = 0x1000;
14 | define symbol __ICFEDIT_size_heap__ = 0x400;
15 | /**** End of ICF editor section. ###ICF###*/
16 |
17 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
18 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x200327FF;
19 |
20 | define memory mem with size = 4G;
21 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
22 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
23 | define region RAM_SHARED_region = mem:[from __ICFEDIT_region_RAM_SHARED_start__ to __ICFEDIT_region_RAM_SHARED_end__];
24 |
25 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
26 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
27 |
28 | /* MB_MEM1 and MB_MEM2 are sections reserved to mailbox communication. It is placed in the shared memory */
29 | initialize by copy { readwrite };
30 | do not initialize { section .noinit,
31 | section MAPPING_TABLE,
32 | section MB_MEM1 };
33 |
34 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
35 |
36 | place in ROM_region { readonly };
37 | place in RAM_region { readwrite,block CSTACK, block HEAP };
38 | place in RAM_SHARED_region { first section MAPPING_TABLE};
39 | place in RAM_SHARED_region { section MB_MEM1};
40 | place in RAM_SHARED_region { section MB_MEM2};
41 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb35xx_sram_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x20000000;
6 | /*-Memory Regions-*/
7 | /***** RAM dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x20000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x20003FFF;
10 |
11 | define symbol __ICFEDIT_region_RAM_start__ = 0x20004000 ;
12 | define symbol __ICFEDIT_region_RAM_end__ = 0x20007FFF ;
13 |
14 | /***** RAM2a *****/
15 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20038000 ;
16 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x2003A7FF ;
17 |
18 | /*-Sizes-*/
19 | define symbol __ICFEDIT_size_cstack__ = 0x400;
20 | define symbol __ICFEDIT_size_heap__ = 0x200;
21 | /**** End of ICF editor section. ###ICF###*/
22 |
23 |
24 | define memory mem with size = 4G;
25 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
26 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
27 |
28 |
29 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31 |
32 | initialize by copy { readwrite };
33 | do not initialize { section .noinit };
34 |
35 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
36 |
37 | place in ROM_region { readonly };
38 | place in RAM_region { readwrite,
39 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb50xx_flash_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | /***** FLASH Part dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x0807FFFF;
10 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000004;
11 | define symbol __ICFEDIT_region_RAM_end__ = 0x2000FFFF;
12 | /*-Sizes-*/
13 | define symbol __ICFEDIT_size_cstack__ = 0x1000;
14 | define symbol __ICFEDIT_size_heap__ = 0x400;
15 | /**** End of ICF editor section. ###ICF###*/
16 |
17 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
18 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x200327FF;
19 |
20 | define memory mem with size = 4G;
21 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
22 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
23 | define region RAM_SHARED_region = mem:[from __ICFEDIT_region_RAM_SHARED_start__ to __ICFEDIT_region_RAM_SHARED_end__];
24 |
25 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
26 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
27 |
28 | /* MB_MEM1 and MB_MEM2 are sections reserved to mailbox communication. It is placed in the shared memory */
29 | initialize by copy { readwrite };
30 | do not initialize { section .noinit,
31 | section MAPPING_TABLE,
32 | section MB_MEM1 };
33 |
34 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
35 |
36 | place in ROM_region { readonly };
37 | place in RAM_region { readwrite,block CSTACK, block HEAP };
38 | place in RAM_SHARED_region { first section MAPPING_TABLE};
39 | place in RAM_SHARED_region { section MB_MEM1};
40 | place in RAM_SHARED_region { section MB_MEM2};
41 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb50xx_sram_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x20000000;
6 | /*-Memory Regions-*/
7 | /***** RAM dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x20000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x20007FFF;
10 |
11 | define symbol __ICFEDIT_region_RAM_start__ = 0x20008000 ;
12 | define symbol __ICFEDIT_region_RAM_end__ = 0x2000FFFF ;
13 |
14 | /***** RAM2a *****/
15 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000 ;
16 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x20037FFF ;
17 |
18 | /*-Sizes-*/
19 | define symbol __ICFEDIT_size_cstack__ = 0x400;
20 | define symbol __ICFEDIT_size_heap__ = 0x200;
21 | /**** End of ICF editor section. ###ICF###*/
22 |
23 |
24 | define memory mem with size = 4G;
25 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
26 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
27 |
28 |
29 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31 |
32 | initialize by copy { readwrite };
33 | do not initialize { section .noinit };
34 |
35 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
36 |
37 | place in ROM_region { readonly };
38 | place in RAM_region { readwrite,
39 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb55xx_flash_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | /***** FLASH Part dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x0807FFFF;
10 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000004;
11 | define symbol __ICFEDIT_region_RAM_end__ = 0x2002FFFF;
12 | /*-Sizes-*/
13 | define symbol __ICFEDIT_size_cstack__ = 0x1000;
14 | define symbol __ICFEDIT_size_heap__ = 0x400;
15 | /**** End of ICF editor section. ###ICF###*/
16 |
17 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
18 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x200327FF;
19 |
20 | define memory mem with size = 4G;
21 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
22 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
23 | define region RAM_SHARED_region = mem:[from __ICFEDIT_region_RAM_SHARED_start__ to __ICFEDIT_region_RAM_SHARED_end__];
24 |
25 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
26 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
27 |
28 | /* MB_MEM1 and MB_MEM2 are sections reserved to mailbox communication. It is placed in the shared memory */
29 | initialize by copy { readwrite };
30 | do not initialize { section .noinit,
31 | section MAPPING_TABLE,
32 | section MB_MEM1 };
33 |
34 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
35 |
36 | place in ROM_region { readonly };
37 | place in RAM_region { readwrite,block CSTACK, block HEAP };
38 | place in RAM_SHARED_region { first section MAPPING_TABLE};
39 | place in RAM_SHARED_region { section MB_MEM1};
40 | place in RAM_SHARED_region { section MB_MEM2};
41 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb55xx_sram_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x20000000;
6 | /*-Memory Regions-*/
7 | /***** RAM dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x20000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x20017FFF;
10 |
11 | define symbol __ICFEDIT_region_RAM_start__ = 0x20018000 ;
12 | define symbol __ICFEDIT_region_RAM_end__ = 0x2002FFFF ;
13 |
14 | /***** RAM2a *****/
15 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000 ;
16 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x20037FFF ;
17 |
18 | /*-Sizes-*/
19 | define symbol __ICFEDIT_size_cstack__ = 0x400;
20 | define symbol __ICFEDIT_size_heap__ = 0x200;
21 | /**** End of ICF editor section. ###ICF###*/
22 |
23 |
24 | define memory mem with size = 4G;
25 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
26 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
27 |
28 |
29 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31 |
32 | initialize by copy { readwrite };
33 | do not initialize { section .noinit };
34 |
35 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
36 |
37 | place in ROM_region { readonly };
38 | place in RAM_region { readwrite,
39 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb5mxx_flash_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x08000000;
6 | /*-Memory Regions-*/
7 | /***** FLASH Part dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x0807FFFF;
10 | define symbol __ICFEDIT_region_RAM_start__ = 0x20000004;
11 | define symbol __ICFEDIT_region_RAM_end__ = 0x2002FFFF;
12 | /*-Sizes-*/
13 | define symbol __ICFEDIT_size_cstack__ = 0x1000;
14 | define symbol __ICFEDIT_size_heap__ = 0x400;
15 | /**** End of ICF editor section. ###ICF###*/
16 |
17 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
18 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x200327FF;
19 |
20 | define memory mem with size = 4G;
21 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
22 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
23 | define region RAM_SHARED_region = mem:[from __ICFEDIT_region_RAM_SHARED_start__ to __ICFEDIT_region_RAM_SHARED_end__];
24 |
25 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
26 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
27 |
28 | /* MB_MEM1 and MB_MEM2 are sections reserved to mailbox communication. It is placed in the shared memory */
29 | initialize by copy { readwrite };
30 | do not initialize { section .noinit,
31 | section MAPPING_TABLE,
32 | section MB_MEM1 };
33 |
34 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
35 |
36 | place in ROM_region { readonly };
37 | place in RAM_region { readwrite,block CSTACK, block HEAP };
38 | place in RAM_SHARED_region { first section MAPPING_TABLE};
39 | place in RAM_SHARED_region { section MB_MEM1};
40 | place in RAM_SHARED_region { section MB_MEM2};
41 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Device/ST/STM32WBxx/Source/Templates/iar/linker/stm32wb5mxx_sram_cm4.icf:
--------------------------------------------------------------------------------
1 | /*###ICF### Section handled by ICF editor, don't touch! ****/
2 | /*-Editor annotation file-*/
3 | /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
4 | /*-Specials-*/
5 | define symbol __ICFEDIT_intvec_start__ = 0x20000000;
6 | /*-Memory Regions-*/
7 | /***** RAM dedicated to M4 *****/
8 | define symbol __ICFEDIT_region_ROM_start__ = 0x20000000;
9 | define symbol __ICFEDIT_region_ROM_end__ = 0x20017FFF;
10 |
11 | define symbol __ICFEDIT_region_RAM_start__ = 0x20018000 ;
12 | define symbol __ICFEDIT_region_RAM_end__ = 0x2002FFFF ;
13 |
14 | /***** RAM2a *****/
15 | define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000 ;
16 | define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x20037FFF ;
17 |
18 | /*-Sizes-*/
19 | define symbol __ICFEDIT_size_cstack__ = 0x400;
20 | define symbol __ICFEDIT_size_heap__ = 0x200;
21 | /**** End of ICF editor section. ###ICF###*/
22 |
23 |
24 | define memory mem with size = 4G;
25 | define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__];
26 | define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
27 |
28 |
29 | define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
30 | define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
31 |
32 | initialize by copy { readwrite };
33 | do not initialize { section .noinit };
34 |
35 | place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
36 |
37 | place in ROM_region { readonly };
38 | place in RAM_region { readwrite,
39 | block CSTACK, block HEAP };
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/CMSIS/Include/cmsis_version.h:
--------------------------------------------------------------------------------
1 | /**************************************************************************//**
2 | * @file cmsis_version.h
3 | * @brief CMSIS Core(M) Version definitions
4 | * @version V5.0.2
5 | * @date 19. April 2017
6 | ******************************************************************************/
7 | /*
8 | * Copyright (c) 2009-2017 ARM Limited. All rights reserved.
9 | *
10 | * SPDX-License-Identifier: Apache-2.0
11 | *
12 | * Licensed under the Apache License, Version 2.0 (the License); you may
13 | * not use this file except in compliance with the License.
14 | * You may obtain a copy of the License at
15 | *
16 | * www.apache.org/licenses/LICENSE-2.0
17 | *
18 | * Unless required by applicable law or agreed to in writing, software
19 | * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 | * See the License for the specific language governing permissions and
22 | * limitations under the License.
23 | */
24 |
25 | #if defined ( __ICCARM__ )
26 | #pragma system_include /* treat file as system include file for MISRA check */
27 | #elif defined (__clang__)
28 | #pragma clang system_header /* treat file as system include file */
29 | #endif
30 |
31 | #ifndef __CMSIS_VERSION_H
32 | #define __CMSIS_VERSION_H
33 |
34 | /* CMSIS Version definitions */
35 | #define __CM_CMSIS_VERSION_MAIN ( 5U) /*!< [31:16] CMSIS Core(M) main version */
36 | #define __CM_CMSIS_VERSION_SUB ( 1U) /*!< [15:0] CMSIS Core(M) sub version */
37 | #define __CM_CMSIS_VERSION ((__CM_CMSIS_VERSION_MAIN << 16U) | \
38 | __CM_CMSIS_VERSION_SUB ) /*!< CMSIS Core(M) version number */
39 | #endif
40 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/STM32WBxx_HAL_Driver/License.md:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2019 STMicroelectronics
2 |
3 | This software component is licensed by STMicroelectronics under the **BSD-3-Clause** license. You may not use this software except in compliance with this license. You may obtain a copy of the license [here](https://opensource.org/licenses/BSD-3-Clause).
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/STM32WBxx_HAL_Driver/Src/stm32wbxx_hal_timebase_rtc_alarm_template.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/STM32WBxx_HAL_Driver/Src/stm32wbxx_hal_timebase_rtc_alarm_template.c
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Drivers/STM32WBxx_HAL_Driver/Src/stm32wbxx_hal_timebase_rtc_wakeup_template.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Drivers/STM32WBxx_HAL_Driver/Src/stm32wbxx_hal_timebase_rtc_wakeup_template.c
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/License.md:
--------------------------------------------------------------------------------
1 | | Component | License | Copyright |
2 | |:--------- |:------- |:----------|
3 | | CMSIS | BSD-3-Clause | Copyright (c) 2009-2017 ARM Limited. All rights reserved. |
4 | | CMSIS Device | BSD-3-Clause | STMicroelectronics |
5 | | STM32WB HAL | BSD-3-Clause | STMicroelectronics |
6 | | BSP P-NUCLEO-WB55.Nucleo | BSD-3-Clause | STMicroelectronics |
7 | | BSP P-NUCLEO-WB55.USBDongle | BSD-3-Clause | STMicroelectronics |
8 | | BSP Components | BSD-3-Clause | STMicroelectronics |
9 | | BSP Adafruit shield | BSD-3-Clause | STMicroelectronics |
10 | | FreeRTOS kernel | MIT | Copyright (C) 2017 Amazon.com, Inc. or its affiliates |
11 | | FatFS | BSD-3-Clause | ChaN - STMicroelectronics |
12 | | STM32_USB_Device_Library | ST SLA0044 | STMicroelectronics |
13 | | STM32_TouchSensing_Library | ST SLA0044 | STMicroelectronics |
14 | | STM32_WPAN | ST SLA0044 | STMicroelectronics |
15 | | STM32 Projects | ST SLA0044 (BSD-3-Clause for basic Examples) | STMicroelectronics |
16 | | STM32 Utilities | BSD-3-Clause | STMicroelectronics |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/core/ble_core.h:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * @file ble_core.h
3 | * @author MCD Application Team
4 | * @brief This file contains the definitions for BLE stack
5 | *****************************************************************************
6 | * @attention
7 | *
8 | * © Copyright (c) 2019 STMicroelectronics.
9 | * All rights reserved.
10 | *
11 | * This software component is licensed by ST under Ultimate Liberty license
12 | * SLA0044, the "License"; You may not use this file except in compliance with
13 | * the License. You may obtain a copy of the License at:
14 | * www.st.com/SLA0044
15 | *
16 | ******************************************************************************
17 | */
18 |
19 | #ifndef BLE_CORE_H__
20 | #define BLE_CORE_H__
21 |
22 |
23 | /* BLE standard definitions */
24 | #include "ble_std.h"
25 |
26 | /* BLE API definitions */
27 | #include "ble_defs.h"
28 | #include "auto/ble_gap_aci.h"
29 | #include "auto/ble_gatt_aci.h"
30 | #include "auto/ble_hal_aci.h"
31 | #include "auto/ble_hci_le.h"
32 | #include "auto/ble_l2cap_aci.h"
33 | #include "auto/ble_events.h"
34 |
35 | /* BLE stack buffer size definitions */
36 | #include "ble_bufsize.h"
37 |
38 | /* BLE legacy definitions */
39 | #include "ble_legacy.h"
40 |
41 |
42 | #endif /* ! BLE_CORE_H__ */
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE***/
45 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/core/template/osal.c:
--------------------------------------------------------------------------------
1 | /*****************************************************************************
2 | * @file osal.c
3 | * @author MCD Application Team
4 | * @brief Implements the interface defined in "osal.h" needed by the stack.
5 | * Actually, only memset, memcpy and memcmp wrappers are implemented.
6 | *****************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | #include
21 | #include "osal.h"
22 |
23 |
24 | /**
25 | * Osal_MemCpy
26 | *
27 | */
28 |
29 | void* Osal_MemCpy( void *dest, const void *src, unsigned int size )
30 | {
31 | return memcpy( dest, src, size );
32 | }
33 |
34 | /**
35 | * Osal_MemSet
36 | *
37 | */
38 |
39 | void* Osal_MemSet( void *ptr, int value, unsigned int size )
40 | {
41 | return memset( ptr, value, size );
42 | }
43 |
44 | /**
45 | * Osal_MemCmp
46 | *
47 | */
48 | int Osal_MemCmp( const void *s1, const void *s2, unsigned int size )
49 | {
50 | return memcmp( s1, s2, size );
51 | }
52 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/AES/aes.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file aes.h
4 | * @author MCD Application Team
5 | * @brief Container for the AES functionalities
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Includes ------------------------------------------------------------------*/
21 | #include "Common/aes_low_level.h"
22 | #include "Common/aes_common.h"
23 |
24 |
25 | #ifdef INCLUDE_ECB
26 | #include "ECB/aes_ecb.h"
27 | #endif
28 |
29 | #ifdef INCLUDE_CBC
30 | #include "CBC/aes_cbc.h"
31 | #endif
32 |
33 | #ifdef INCLUDE_CTR
34 | #include "CTR/aes_ctr.h"
35 | #endif
36 |
37 | #ifdef INCLUDE_CFB
38 | #include "CFB/aes_cfb.h"
39 | #endif
40 |
41 | #ifdef INCLUDE_OFB
42 | #include "OFB/aes_ofb.h"
43 | #endif
44 |
45 | #ifdef INCLUDE_XTS
46 | #include "XTS/aes_xts.h"
47 | #endif
48 |
49 | #ifdef INCLUDE_GCM
50 | #include "GCM/aes_gcm.h"
51 | #endif
52 |
53 | #ifdef INCLUDE_CCM
54 | #include "CCM/aes_ccm.h"
55 | #endif
56 |
57 | #ifdef INCLUDE_CMAC
58 | #include "CMAC/aes_cmac.h"
59 | #endif
60 |
61 | #ifdef INCLUDE_KEY_WRAP
62 | #include "KEYWRAP/aes_keywrap.h"
63 | #endif
64 |
65 |
66 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
67 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/C25519/c25519.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file c5519.h
4 | * @author MCD Application Team
5 | * @brief Container for ed25519 functionalities
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __C25519_H__
22 | #define __C25519_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /** @addtogroup C25519
30 | * @{
31 | */
32 | /* Includes ------------------------------------------------------------------*/
33 | #include
34 | /* Exported types ------------------------------------------------------------*/
35 | /* Exported constants --------------------------------------------------------*/
36 | /* Exported macro ------------------------------------------------------------*/
37 | /* Exported functions ------------------------------------------------------- */
38 | int32_t C25519keyGen (uint8_t *P_pPrivateKey, \
39 | uint8_t *P_pPublicKey);
40 | \
41 |
42 | int32_t C25519keyExchange (uint8_t *P_pSharedSecret, \
43 | const uint8_t *P_pPrivateKey, \
44 | const uint8_t *P_pPublicKey);
45 | /**
46 | * @}
47 | */
48 | /* Lower level functionality. Useful for testing, might be used in real world if there is small NVM */
49 |
50 |
51 | #ifdef __cplusplus
52 | }
53 | #endif
54 |
55 | #endif /* __C25519_H__ */
56 |
57 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
58 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/Common_chacha20_poly1305/chacha20_core.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file chacha20_core.h
4 | * @author MCD Application Team
5 | * @brief Implements the core chacha functionality
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /*
21 | * The implementation of chacha20 is just an adapatation (for consistency with
22 | * the library) of code coming from: chacha-ref.c version 20080118 D. J. Bernstein
23 | * Which was released in Public domain.
24 | */
25 | #ifndef __CHACHA20_CORE_H__
26 | #define __CHACHA20_CORE_H__
27 |
28 | /* Includes ------------------------------------------------------------------*/
29 |
30 | /* Private typedef -----------------------------------------------------------*/
31 | /* Private define ------------------------------------------------------------*/
32 | /* Private macro -------------------------------------------------------------*/
33 |
34 | /** @addtogroup SymKeylowlevel
35 | * @{
36 | */
37 |
38 | /** @defgroup CHACHAlowlevel ChaCha
39 | * @brief Internal ChaCha Functions and Macros
40 | * @{
41 | */
42 |
43 | /* Private function prototypes -----------------------------------------------*/
44 | /* Private functions ---------------------------------------------------------*/
45 |
46 | void salsa20_wordtobyte(uint8_t output[64],\
47 | const uint32_t input[16]);
48 |
49 | /**
50 | * @} SymKeylowlevel
51 | */
52 |
53 | /**
54 | * @} CHACHAlowlevel
55 | */
56 | #endif /* __CHACHA20_CORE_H__ */
57 |
58 |
59 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
60 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/Common_chacha20_poly1305/poly1305_core.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file poly1305_core.h
4 | * @author MCD Application Team
5 | * @brief Implements the core poly1305 functionality
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | #ifndef __POLY1305_CORE_H__
21 | #define __POLY1305_CORE_H__
22 |
23 | /* Includes ------------------------------------------------------------------*/
24 |
25 | /* Private typedef -----------------------------------------------------------*/
26 | /* Private define ------------------------------------------------------------*/
27 | /* Private macro -------------------------------------------------------------*/
28 |
29 | /* Private variables ---------------------------------------------------------*/
30 |
31 | /* Private function prototypes -----------------------------------------------*/
32 | /* Private functions ---------------------------------------------------------*/
33 |
34 | /** @addtogroup SymKeylowlevel
35 | * @{
36 | */
37 |
38 | /** @defgroup POLY1305lowlevel Poly1305-AES
39 | * @brief Internal Poly1305-AES Function
40 | * @{
41 | */
42 |
43 | void Poly1305_Core_Update (uint32_t *P_h, \
44 | const uint32_t *P_r, \
45 | const uint8_t *P_pInput,\
46 | uint32_t P_LastBlock);
47 |
48 | void Poly1305_Core_Finish(uint32_t *P_h, \
49 | const uint32_t *P_pad,\
50 | uint32_t *P_pTag);
51 |
52 | /**
53 | * @}
54 | */
55 |
56 | /**
57 | * @}
58 | */
59 |
60 | #endif /* __POLY1305_CORE_H__ */
61 |
62 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
63 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/Common_ecc_rsa/MATH/BN/rng_bn.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file rng_bn.h
4 | * @author MCD Application Team
5 |
6 | * @brief Random Generation of BigNumers
7 | ******************************************************************************
8 | * @attention
9 | *
10 | * © Copyright (c) 2015 STMicroelectronics.
11 | * All rights reserved.
12 | *
13 | * This software component is licensed by ST under Image license SLA0044,
14 | * the "License"; You may not use this file except in compliance with the
15 | * License. You may obtain a copy of the License at:
16 | * http://www.st.com/SLA0044
17 | *
18 | ******************************************************************************
19 | */
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __CRL_RNG_BN_H__
23 | #define __CRL_RNG_BN_H__
24 |
25 | #ifdef __cplusplus
26 | extern "C"
27 | {
28 | #endif
29 |
30 | /* Includes ------------------------------------------------------------------*/
31 | #include "bn.h"
32 | #include "../../../RNG/rng.h"
33 |
34 | /** @ingroup RNGBN
35 | * @{
36 | */
37 | /* Exported types --------------------------------------------------------*/
38 | /* Exported constants --------------------------------------------------------*/
39 | /* Exported macro ------------------------------------------------------------*/
40 | /* Exported functions ------------------------------------------------------- */
41 |
42 | /* Generate random number of P_nBits bits */
43 | int32_t GenRndBN (int32_t P_nBits, \
44 | BigNum_stt *P_pRandBN, \
45 | RNGstate_stt *P_pRandomState);
46 | \
47 |
48 |
49 | /* Generate random big number smaller than P_pModBN ********************************/
50 | int32_t GenRndBNmodN (BigNum_stt *P_pRandBN, \
51 | const BigNum_stt *P_pModBN, \
52 | RNGstate_stt *P_pRandomState);
53 | \
54 |
55 | /**
56 | * @}
57 | */
58 |
59 | #ifdef __cplusplus
60 | }
61 | #endif
62 |
63 | #endif /*__CRL_RNG_BN_H__*/
64 |
65 |
66 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
67 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/Common_ecc_rsa/MATH/math.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file math.h
4 | * @author MCD Application Team
5 | * @brief Container for the mathematical functionalities
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /** @ingroup Math
21 | * @{
22 | */
23 | /* Includes ------------------------------------------------------------------*/
24 | #include "BN/bn.h"
25 | #include "BN/conv.h"
26 | #include "BN/arith.h"
27 | #include "BN/monty.h"
28 | #include "BN/modular.h"
29 | #ifdef INCLUDE_RNG
30 | #include "BN/rng_bn.h"
31 | #endif
32 |
33 | /* Exported types ------------------------------------------------------------*/
34 | /* Exported constants --------------------------------------------------------*/
35 | /* Exported macro ------------------------------------------------------------*/
36 | /* Exported functions ------------------------------------------------------- */
37 | /**
38 | * @} Math
39 | */
40 |
41 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
42 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/DES/des.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file des.h
4 | * @author MCD Application Team
5 | * @brief Container for the DES functionalities
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Includes ------------------------------------------------------------------*/
21 | #include "Common/des_common.h"
22 |
23 | #ifdef INCLUDE_ECB
24 | #include "ECB/des_ecb.h"
25 | #endif
26 |
27 | #ifdef INCLUDE_CBC
28 | #include "CBC/des_cbc.h"
29 | #endif
30 |
31 | /* Exported types ------------------------------------------------------------*/
32 | /* Exported constants --------------------------------------------------------*/
33 | /* Exported macro ------------------------------------------------------------*/
34 | /* Exported functions ------------------------------------------------------- */
35 |
36 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
37 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/ED25519/ed25519.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file ed25519.h
4 | * @author MCD Application Team
5 | * @brief Container for ed25519 functionalities
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __ED25519_H__
22 | #define __ED25519_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C" {
26 | #endif
27 |
28 | /** @addtogroup ED25519
29 | * @{
30 | */
31 | /* Includes ------------------------------------------------------------------*/
32 | #include
33 | /* Exported types ------------------------------------------------------------*/
34 |
35 | /* Exported constants --------------------------------------------------------*/
36 | /* Exported macro ------------------------------------------------------------*/
37 | /* Exported functions ------------------------------------------------------- */
38 | int32_t ED25519keyGen(uint8_t *P_pPrivateKey, uint8_t *P_pPublicKey);
39 | int32_t ED25519sign(uint8_t *P_pSignature, const uint8_t *P_pInput, int32_t P_InputSize, const uint8_t *P_pPrivateKey);
40 | int32_t ED25519verify(const uint8_t *P_pInput, int32_t P_InputSize, const uint8_t *P_pSignature, const uint8_t *P_pPublicKey);
41 |
42 | /**
43 | * @}
44 | */
45 |
46 | #ifdef __cplusplus
47 | }
48 | #endif
49 |
50 | #endif /* __ED25519_H__ */
51 |
52 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
53 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/Common/sha256_sha224_transform.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha256_sha224_transform.h
4 | * @author MCD Application Team
5 | * @brief SHA-256 Update function
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __SHA256_TRANSFORM_H__
22 | #define __SHA256_TRANSFORM_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Exported functions ------------------------------------------------------- */
30 | /* SHA256 Update */
31 | void SHA256Update(HASHctx_stt* P_pSHA256ctx, \
32 | const uint8_t* P_pInput, \
33 | uint32_t P_inputSize);
34 |
35 | #ifdef __cplusplus
36 | }
37 | #endif
38 |
39 | #endif /*__SHA256_TRANSFORM_H__*/
40 |
41 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
42 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/Common/sha512_sha384_transform.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha512_sha384_transform.h
4 | * @author MCD Application Team
5 | * @brief SHA-512 Update function
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __SHA512_TRANSFORM_H__
22 | #define __SHA512_TRANSFORM_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Exported functions ------------------------------------------------------- */
30 | /* SHA512 Update */
31 | void SHA512Update(HASHLctx_stt* P_pSHA512ctx, const uint8_t* P_pInput, uint32_t P_inputSize);
32 |
33 | #ifdef __cplusplus
34 | }
35 | #endif
36 |
37 | #endif /*__SHA256_TRANSFORM_H__*/
38 |
39 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
40 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/MD5/hmac_md5.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file hmac_md5.h
4 | * @author MCD Application Team
5 | * @brief Provides HMAC-MD5 functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __CRL_HMAC_MD5_H__
22 | #define __CRL_HMAC_MD5_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /** @ingroup HMAC_MD5
32 | * @{
33 | */
34 |
35 | /**
36 | * @brief HMAC-MD5 Context Structure
37 | */
38 | /* Exported types ------------------------------------------------------------*/
39 | typedef HMACctx_stt HMAC_MD5ctx_stt;
40 | /* Exported constants --------------------------------------------------------*/
41 | /* Exported macro ------------------------------------------------------------*/
42 | /* Exported functions ------------------------------------------------------- */
43 |
44 | int32_t HMAC_MD5_Init (HMAC_MD5ctx_stt *P_pHMAC_MD5ctx);
45 |
46 | int32_t HMAC_MD5_Append (HMAC_MD5ctx_stt *P_pHMAC_MD5ctx, \
47 | const uint8_t *P_pInputBuffer, \
48 | int32_t P_inputSize);
49 |
50 | int32_t HMAC_MD5_Finish (HMAC_MD5ctx_stt *P_pHMAC_MD5ctx, \
51 | uint8_t *P_pOutputBuffer, \
52 | int32_t *P_pOutputSize);
53 |
54 | /**
55 | * @}
56 | */
57 |
58 |
59 | #ifdef __cplusplus
60 | }
61 | #endif
62 |
63 | #endif /* __CRL_HMAC_MD5_H__ */
64 |
65 |
66 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
67 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/MD5/md5_low_level.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file md5_low_level.h
4 | * @author MCD Application Team
5 | * @brief MD5 core functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __MD5_LOW_LEVEL_H__
22 | #define __MD5_LOW_LEVEL_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Exported types ------------------------------------------------------------*/
30 | /* Exported constants --------------------------------------------------------*/
31 | /* Exported macro ------------------------------------------------------------*/
32 | /* Exported functions ------------------------------------------------------- */
33 | /* MD5 - Initialize new context */
34 | void crl_u_MD5_Init (MD5ctx_stt *P_pMD5ctx);
35 | /* MD5 Update function */
36 | void crl_u_MD5_Update (MD5ctx_stt *P_pMD5ctx, \
37 | const uint8_t *P_pInput, \
38 | uint32_t P_inputSize);
39 | /* MD5 finalization function */
40 | void crl_u_MD5_Finish (MD5ctx_stt *P_pMD5ctx, \
41 | uint8_t *P_pDigest);
42 |
43 |
44 | #ifdef __cplusplus
45 | }
46 | #endif
47 |
48 | #endif /*__MD5_LOW_LEVEL_H__*/
49 |
50 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
51 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA1/sha1.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha1.h
4 | * @author MCD Application Team
5 | * @brief Provides SHA1 functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __CRL_SHA1_H__
22 | #define __CRL_SHA1_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /** @ingroup SHA1
32 | * @{
33 | */
34 | /* Exported constants --------------------------------------------------------*/
35 | #define CRL_SHA1_SIZE 20 /*!< Number of bytes (uint8_t) to store a SHA-1 digest. */
36 |
37 | /* Exported types ------------------------------------------------------------*/
38 | /**
39 | * @brief Structure for the SHA-1 context
40 | */
41 | typedef HASHctx_stt SHA1ctx_stt;
42 | /* Exported functions --------------------------------------------------------*/
43 | /* Initialization of Context */
44 | int32_t SHA1_Init(SHA1ctx_stt *P_pSHA1ctx);
45 | /* Data processing function */
46 | int32_t SHA1_Append(SHA1ctx_stt *P_pSHA1ctx, \
47 | const uint8_t *P_pInputBuffer, \
48 | int32_t P_inputSize);
49 | /* Returns digest */
50 | int32_t SHA1_Finish(SHA1ctx_stt *P_pSHA1ctx, \
51 | uint8_t *P_pOutputBuffer, \
52 | int32_t *P_pOutputSize);
53 |
54 | /**
55 | * @}
56 | */
57 |
58 | #ifdef __cplusplus
59 | }
60 | #endif
61 |
62 | #endif /*__CRL_SHA1_H__*/
63 |
64 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
65 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA1/sha1_low_level.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha1_low_level.h
4 | * @author MCD Application Team
5 | * @brief SHA-1 core functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __SHA1_LOW_LEVEL_H__
22 | #define __SHA1_LOW_LEVEL_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Exported functions ------------------------------------------------------- */
30 | /* SHA1Init - Initialize new context */
31 | void SHA1Init (SHA1ctx_stt *P_pHASHctx);
32 |
33 | /* SHA1 Update function */
34 | void SHA1Update(SHA1ctx_stt* P_pHASHctx, \
35 | const uint8_t* P_pInput, \
36 | uint32_t P_inputSize);
37 |
38 | /* SHA1: finalization function */
39 | void SHA1Final (SHA1ctx_stt* P_pHASHctx, \
40 | uint8_t *P_pDigest);
41 |
42 | #ifdef __cplusplus
43 | }
44 | #endif
45 |
46 | #endif /*__SHA1_LOW_LEVEL_H__*/
47 |
48 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
49 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA224/sha224.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha224.h
4 | * @author MCD Application Team
5 | * @brief Provides SHA224 functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __CRL_SHA224_H__
22 | #define __CRL_SHA224_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /** @ingroup SHA224
32 | * @{
33 | */
34 | /* Exported constants --------------------------------------------------------*/
35 | #define CRL_SHA224_SIZE 28 /*!< Number of bytes (uint8_t) to store a SHA-224 digest. */
36 |
37 | /* Exported functions --------------------------------------------------------*/
38 | /** Structure for the SHA-224 context */
39 | typedef HASHctx_stt SHA224ctx_stt;
40 | /* Initialization of Context */
41 | int32_t SHA224_Init (SHA224ctx_stt *P_pSHA224ctx);
42 | /* Data processing function */
43 | int32_t SHA224_Append (SHA224ctx_stt *P_pSHA224ctx, \
44 | const uint8_t *P_pInputBuffer, \
45 | int32_t P_inputSize);
46 | /* Returns digest */
47 | int32_t SHA224_Finish (SHA224ctx_stt *P_pSHA224ctx, \
48 | uint8_t *P_pOutputBuffer, \
49 | int32_t *P_pOutputSize);
50 |
51 | /**
52 | * @}
53 | */
54 |
55 | #ifdef __cplusplus
56 | }
57 | #endif
58 |
59 | #endif /*__CRL_SHA224_H__*/
60 |
61 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
62 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA224/sha224_low_level.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha224_low_level.h
4 | * @author MCD Application Team
5 | * @brief SHA-224 core functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __SHA224_LOW_LEVEL_H__
22 | #define __SHA224_LOW_LEVEL_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Need this include for shared Update */
30 |
31 | /* Exported functions ------------------------------------------------------- */
32 | /* SHA-224 Initialize new context */
33 | void SHA224Init(SHA224ctx_stt* P_pSHA224ctx);
34 | /* SHA-224 finalization function */
35 | void SHA224Final(SHA224ctx_stt* P_pSHA224ctx, \
36 | uint8_t *P_pDigest);
37 |
38 | #ifdef __cplusplus
39 | }
40 | #endif
41 |
42 | #endif /*__SHA224_LOW_LEVEL_H__*/
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
45 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA256/sha256.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha256.h
4 | * @author MCD Application Team
5 | * @brief Provides SHA256 functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __CRL_SHA256_H__
22 | #define __CRL_SHA256_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /** @ingroup SHA256
32 | * @{
33 | */
34 | /* Exported constants --------------------------------------------------------*/
35 | #define CRL_SHA256_SIZE 32 /*!< Number of bytes (uint8_t) to store a SHA-256 digest. */
36 | /* Exported types ------------------------------------------------------------*/
37 | /** Structure for the SHA-256 context */
38 | typedef HASHctx_stt SHA256ctx_stt;
39 |
40 | /* Exported functions --------------------------------------------------------*/
41 |
42 | /* Initialization of Context */
43 | int32_t SHA256_Init(SHA256ctx_stt *P_pSHA256ctx);
44 | /* Data processing function */
45 | int32_t SHA256_Append(SHA256ctx_stt *P_pSHA256ctx, \
46 | const uint8_t *P_pInputBuffer, \
47 | int32_t P_inputSize);
48 | /* Returns digest */
49 | int32_t SHA256_Finish(SHA256ctx_stt *P_pSHA256ctx, \
50 | uint8_t *P_pOutputBuffer, \
51 | int32_t *P_pOutputSize);
52 | /**
53 | * @}
54 | */
55 |
56 | #ifdef __cplusplus
57 | }
58 | #endif
59 |
60 | #endif /*__CRL_SHA256_H__*/
61 |
62 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
63 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA256/sha256_low_level.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha256_low_level.h
4 | * @author MCD Application Team
5 | * @brief SHA-256 core functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __SHA256_LOW_LEVEL_H__
22 | #define __SHA256_LOW_LEVEL_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 |
30 | /* Exported functions ------------------------------------------------------- */
31 | /* SHA-256 Initialize new context */
32 | void SHA256Init (SHA256ctx_stt* P_pSHA256ctx);
33 | /* SHA-256 finalization function */
34 | void SHA256Final (SHA256ctx_stt* P_pSHA256ctx, \
35 | uint8_t *P_pDigest);
36 |
37 |
38 | #ifdef __cplusplus
39 | }
40 | #endif
41 |
42 | #endif /*__SHA256_LOW_LEVEL_H__*/
43 |
44 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
45 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA384/hmac_sha384.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file hmac_sha384.h
4 | * @author MCD Application Team
5 | * @brief Provides HMAC-SHA384 functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __CRL_HMAC_SHA384_H__
22 | #define __CRL_HMAC_SHA384_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /** @ingroup HMAC_SHA384
32 | * @{
33 | */
34 |
35 | /**
36 | * @brief HMAC-SHA-384 Context Structure
37 | */
38 | typedef HMACLctx_stt HMAC_SHA384ctx_stt;
39 |
40 |
41 | /* Exported macro ------------------------------------------------------------*/
42 | /* Exported functions ------------------------------------------------------- */
43 |
44 | int32_t HMAC_SHA384_Init(HMAC_SHA384ctx_stt *P_pHMAC_SHA384ctx);
45 | int32_t HMAC_SHA384_Append(HMAC_SHA384ctx_stt *P_pHMAC_SHA384ctx, \
46 | const uint8_t *P_pInputBuffer, \
47 | int32_t P_inputSize);
48 | int32_t HMAC_SHA384_Finish(HMAC_SHA384ctx_stt *P_pHMAC_SHA384ctx, \
49 | uint8_t *P_pOutputBuffer, \
50 | int32_t *P_pOutputSize);
51 |
52 | /**
53 | * @}
54 | */
55 |
56 |
57 | #ifdef __cplusplus
58 | }
59 | #endif
60 |
61 | #endif /* __CRL_HMAC_SHA384_H__ */
62 |
63 |
64 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
65 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA384/sha384_low_level.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha384_low_level.h
4 | * @author MCD Application Team
5 | * @brief SHA-384 core functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __SHA384_LOW_LEVEL_H__
22 | #define __SHA384_LOW_LEVEL_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Exported functions ------------------------------------------------------- */
30 | /* SHA-384 Initialize new context */
31 | void SHA384Init(SHA384ctx_stt* P_pSHA384ctx);
32 | /* SHA-384 finalization function */
33 | void SHA384Final(SHA384ctx_stt* P_pSHA384ctx, \
34 | uint8_t *P_pDigest);
35 |
36 | #ifdef __cplusplus
37 | }
38 | #endif
39 |
40 | #endif /*__SHA384_LOW_LEVEL_H__*/
41 |
42 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
43 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA512/hkdf512.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file hkdf512.h
4 | * @author MCD Application Team
5 | * @brief Provides HKDF-SHA512 functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __CRL_HKDF_SHA512_H__
22 | #define __CRL_HKDF_SHA512_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 | #include "hmac_sha512.h"
31 |
32 | /** @ingroup HKDF_SHA512
33 | * @{
34 | */
35 |
36 |
37 | /**
38 | * @brief Structure HKDF-SHA-512 input
39 | */
40 | typedef struct
41 | {
42 | const uint8_t *pmKey; /*!< Pointer for the HKDF Key */
43 | int32_t mKeySize; /*!< Size of the HKDF Key */
44 | const uint8_t *pmSalt; /*!< Pointer for the HKDF Salt */
45 | int32_t mSaltSize; /*!< Size of the HKDF Salt */
46 | const uint8_t *pmInfo; /*!< Pointer for the HKDF Info */
47 | int32_t mInfoSize; /*!< Size of the HKDF Info */
48 | }
49 | HKDFinput_stt;
50 |
51 |
52 |
53 | /* Exported macro ------------------------------------------------------------*/
54 | /* Exported functions ------------------------------------------------------- */
55 | int32_t HKDF_SHA512(const HKDFinput_stt *P_pInputSt, uint8_t *P_pOutputBuffer, int32_t P_OutputSize);
56 | /**
57 | * @}
58 | */
59 |
60 |
61 | #ifdef __cplusplus
62 | }
63 | #endif
64 |
65 | #endif /* __CRL_HKDF_SHA512_H__ */
66 |
67 |
68 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
69 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/HASH/SHA512/sha512_low_level.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file sha512_low_level.h
4 | * @author MCD Application Team
5 | * @brief SHA-512 core functions
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __SHA512_LOW_LEVEL_H__
22 | #define __SHA512_LOW_LEVEL_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 |
30 | /* Exported functions ------------------------------------------------------- */
31 | /* SHA-512 Initialize new context */
32 | void SHA512Init(SHA512ctx_stt* P_pSHA512ctx);
33 | /* SHA-512 finalization function */
34 | void SHA512Final(SHA512ctx_stt* P_pSHA512ctx, uint8_t *P_pDigest);
35 |
36 |
37 | #ifdef __cplusplus
38 | }
39 | #endif
40 |
41 | #endif /*__SHA512_LOW_LEVEL_H__*/
42 |
43 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
44 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/RSA/LowLevel/rsa_low_level.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file rsa_low_level.h
4 | * @author MCD Application Team
5 | * @brief Provides Low Level RSA operations
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Define to prevent recursive inclusion -------------------------------------*/
21 | #ifndef __CRL_RSA_LOW_LEVEL_H__
22 | #define __CRL_RSA_LOW_LEVEL_H__
23 |
24 | #ifdef __cplusplus
25 | extern "C"
26 | {
27 | #endif
28 |
29 | /* Includes ------------------------------------------------------------------*/
30 |
31 | /** @ingroup RSAlowlevel
32 | * @{
33 | */
34 |
35 | #define RSAEP(P_pPubKey, P_pInput, P_pOutput, P_pMemBuf) RSAVP1((P_pPubKey),(P_pInput),(P_pOutput), (P_pMemBuf)) /*!< Wrapper for RSAVP1*/
36 | #define RSADP(P_pPrivKey, P_pInput, P_pOutput, P_pMemBuf) RSASP1((P_pPrivKey),(P_pInput),(P_pOutput), (P_pMemBuf)) /*!< Wrapper for RSADP*/
37 |
38 |
39 | int32_t RSASP1(const RSAprivKey_stt *P_pPrivKey, const uint8_t * P_pEM, uint8_t *P_pOutput, membuf_stt *P_pMemBuf);
40 | int32_t RSAVP1(const RSApubKey_stt *P_pPubKey, const uint8_t * P_pSignature, uint8_t *P_pOutput, membuf_stt *P_pMemBuf);
41 |
42 | /**
43 | * @}
44 | */
45 |
46 | #ifdef __cplusplus
47 | }
48 | #endif
49 |
50 | #endif /* __CRL_RSA_LOW_LEVEL_H__ */
51 |
52 |
53 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
54 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/RSA/rsa.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file rsa.h
4 | * @author MCD Application Team
5 | * @brief Provides RSA operations with support for PKCS#1v1.5
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Includes ------------------------------------------------------------------*/
21 | #include "PKCS#1v15/rsa_pkcs1v15.h"
22 | #include "LowLevel/rsa_low_level.h"
23 | /* Private typedef -----------------------------------------------------------*/
24 | /* Private define ------------------------------------------------------------*/
25 | /* Private macro -------------------------------------------------------------*/
26 | /* Private variables ---------------------------------------------------------*/
27 | /* Private function prototypes -----------------------------------------------*/
28 | /* Private functions ---------------------------------------------------------*/
29 |
30 |
31 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
32 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Inc/TDES/tdes.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tdes.h
4 | * @author MCD Application Team
5 | * @brief Container for the TDES functionalities
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2015 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Image license SLA0044,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * http://www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 | /* Includes ------------------------------------------------------------------*/
21 | #include "Common/tdes_common.h"
22 |
23 | #ifdef INCLUDE_ECB
24 | #include "ECB/tdes_ecb.h"
25 | #endif
26 |
27 | #ifdef INCLUDE_CBC
28 | #include "CBC/tdes_cbc.h"
29 | #endif
30 |
31 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
32 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC_fpu.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC_fpu.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC_ot.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC_ot.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC_ot_fpu.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_GCC_ot_fpu.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8_fpu.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8_fpu.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8_otnsc.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8_otnsc.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8_otnsc_fpu.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_IARv8_otnsc_fpu.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_1elfspf.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_1elfspf.lib
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_1elfspf_fpu.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_1elfspf_fpu.lib
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_ot1elfspf.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_ot1elfspf.lib
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_ot1elfspf_fpu.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/cryptographic/Lib/STM32CryptographicV3.1.3_CM4_KEIL_ot1elfspf_fpu.lib
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/menu/hids_menu.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file hids_menu.h
4 | * @author MCD Application Team
5 | * @brief Header for hids_menu.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __HIDS_MENU_H
23 | #define __HIDS_MENU_H
24 |
25 | #ifdef __cplusplus
26 | extern "C"
27 | {
28 | #endif
29 |
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 | /* Exported types ------------------------------------------------------------*/
33 | /* Exported constants --------------------------------------------------------*/
34 | /* External variables --------------------------------------------------------*/
35 | /* Exported macros -----------------------------------------------------------*/
36 | /* Exported functions ------------------------------------------------------- */
37 | void HIDS_Menu (uint8_t * action_type, uint8_t * report);
38 |
39 |
40 | #ifdef __cplusplus
41 | }
42 | #endif
43 |
44 | #endif /*__HIDS_MENU_H */
45 |
46 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
47 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/appli_test.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/appli_test.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/ble_clock.h:
--------------------------------------------------------------------------------
1 | /******************** (C) COPYRIGHT 2012 STMicroelectronics ********************
2 | * File Name : ble_clock.h
3 | * Author : AMS - HEA&RF BU
4 | * @version V1.12.000
5 | * @date 06-12-2019
6 | * Description : Header file for clock library, that gives a simple time
7 | * reference to the BLE Stack.
8 | ********************************************************************************
9 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
10 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
11 | * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
12 | * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
13 | * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
14 | * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
15 | *******************************************************************************/
16 |
17 | #ifndef __BLE_CLOCK_H__
18 | #define __BLE_CLOCK_H__
19 |
20 | //#include "bluenrg_itf.h"
21 | #include
22 |
23 | typedef uint32_t tClockTime;
24 | #define CLOCK_SECOND 1000
25 | #define Clock_Init()
26 | #define Clock_Time HAL_GetTick
27 | #define Clock_Wait HAL_Delay
28 |
29 | #endif /* __BLE_CLOCK_H__ */
30 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/ble_mesh.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/ble_mesh.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/pal_if.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/pal_if.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_ctrl.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_ctrl.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_if.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_if.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_prvn.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_prvn.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_ut.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/serial_ut.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/types.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Inc/types.h
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_GCC.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_GCC.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_GCC_DEBUG.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_GCC_DEBUG.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_IAR.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_IAR.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_IAR_DEBUG.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_IAR_DEBUG.a
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_Keil.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_Keil.lib
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_Keil_DEBUG.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/libBle_Mesh_CM4_Keil_DEBUG.lib
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/nofile.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Library/nofile.txt
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/MeshModel/Src/generic.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/MeshModel/Src/generic.c
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/PAL/STM32WB/pal_nvm.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/PAL/STM32WB/pal_nvm.c
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Src/serial_ut.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/mesh/Src/serial_ut.c
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/svc/Inc/dis.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file dis.h
4 | * @author MCD Application Team
5 | * @brief Header for dis.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __DIS_H
24 | #define __DIS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 | /* Exported types ------------------------------------------------------------*/
33 | typedef struct
34 | {
35 | uint8_t *pPayload;
36 | uint8_t Length;
37 | }DIS_Data_t;
38 |
39 |
40 | /* Exported constants --------------------------------------------------------*/
41 | /* External variables --------------------------------------------------------*/
42 | /* Exported macros -----------------------------------------------------------*/
43 | /* Exported functions ------------------------------------------------------- */
44 | void DIS_Init(void);
45 | tBleStatus DIS_UpdateChar(uint16_t uuid, DIS_Data_t *p_data);
46 |
47 | #ifdef __cplusplus
48 | }
49 | #endif
50 |
51 | #endif /*__DIS_H */
52 |
53 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
54 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/svc/Inc/ias.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file ias.h
4 | * @author MCD Application Team
5 | * @brief Header for ias.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __IAS_H
24 | #define __IAS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 |
32 | /* Includes ------------------------------------------------------------------*/
33 |
34 | /* Exported types ------------------------------------------------------------*/
35 | typedef enum
36 | {
37 | IAS_NO_ALERT_EVT,
38 | IAS_MID_ALERT_EVT,
39 | IAS_HIGH_ALERT_EVT
40 | } IAS_App_Opcode_Notification_evt_t;
41 |
42 | typedef struct
43 | {
44 | IAS_App_Opcode_Notification_evt_t IAS_Evt_Opcode;
45 | }IAS_App_Notification_evt_t;
46 |
47 |
48 | /* Exported constants --------------------------------------------------------*/
49 | /* External variables --------------------------------------------------------*/
50 | /* Exported macros -----------------------------------------------------------*/
51 | /* Exported functions ------------------------------------------------------- */
52 | void IAS_Init(void);
53 | tBleStatus IAS_Update_Char(uint16_t UUID, uint8_t *pPayload);
54 | void IAS_App_Notification(IAS_App_Notification_evt_t *pNotification);
55 |
56 |
57 | #ifdef __cplusplus
58 | }
59 | #endif
60 |
61 | #endif /*__IAS_H */
62 |
63 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
64 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/svc/Inc/lls.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file lls.h
4 | * @author MCD Application Team
5 | * @brief Header for lls.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __LLS_H
24 | #define __LLS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 |
33 | /* Exported types ------------------------------------------------------------*/
34 | typedef enum
35 | {
36 | LLS_NO_ALERT_EVT,
37 | LLS_MID_ALERT_EVT,
38 | LLS_HIGH_ALERT_EVT,
39 | LLS_DISCONNECT_EVT,
40 | LLS_CONNECT_EVT
41 | } LLS_App_Opcode_Notification_evt_t;
42 |
43 | typedef struct
44 | {
45 | LLS_App_Opcode_Notification_evt_t LLS_Evt_Opcode;
46 | }LLS_App_Notification_evt_t;
47 |
48 |
49 | /* Exported constants --------------------------------------------------------*/
50 | /* External variables --------------------------------------------------------*/
51 | /* Exported macros -----------------------------------------------------------*/
52 | /* Exported functions ------------------------------------------------------- */
53 | void LLS_Init(void);
54 | tBleStatus LLS_Update_Char(uint16_t UUID, uint8_t *pPayload);
55 | void LLS_App_Notification(LLS_App_Notification_evt_t *pNotification);
56 |
57 |
58 | #ifdef __cplusplus
59 | }
60 | #endif
61 |
62 | #endif /*__LLS_H */
63 |
64 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
65 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/svc/Inc/tps.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tps.h
4 | * @author MCD Application Team
5 | * @brief Header for tps.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __TPS_H
24 | #define __TPS_H
25 |
26 | #ifdef __cplusplus
27 | extern "C"
28 | {
29 | #endif
30 |
31 | /* Includes ------------------------------------------------------------------*/
32 |
33 | /* Exported types ------------------------------------------------------------*/
34 | /* Exported constants --------------------------------------------------------*/
35 | /* External variables --------------------------------------------------------*/
36 | /* Exported macros -----------------------------------------------------------*/
37 | /* Exported functions ------------------------------------------------------- */
38 | void TPS_Init(void);
39 | tBleStatus TPS_Update_Char(uint16_t UUID, uint8_t *pPayload);
40 |
41 | #ifdef __cplusplus
42 | }
43 | #endif
44 |
45 | #endif /*__TPS_H */
46 |
47 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
48 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/ble/svc/Src/common_blesvc.h:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | ******************************************************************************
4 | * @file common_blesvc.h
5 | * @author MCD Application Team
6 | * @brief Header for ble modules
7 | ******************************************************************************
8 | * @attention
9 | *
10 | * © Copyright (c) 2019 STMicroelectronics.
11 | * All rights reserved.
12 | *
13 | * This software component is licensed by ST under Ultimate Liberty license
14 | * SLA0044, the "License"; You may not use this file except in compliance with
15 | * the License. You may obtain a copy of the License at:
16 | * www.st.com/SLA0044
17 | *
18 | ******************************************************************************
19 | */
20 |
21 |
22 | /* Define to prevent recursive inclusion -------------------------------------*/
23 | #ifndef __COMMON_BLESVC_H
24 | #define __COMMON_BLESVC_H
25 |
26 | #ifdef __cplusplus
27 | extern "C" {
28 | #endif
29 |
30 | /* Includes ------------------------------------------------------------------*/
31 | #include "ble_common.h"
32 | #include "ble.h"
33 | #include "dbg_trace.h"
34 |
35 |
36 |
37 | /* Exported types ------------------------------------------------------------*/
38 | typedef enum
39 | {
40 | COMSVC_Notification = ( 1 << 0 ),
41 | COMSVC_Indication = ( 1 << 1 ),
42 | } COMSVC_ClientCharConfMask_t;
43 |
44 | /* Exported constants --------------------------------------------------------*/
45 | /* External variables --------------------------------------------------------*/
46 | /* Exported macros -----------------------------------------------------------*/
47 |
48 |
49 | #ifdef __cplusplus
50 | }
51 | #endif
52 |
53 | #endif /*__COMMON_BLESVC_H */
54 |
55 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
56 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/conf/tl_conf_template.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_conf.h
4 | * @author MCD Application Team
5 | * @brief Transport Layer Configuration
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __TL_CONF_H
23 | #define __TL_CONF_H
24 |
25 | /**
26 | * It shall be set to 1 for power optimization when standby is supported
27 | */
28 | #define CFG_BLE_HCI_STDBY 0
29 |
30 |
31 |
32 | #endif /*__TL_CONF_H */
33 |
34 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
35 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/conf/vcp_conf_template.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file vcp_conf.h
4 | * @author MCD Application Team
5 | * @brief Configuration of the vcp interface
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __VCP_CONF_H
23 | #define __VCP_CONF_H
24 |
25 | #ifdef __cplusplus
26 | extern "C"
27 | {
28 | #endif
29 |
30 | /* Includes ------------------------------------------------------------------*/
31 | /* Exported types ------------------------------------------------------------*/
32 | /* Exported constants --------------------------------------------------------*/
33 | #define VCP_BAUD_RATE (115200)
34 | #define VCP_TX_PATH_INTERFACE_READY_SETUP_TIME (20*1000*1000/CFG_TS_TICK_VAL) /** 20s */
35 | #define VCP_TASK_ID (CFG_TASK_VCP_SEND_DATA_ID)
36 | #define VCP_TASK_PRIO (CFG_SCH_PRIO_1)
37 |
38 | #ifdef VCP_TX_PATH_INTERFACE_READY_SETUP_TIME
39 | #define VCP_TIMER_PROC_ID (CFG_TIM_PROC_ID_ISR)
40 | #endif
41 |
42 |
43 | /* External variables --------------------------------------------------------*/
44 | /* Exported macros -----------------------------------------------------------*/
45 | /* Exported functions ------------------------------------------------------- */
46 |
47 |
48 | #ifdef __cplusplus
49 | }
50 | #endif
51 |
52 | #endif /*__VCP_CONF_H */
53 |
54 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
55 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/hci_tl_if.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file hci_tl_if.c
4 | * @author MCD Application Team
5 | * @brief Transport layer interface to BLE
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 | #include "hci_tl.h"
20 | #include "tl.h"
21 |
22 |
23 | void hci_register_io_bus(tHciIO* fops)
24 | {
25 | /* Register IO bus services */
26 | fops->Init = TL_BLE_Init;
27 | fops->Send = TL_BLE_SendCmd;
28 |
29 | return;
30 | }
31 |
32 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
33 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/shci_tl_if.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file shci_tl_if.c
4 | * @author MCD Application Team
5 | * @brief Transport layer interface to the system channel
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 | #include "shci_tl.h"
20 | #include "tl.h"
21 |
22 |
23 | void shci_register_io_bus(tSHciIO* fops)
24 | {
25 | /* Register IO bus services */
26 | fops->Init = TL_SYS_Init;
27 | fops->Send = TL_SYS_SendCmd;
28 |
29 | return;
30 | }
31 |
32 | /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
33 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/tl_mac_802_15_4.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_mac_802_15_4.h
4 | * @author MCD Application Team
5 | * @brief Constants and functions for managing MAC 802.15.4 TL
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef __TL_MAC_802_15_4_H
22 | #define __TL_MAC_802_15_4_H
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 |
26 | #include "tl.h"
27 | #include
28 |
29 | #include "802_15_4_mac_core.h"
30 |
31 | /* Exported functions ------------------------------------------------------------*/
32 | void Mac_802_15_4_PreCmdProcessing(void);
33 | void Mac_802_15_4_CmdTransfer(void);
34 |
35 | TL_CmdPacket_t* MAC_802_15_4_GetCmdBuffer(void);
36 | TL_Evt_t* MAC_802_15_4_GetRspPayEvt(void);
37 |
38 | TL_Evt_t* MAC_802_15_4_GetNotificationBuffer(void);
39 | MAC_802_15_4_Notification_t* MAC_802_15_4_GetNotificationPayloadBuffer(void);
40 |
41 | /* Exported defines -----------------------------------------------------------*/
42 |
43 |
44 | #endif /* __TL_MAC_802_15_4_H_ */
45 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/tl_thread_hci.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_thread_hci.c
4 | * @author MCD Application Team
5 | * @brief Function for managing HCI interface.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Includes ------------------------------------------------------------------*/
22 | #include "stm32_wpan_common.h"
23 | #include "stm_list.h"
24 | #include "tl.h"
25 | #include "tl_thread_hci.h"
26 |
27 | /* Private typedef -----------------------------------------------------------*/
28 | /* Private defines -----------------------------------------------------------*/
29 |
30 |
31 |
32 | /* Private macros ------------------------------------------------------------*/
33 |
34 | /* Public variables ---------------------------------------------------------*/
35 |
36 |
37 |
38 | /* Private variables ---------------------------------------------------------*/
39 |
40 |
41 | /* Private function prototypes -----------------------------------------------*/
42 |
43 |
44 | /* Private functions ----------------------------------------------------------*/
45 | __WEAK void Pre_OtCmdProcessing(void){return;}
46 | __WEAK void Ot_Cmd_Transfer(void){return;}
47 | __WEAK Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdPayloadBuffer(void){return 0;}
48 | __WEAK Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdRspPayloadBuffer(void){return 0;}
49 | __WEAK Thread_OT_Cmd_Request_t* THREAD_Get_NotificationPayloadBuffer(void){return 0;}
50 |
51 |
52 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/tl_thread_hci.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_thread_hci.h
4 | * @author MCD Application Team
5 | * @brief Constants and functions for managing Thread TL
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef __TL_THREAD_HCI_H_
22 | #define __TL_THREAD_HCI_H_
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 | #include "stm32wbxx_core_interface_def.h"
26 |
27 | /* Exported functions ------------------------------------------------------------*/
28 | void Pre_OtCmdProcessing(void);
29 | void Ot_Cmd_Transfer(void);
30 | Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdPayloadBuffer(void);
31 | Thread_OT_Cmd_Request_t* THREAD_Get_OTCmdRspPayloadBuffer(void);
32 | Thread_OT_Cmd_Request_t* THREAD_Get_NotificationPayloadBuffer(void);
33 |
34 | /* Exported defines -----------------------------------------------------------*/
35 |
36 |
37 | #endif /* __TL_THREAD_HCI_H_ */
38 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/tl_zigbee_hci.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_zigbee_hci.c
4 | * @author MCD Application Team
5 | * @brief Function for managing HCI interface.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Includes ------------------------------------------------------------------*/
22 | #include "stm32_wpan_common.h"
23 | #include "hw.h"
24 |
25 | #include "stm_list.h"
26 |
27 | #include "tl.h"
28 | #include "tl_zigbee_hci.h"
29 |
30 |
31 | /* Private typedef -----------------------------------------------------------*/
32 | /* Private defines -----------------------------------------------------------*/
33 |
34 |
35 |
36 | /* Private macros ------------------------------------------------------------*/
37 |
38 | /* Public variables ---------------------------------------------------------*/
39 |
40 |
41 |
42 | /* Private variables ---------------------------------------------------------*/
43 |
44 |
45 | /* Private function prototypes -----------------------------------------------*/
46 |
47 |
48 | /* Private functions ----------------------------------------------------------*/
49 | __weak void Pre_ZigbeeCmdProcessing(void){return;}
50 | __weak void ZIGBEE_CmdTransfer(void){return;}
51 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdPayloadBuffer(void){return 0;}
52 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdRspPayloadBuffer(void){return 0;}
53 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_NotificationPayloadBuffer(void){return 0;}
54 | __weak Zigbee_Cmd_Request_t* ZIGBEE_Get_M0RequestPayloadBuffer(void){return 0;}
55 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/tl/tl_zigbee_hci.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file tl_zigbee_hci.h
4 | * @author MCD Application Team
5 | * @brief Constants and functions for managing Thread TL
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under Ultimate Liberty license
13 | * SLA0044, the "License"; You may not use this file except in compliance with
14 | * the License. You may obtain a copy of the License at:
15 | * www.st.com/SLA0044
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef __TL_ZIGBEE_HCI_H_
22 | #define __TL_ZIGBEE_HCI_H_
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 | #include "zigbee_core.h"
26 | #include "stm32wbxx_core_interface_def.h"
27 | #include "tl.h"
28 | #include
29 |
30 |
31 | /* Exported functions ------------------------------------------------------------*/
32 | void Pre_ZigbeeCmdProcessing(void);
33 | void ZIGBEE_CmdTransfer(void);
34 | Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdPayloadBuffer(void);
35 | Zigbee_Cmd_Request_t* ZIGBEE_Get_OTCmdRspPayloadBuffer(void);
36 | Zigbee_Cmd_Request_t* ZIGBEE_Get_NotificationPayloadBuffer(void);
37 | Zigbee_Cmd_Request_t* ZIGBEE_Get_M0RequestPayloadBuffer(void);
38 |
39 | /* Exported defines -----------------------------------------------------------*/
40 |
41 |
42 | #endif /* __TL_ZIGBEE_HCI_H_*/
43 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/interface/patterns/ble_thread/vcp/usbd_desc.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file USB_Device/CDC_Standalone/Inc/usbd_desc.h
4 | * @author MCD Application Team
5 | * @brief Header for usbd_desc.c module
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Define to prevent recursive inclusion -------------------------------------*/
22 | #ifndef __USBD_DESC_H
23 | #define __USBD_DESC_H
24 |
25 | /* Includes ------------------------------------------------------------------*/
26 | #include "usbd_def.h"
27 |
28 | /* Exported types ------------------------------------------------------------*/
29 | /* Exported constants --------------------------------------------------------*/
30 | #define DEVICE_ID1 (0x1FFF7A10)
31 | #define DEVICE_ID2 (0x1FFF7A14)
32 | #define DEVICE_ID3 (0x1FFF7A18)
33 |
34 | #define USB_SIZ_BOS_DESC 0x0C
35 | #define USB_SIZ_STRING_SERIAL 0x1A
36 | /* Exported macro ------------------------------------------------------------*/
37 | /* Exported functions ------------------------------------------------------- */
38 | extern USBD_DescriptorsTypeDef VCP_Desc;
39 |
40 | #endif /* __USBD_DESC_H */
41 |
42 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
43 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/utilities/otp.c:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file otp.c
4 | * @author MCD Application Team
5 | * @brief OTP manager
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | /* Includes ------------------------------------------------------------------*/
22 | #include "utilities_common.h"
23 |
24 | #include "otp.h"
25 |
26 | /* Private typedef -----------------------------------------------------------*/
27 | /* Private defines -----------------------------------------------------------*/
28 | /* Private macros ------------------------------------------------------------*/
29 | /* Private variables ---------------------------------------------------------*/
30 | /* Global variables ----------------------------------------------------------*/
31 | /* Private function prototypes -----------------------------------------------*/
32 | /* Functions Definition ------------------------------------------------------*/
33 |
34 | uint8_t * OTP_Read( uint8_t id )
35 | {
36 | uint8_t *p_id;
37 |
38 | p_id = (uint8_t*)(CFG_OTP_END_ADRESS - 7) ;
39 |
40 | while( ((*( p_id + 7 )) != id) && ( p_id != (uint8_t*)CFG_OTP_BASE_ADDRESS) )
41 | {
42 | p_id -= 8 ;
43 | }
44 |
45 | if((*( p_id + 7 )) != id)
46 | {
47 | p_id = 0 ;
48 | }
49 |
50 | return p_id ;
51 | }
52 |
53 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
54 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/Middlewares/ST/STM32_WPAN/utilities/stm_list.h:
--------------------------------------------------------------------------------
1 | /**
2 | ******************************************************************************
3 | * @file stm_list.h
4 | * @author MCD Application Team
5 | * @brief Header file for linked list library.
6 | ******************************************************************************
7 | * @attention
8 | *
9 | * © Copyright (c) 2019 STMicroelectronics.
10 | * All rights reserved.
11 | *
12 | * This software component is licensed by ST under BSD 3-Clause license,
13 | * the "License"; You may not use this file except in compliance with the
14 | * License. You may obtain a copy of the License at:
15 | * opensource.org/licenses/BSD-3-Clause
16 | *
17 | ******************************************************************************
18 | */
19 |
20 |
21 | #ifndef _STM_LIST_H_
22 | #define _STM_LIST_H_
23 |
24 | /* Includes ------------------------------------------------------------------*/
25 |
26 | typedef struct _tListNode {
27 | struct _tListNode * next;
28 | struct _tListNode * prev;
29 | } tListNode;
30 |
31 | void LST_init_head (tListNode * listHead);
32 |
33 | uint8_t LST_is_empty (tListNode * listHead);
34 |
35 | void LST_insert_head (tListNode * listHead, tListNode * node);
36 |
37 | void LST_insert_tail (tListNode * listHead, tListNode * node);
38 |
39 | void LST_remove_node (tListNode * node);
40 |
41 | void LST_remove_head (tListNode * listHead, tListNode ** node );
42 |
43 | void LST_remove_tail (tListNode * listHead, tListNode ** node );
44 |
45 | void LST_insert_node_after (tListNode * node, tListNode * ref_node);
46 |
47 | void LST_insert_node_before (tListNode * node, tListNode * ref_node);
48 |
49 | int LST_get_size (tListNode * listHead);
50 |
51 | void LST_get_next_node (tListNode * ref_node, tListNode ** node);
52 |
53 | void LST_get_prev_node (tListNode * ref_node, tListNode ** node);
54 |
55 | #endif /* _STM_LIST_H_ */
56 |
--------------------------------------------------------------------------------
/host_driver/STM32WBxx/README.md:
--------------------------------------------------------------------------------
1 | # STM32CubeWB MCU Firmware Package
2 |
3 | **STM32Cube** is an STMicroelectronics original initiative to ease the developers life by reducing efforts, time and cost.
4 |
5 | **STM32Cube** covers the overall STM32 products portfolio. It includes a comprehensive embedded software platform (this repo), delivered for each series (such as the STM32CubeWB for the STM32WB series).
6 | * The CMSIS modules (core and device) corresponding to the ARM-tm core implemented in this STM32 product
7 | * The STM32 HAL-LL drivers : an abstraction drivers layer, the API ensuring maximized portability across the STM32 portfolio
8 | * The BSP Drivers of each evaluation or demonstration board provided by this STM32 series
9 | * A consistent set of middlewares components such as FreeRTOS, FatFS, USB, BLE, Thread ...
10 | * A full set of software projects (basic examples, applications or demonstrations) for each board provided by this STM32 series
11 |
12 | The **STM32CubeWB MCU Package** projects are directly running on the STM32WB series boards. You can find in each Projects/*Board name* directories a set of software projects (Applications/Demonstration/Examples)
13 |
14 | ## Boards available
15 | * STM32WB55
16 | * [P-NUCLEO-WB55.Nucleo](https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html)
17 | * [P-NUCLEO-WB55.USBDongle](https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html)
18 |
19 | ## Troubleshooting
20 |
21 | **Caution** : The **Issues** requests are strictly limited to submit problems or suggestions related to the software delivered in this repo
22 |
23 | **For any question** related to the STM32WB product, the hardware performance, the hardware characteristics, the tools, the environment, you can submit a topic on the [ST Community/STM32 MCUs forum](https://community.st.com/s/group/0F90X000000AXsASAW/stm32-mcus)
24 |
25 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/LICENSE.txt:
--------------------------------------------------------------------------------
1 | The Clear BSD License
2 | Copyright Semtech Corporation 2023. All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted (subject to the limitations in the disclaimer
6 | below) provided that the following conditions are met:
7 | * Redistributions of source code must retain the above copyright
8 | notice, this list of conditions and the following disclaimer.
9 | * Redistributions in binary form must reproduce the above copyright
10 | notice, this list of conditions and the following disclaimer in the
11 | documentation and/or other materials provided with the distribution.
12 | * Neither the name of the Semtech corporation nor the
13 | names of its contributors may be used to endorse or promote products
14 | derived from this software without specific prior written permission.
15 |
16 | NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY
17 | THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
18 | CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
19 | NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE
21 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 | POSSIBILITY OF SUCH DAMAGE.
28 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/makefiles/printing.mk:
--------------------------------------------------------------------------------
1 | ######################################
2 | # Some pretty colors and printing
3 | ######################################
4 | -include makefiles/options.mk
5 |
6 | ######################################
7 | # Verbose build
8 | ######################################
9 | ifeq ($(VERBOSE),yes)
10 | SILENT =
11 | else
12 | SILENT = @
13 | endif
14 |
15 | # Shell colors
16 | BOLD_RED := '\033[1;31m'
17 | BOLD_CYAN := '\033[1;36m'
18 | BOLD_GREEN := '\033[1;32m'
19 | BOLD_PURPLE := '\033[1;35m'
20 | BOLD_YELLOW:= '\033[1;33m'
21 | YELLOW:= '\033[0;33m'
22 | IPURPLE:= '\033[0;95m'
23 | BIPURPLE:= '\033[1;95m'
24 |
25 | NC := '\033[0m' # no color
26 | ECHO = @echo -e $(LIGHT_CYAN)
27 | ECHO_OK = @echo -e $(LIGHT_GREEN)
28 | ECHO_CMD = /bin/echo
29 |
30 | define echo
31 | @$(ECHO_CMD) -e $(BOLD_CYAN)$(1)$(NC)
32 | endef
33 |
34 | define echo_error
35 | @$(ECHO_CMD) -e $(BOLD_RED)'! '$(1)$(NC)
36 | endef
37 |
38 | define build
39 | @echo -e $(BOLD_CYAN)'['$(1)'] Building '$(2)$(NC)
40 | endef
41 |
42 | define success
43 | @echo -e $(BOLD_GREEN)'+ '$(1)' [SUCCESS]'$(NC)
44 | endef
45 |
46 | define warn
47 | @$(ECHO_CMD) -e $(YELLOW)'! '$(1)$(NC)
48 | endef
49 |
50 | define echo_help
51 | @$(ECHO_CMD) -e $(IPURPLE)'| '$(1)$(NC)
52 | endef
53 |
54 | define echo_help_b
55 | @$(ECHO_CMD) -e $(BIPURPLE)' '$(1)$(NC)
56 | endef
57 |
58 | define echo_build
59 | @$(ECHO_CMD) -e $(BOLD_YELLOW)$(1)$(NC)
60 | endef
61 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/makefiles/sx126x.mk:
--------------------------------------------------------------------------------
1 | ##############################################################################
2 | # Definitions for the SX126x tranceiver
3 | ##############################################################################
4 | -include makefiles/options.mk
5 |
6 | ifeq ($(RADIO),sx1261)
7 | TARGET = sx1261
8 | endif
9 | ifeq ($(RADIO),sx1262)
10 | TARGET = sx1262
11 | endif
12 | ifeq ($(RADIO),sx1268)
13 | TARGET = sx1268
14 | endif
15 |
16 | # Allow modem options
17 | ALLOW_CSMA_BUILD = yes
18 |
19 |
20 | #-----------------------------------------------------------------------------
21 | # Radio specific sources
22 | #-----------------------------------------------------------------------------
23 |
24 |
25 | RADIO_DRIVER_C_SOURCES += \
26 | smtc_modem_core/radio_drivers/sx126x_driver/src/sx126x.c\
27 | smtc_modem_core/radio_drivers/sx126x_driver/src/sx126x_lr_fhss.c\
28 | smtc_modem_core/radio_drivers/sx126x_driver/src/lr_fhss_mac.c
29 |
30 | SMTC_RAL_C_SOURCES += \
31 | smtc_modem_core/smtc_ral/src/ral_sx126x.c
32 |
33 | SMTC_RALF_C_SOURCES += \
34 | smtc_modem_core/smtc_ralf/src/ralf_sx126x.c
35 |
36 | SMTC_MODEM_CRYPTO_C_SOURCES += \
37 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/aes.c\
38 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/cmac.c\
39 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/soft_se.c
40 |
41 | #-----------------------------------------------------------------------------
42 | # Includes
43 | #-----------------------------------------------------------------------------
44 | LBM_C_INCLUDES = \
45 | -Ismtc_modem_core/radio_drivers/sx126x_driver/src\
46 | -Ismtc_modem_core/smtc_modem_crypto/soft_secure_element
47 |
48 |
49 | #-----------------------------------------------------------------------------
50 | # Radio specific compilation flags
51 | #-----------------------------------------------------------------------------
52 | LBM_C_DEFS += \
53 | -DSX126X
54 |
55 | ifeq ($(RADIO),sx1262)
56 | LBM_C_DEFS += \
57 | -DSX1262
58 | endif
59 |
60 | ifeq ($(RADIO),sx1268)
61 | LBM_C_DEFS += \
62 | -DSX1268
63 | endif
64 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/makefiles/sx127x.mk:
--------------------------------------------------------------------------------
1 | ##############################################################################
2 | # Definitions for the SX126x tranceiver
3 | ##############################################################################
4 | -include makefiles/options.mk
5 |
6 | ifeq ($(RADIO),sx1272)
7 | TARGET = sx1272
8 | endif
9 | ifeq ($(RADIO),sx1276)
10 | TARGET = sx1276
11 | endif
12 |
13 | RADIO_DRIVER_C_SOURCES += \
14 | smtc_modem_core/radio_drivers/sx127x_driver/src/sx127x.c\
15 |
16 | SMTC_RAL_C_SOURCES += \
17 | smtc_modem_core/smtc_ral/src/ral_sx127x.c
18 |
19 | SMTC_RALF_C_SOURCES += \
20 | smtc_modem_core/smtc_ralf/src/ralf_sx127x.c
21 |
22 | SMTC_MODEM_CRYPTO_C_SOURCES += \
23 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/aes.c\
24 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/cmac.c\
25 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/soft_se.c
26 |
27 | #-----------------------------------------------------------------------------
28 | # Includes
29 | #-----------------------------------------------------------------------------
30 | LBM_C_INCLUDES = \
31 | -Ismtc_modem_core/radio_drivers/sx127x_driver/src\
32 | -Ismtc_modem_core/smtc_modem_crypto/soft_secure_element
33 |
34 | #-----------------------------------------------------------------------------
35 | # Region
36 | #-----------------------------------------------------------------------------
37 |
38 | #-----------------------------------------------------------------------------
39 | # Radio specific compilation flags
40 | #-----------------------------------------------------------------------------
41 | LBM_C_DEFS += \
42 | -DSX127X
43 |
44 | ifeq ($(RADIO),sx1272)
45 | LBM_C_DEFS += \
46 | -DSX1272
47 | endif
48 |
49 | ifeq ($(RADIO),sx1276)
50 | LBM_C_DEFS += \
51 | -DSX1276
52 | endif
53 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/makefiles/sx128x.mk:
--------------------------------------------------------------------------------
1 | ##############################################################################
2 | # Definitions for the SX128x tranceiver
3 | ##############################################################################
4 | -include makefiles/options.mk
5 |
6 | TARGET = sx128x
7 |
8 | RADIO_DRIVER_C_SOURCES += \
9 | smtc_modem_core/radio_drivers/sx128x_driver/src/sx128x.c
10 |
11 | SMTC_RAL_C_SOURCES += \
12 | smtc_modem_core/smtc_ral/src/ral_sx128x.c
13 |
14 | SMTC_RALF_C_SOURCES += \
15 | smtc_modem_core/smtc_ralf/src/ralf_sx128x.c
16 |
17 | LR1MAC_C_SOURCES += \
18 | smtc_modem_core/lr1mac/src/smtc_real/src/region_ww2g4.c
19 |
20 | SMTC_MODEM_CRYPTO_C_SOURCES += \
21 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/aes.c\
22 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/cmac.c\
23 | smtc_modem_core/smtc_modem_crypto/soft_secure_element/soft_se.c
24 |
25 | #-----------------------------------------------------------------------------
26 | # Includes
27 | #-----------------------------------------------------------------------------
28 | LBM_C_INCLUDES = \
29 | -Ismtc_modem_core/radio_drivers/sx128x_driver/src\
30 | -Ismtc_modem_core/smtc_modem_crypto/soft_secure_element
31 |
32 | #-----------------------------------------------------------------------------
33 | # Radio specific compilation flags
34 | #-----------------------------------------------------------------------------
35 | LBM_C_DEFS += \
36 | -DSX128X
37 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_api/Makefile:
--------------------------------------------------------------------------------
1 | all: docs
2 |
3 | docs: *.h ./doxygen.config
4 | @doxygen ./doxygen.config
5 |
6 | clean:
7 | rm -rf build_doc
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/geolocation_services/doc/docMiddlewareSequenceOverview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/geolocation_services/doc/docMiddlewareSequenceOverview.png
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/geolocation_services/doc/raw/Makefile:
--------------------------------------------------------------------------------
1 | .PHONY: all
2 |
3 | all: uml dia
4 | @echo . "\033[1;32m"
5 | @echo . entering geolocation documentation raw files
6 | @echo . "\033[0m"
7 |
8 | uml:
9 | @echo . "\033[1;32m"
10 | @echo . entering geolocation documentation uml files
11 | @echo . "\033[0m"
12 | plantuml docMiddlewareSequenceOverview.puml
13 | mv docMiddlewareSequenceOverview.png ../docMiddlewareSequenceOverview.png
14 |
15 | dia:
16 | @echo . "\033[1;32m"
17 | @echo . entering geolocation documentation dia files
18 | @echo . "\033[0m"
19 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/lorawan_manager/doc/class_b_sequence.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/lorawan_manager/doc/class_b_sequence.png
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/lorawan_manager/doc/join_sequence.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Lora-net/SWSD004/81c6a36e0b0f95090d5240c06ca75eb0be04e4de/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/lorawan_manager/doc/join_sequence.png
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/lorawan_manager/doc/raw/join.puml:
--------------------------------------------------------------------------------
1 | @startuml
2 |
3 | participant APPLICATION
4 | participant JOIN_MANAGER
5 | participant LR1_MAC_STACK_STACK
6 | participant SEMTECH_RADIO
7 | participant 0N_AIR
8 | participant NETWORK_SERVER
9 |
10 |
11 | APPLICATION -> JOIN_MANAGER: smtc_modem_join_network(stack_id)
12 | note right
13 | Join duty cycle as defined in LoRaWAN standard is enabled by default.
14 | Use compilation flag TEST_BYPASS_JOIN_DUTY_CYCLE to remove it
15 | To change join dr distribution use the function smtc_modem_adr_set_join_distribution
16 | end note
17 | == STEP 1 : Transmit Join Request ==
18 | loop Until devices is joined
19 | alt no Join Accept response
20 |
21 | JOIN_MANAGER -> JOIN_MANAGER : Wait Join Duty cycle
22 | note right
23 | Join duty cycle details are defined in LoRaWAN standard.
24 | It allows to not waste battery in case of bad network coverage.
25 | end note
26 | Activate JOIN_MANAGER
27 | JOIN_MANAGER -> NETWORK_SERVER: Transmit Join Request
28 | Deactivate JOIN_MANAGER
29 | Activate NETWORK_SERVER#005500
30 | LR1_MAC_STACK_STACK -> LR1_MAC_STACK_STACK : Wait a valid join accept on Rx1 or RX2
31 | Activate LR1_MAC_STACK_STACK
32 | LR1_MAC_STACK_STACK -> APPLICATION: Event
33 | Deactivate LR1_MAC_STACK_STACK
34 | note left
35 | with status = SMTC_MODEM_EVENT_JOINFAIL.
36 | end note
37 | else Else : Receive a Valid Join Accept
38 | NETWORK_SERVER -> JOIN_MANAGER: Valid join Accept
39 | Deactivate NETWORK_SERVER#005500
40 | Activate JOIN_MANAGER#000000
41 | end
42 | end
43 | JOIN_MANAGER -> APPLICATION: Event
44 | note left
45 | with status = SMTC_MODEM_EVENT_JOINED.
46 | end note
47 |
48 |
49 | @enduml
50 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/modem_services/store_and_forward/README.md:
--------------------------------------------------------------------------------
1 | # LoRa Basics Modem - Store and Forward flash
2 |
3 | ## 1. Introduction
4 |
5 | The Store and Forward feature allows a user to store multiple data such as measurements without waiting for the stack to be available or the modem to be under network coverage. This data will be sent when the modem is under LoRaWAN coverage.
6 |
7 | The Store and Forward used CircularFS library. It is a persistent, Flash-based ring buffer designed for embedded software. CircularFS has been designed to run on NOR Flash memory, which exhibits the following semantics:
8 |
9 | - Bits are programmed by flipping them from 1 to 0 with byte granularity.
10 | - Bits are erased by flipping them from 0 to 1 with sector granularity.
11 |
12 | ## 2. Operating mode
13 |
14 | To be sure that the modem is always under coverage, data are acknowledged every 10 uplink frames (but the user can request an acknowledgment themselves when new data is stored to be acknowledged more often).
15 |
16 | If the uplink frame with acknowledgment request is acknowledged by the network, previous sent data are deleted from the FIFO.
17 |
18 | If the uplink frame with acknowledgment request is not acknowledged by the network, the FIFO goes back to the oldest unacknowledged data and will attempt to send this data indefinitely until the modem has received the acknowledgment.
19 |
20 | To avoid retrying too often, a time limit is calculated to schedule the next attempt. This delay is generally longer than the previous one for each retry and the maximum is one hour.
21 |
22 | When the device is under coverage (ACK or downlink data received by the modem), data in FIFO are fetch and sent as fast as possible.
23 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/lr11xx_driver/LICENSE.txt:
--------------------------------------------------------------------------------
1 | License for the code produced by Semtech contained in this project
2 | ------------------------------------------------------------------
3 |
4 | The Clear BSD License
5 | Copyright Semtech Corporation 2022. All rights reserved.
6 |
7 | Redistribution and use in source and binary forms, with or without
8 | modification, are permitted (subject to the limitations in the disclaimer
9 | below) provided that the following conditions are met:
10 | * Redistributions of source code must retain the above copyright
11 | notice, this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright
13 | notice, this list of conditions and the following disclaimer in the
14 | documentation and/or other materials provided with the distribution.
15 | * Neither the name of the Semtech corporation nor the
16 | names of its contributors may be used to endorse or promote products
17 | derived from this software without specific prior written permission.
18 |
19 | NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY
20 | THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
21 | CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
22 | NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
23 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE
24 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30 | POSSIBILITY OF SUCH DAMAGE.
31 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx126x_driver/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | All notable changes to this project will be documented in this file.
4 |
5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6 |
7 | ## [2.3.1] - 2023-11-8
8 |
9 | ### Fixed
10 | - `lr_fhss_payload_whitening()` function - Cast missing on lfsr parameter
11 |
12 | ## [2.3.0] - 2023-10-10
13 |
14 | ### Added
15 | - `sx126x_set_bpsk_mod_params()` function - Set the modulation parameters for BPSK packets
16 | - `sx126x_set_bpsk_pkt_params()` function - Set the packet parameters for BPSK packets
17 |
18 | ## [2.2.0] - 2023-03-27
19 |
20 | ### Added
21 |
22 | - `sx126x_driver_version_get_version_string()` function - produces a c-string representation of the driver version
23 | - `SX126X_DRIVER_VERSION_CHECK` macro - validates the provided version information is compatible with the driver
24 | - `sx126x_lr_fhss_get_bit_delay_in_us( )` function - computes the delay between the last LR-FHSS bit sent and the TX done interrupt
25 |
26 | ## [2.1.0] - 2022-05-18
27 |
28 | ### Added
29 |
30 | - `sx126x_set_gfsk_pkt_address()` function - configure both GFSK node and brodcast filtering addresses
31 | - `sx126x_handle_rx_done()` function - perform all requested actions when the chip leaves the Rx mode
32 |
33 | ## [2.0.1] - 2021-11-23
34 |
35 | ### Added
36 |
37 | - Support of LR-FHSS (see `sx126x_lr_fhss.c` and `sx126x_lr_fhss.h`)
38 | - `sx126x_get_lora_params_from_header()` function - extracts the LoRa coding rate and CRC configuration from the packet header
39 | - `sx126x_add_registers_to_retention_list()` function - allows to add up to 4 registers to the retention list
40 | - `sx126x_init_retention_list()` - add registers used by workarounds in the driver to the retention list
41 | - `sx126x_cal_img_in_mhz()` - takes frequency interval bounds in MHz for calibration
42 |
43 | ### Changed
44 |
45 | - Revised BSD License changed to the Clear BSD License
46 | - `sx126x_set_lora_symb_nb_timeout` now rounds up to nearest possible number of symbol
47 | - `SX126X_REG_IRQ_POLARITY` is renamed `SX126X_REG_IQ_POLARITY`
48 | - `sx126x_cal_img()` function - takes frequency interval bounds in raw steps
49 |
50 | ## [1.0.0] - 2020-09-24
51 |
52 | ### General
53 |
54 | - Initial version
55 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx126x_driver/LICENSE.txt:
--------------------------------------------------------------------------------
1 | The Clear BSD License
2 | Copyright Semtech Corporation 2021. All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted (subject to the limitations in the disclaimer
6 | below) provided that the following conditions are met:
7 | * Redistributions of source code must retain the above copyright
8 | notice, this list of conditions and the following disclaimer.
9 | * Redistributions in binary form must reproduce the above copyright
10 | notice, this list of conditions and the following disclaimer in the
11 | documentation and/or other materials provided with the distribution.
12 | * Neither the name of the Semtech corporation nor the
13 | names of its contributors may be used to endorse or promote products
14 | derived from this software without specific prior written permission.
15 |
16 | NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY
17 | THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
18 | CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
19 | NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE
21 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 | POSSIBILITY OF SUCH DAMAGE.
28 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx126x_driver/README.md:
--------------------------------------------------------------------------------
1 | # SX126X driver
2 |
3 | This package proposes an implementation in C of the driver for **SX126X** radio component.
4 | Please see the [changelog](CHANGELOG.md) for more information.
5 |
6 | ## Structure
7 |
8 | The driver is defined as follows:
9 |
10 | - sx126x.c: implementation of the driver functions
11 | - sx126x.h: declarations of the driver functions
12 | - sx126x_regs.h: definitions of all useful registers (address and fields)
13 | - sx126x_hal.h: declarations of the HAL functions (to be implemented by the user - see below)
14 | - lr_fhss_mac.c: Transceiver-independent LR-FHSS implementation
15 | - sx126x_lr_fhss.c: Transceiver-dependent LR-FHSS implementation
16 | - lr_fhss_mac.h: Transceiver-independent LR-FHSS declarations
17 | - sx126x_lr_fhss.h: Transceiver-dependent LR-FHSS declarations
18 | - lr_fhss_v1_base_types.h: LR-FHSS type interface
19 |
20 | ## HAL
21 |
22 | The HAL (Hardware Abstraction Layer) is a collection of functions the user shall implement to write platform-dependant calls to the host. The list of functions is the following:
23 |
24 | - sx126x_hal_reset
25 | - sx126x_hal_wakeup
26 | - sx126x_hal_write
27 | - sx126x_hal_read
28 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx127x_driver/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | All notable changes to this project will be documented in this file.
4 |
5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6 |
7 | ## [1.0.0] - 2021-12-15
8 |
9 | ### General
10 |
11 | - Initial version
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx127x_driver/LICENSE.md:
--------------------------------------------------------------------------------
1 | The Clear BSD License
2 | Copyright Semtech Corporation 2021. All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted (subject to the limitations in the disclaimer
6 | below) provided that the following conditions are met:
7 | * Redistributions of source code must retain the above copyright
8 | notice, this list of conditions and the following disclaimer.
9 | * Redistributions in binary form must reproduce the above copyright
10 | notice, this list of conditions and the following disclaimer in the
11 | documentation and/or other materials provided with the distribution.
12 | * Neither the name of the Semtech corporation nor the
13 | names of its contributors may be used to endorse or promote products
14 | derived from this software without specific prior written permission.
15 |
16 | NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY
17 | THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
18 | CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
19 | NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE
21 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 | POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx127x_driver/README.md:
--------------------------------------------------------------------------------
1 | # SX127X driver
2 |
3 | This package proposes an implementation in C of the driver for **SX127X** radio component.
4 |
5 | ## Structure
6 |
7 | The driver is defined as follows:
8 |
9 | - sx127x.c: implementation of the driver functions
10 | - sx127x.h: declarations of the driver functions
11 | - sx127x_regs_common_defs.h: definitions of all common reegisters (address and fields)
12 | - sx127x_regs_gfsk_defs.h: definitions of all GFSK reegisters (address and fields)
13 | - sx127x_regs_lora_defs.h: definitions of all LoRa reegisters (address and fields)
14 | - sx127x_regs.h: includes sx127x_regs_common_defs.h, sx127x_regs_gfsk_defs.h and sx127x_regs_lora_defs.h
15 | - sx127x_hal.h: declarations of the HAL functions (to be implemented by the user - see below)
16 |
17 | ## HAL
18 |
19 | The HAL (Hardware Abstraction Layer) is a collection of functions the user shall implement to write platform-dependant calls to the host. The list of functions is the following:
20 |
21 | - sx127x_hal_get_radio_id
22 | - sx127x_hal_dio_irq_attach
23 | - sx127x_hal_write
24 | - sx127x_hal_read
25 | - sx127x_hal_reset
26 | - sx127x_hal_get_dio_1_pin_state
27 | - sx127x_hal_timer_start
28 | - sx127x_hal_timer_stop
29 | - sx127x_hal_timer_is_started
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx128x_driver/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | All notable changes to this project will be documented in this file.
4 |
5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6 |
7 | ## [1.0.0] - 2022-07-21
8 |
9 | ### General
10 |
11 | - Initial version
12 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx128x_driver/LICENSE.txt:
--------------------------------------------------------------------------------
1 | The Clear BSD License
2 | Copyright Semtech Corporation 2022. All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted (subject to the limitations in the disclaimer
6 | below) provided that the following conditions are met:
7 | * Redistributions of source code must retain the above copyright
8 | notice, this list of conditions and the following disclaimer.
9 | * Redistributions in binary form must reproduce the above copyright
10 | notice, this list of conditions and the following disclaimer in the
11 | documentation and/or other materials provided with the distribution.
12 | * Neither the name of the Semtech corporation nor the
13 | names of its contributors may be used to endorse or promote products
14 | derived from this software without specific prior written permission.
15 |
16 | NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY
17 | THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
18 | CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
19 | NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE
21 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 | POSSIBILITY OF SUCH DAMAGE.
28 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx128x_driver/README.md:
--------------------------------------------------------------------------------
1 | # SX128X driver
2 |
3 | This package proposes an implementation in C of the driver for **SX128X** radio component.
4 | Please see the [changelog](CHANGELOG.md) for more information.
5 |
6 | ## Structure
7 |
8 | The driver is defined as follows:
9 |
10 | - sx128x.c: implementation of the driver functions
11 | - sx128x.h: declarations of the driver functions
12 | - sx128x_regs.h: definitions of all useful registers (address and fields)
13 | - sx128x_hal.h: declarations of the HAL functions (to be implemented by the user - see below)
14 |
15 | ## HAL
16 |
17 | The HAL (Hardware Abstraction Layer) is a collection of functions the user shall implement to write platform-dependant calls to the host. The list of functions is the following:
18 |
19 | - sx128x_hal_reset
20 | - sx128x_hal_wakeup
21 | - sx128x_hal_write
22 | - sx128x_hal_read
23 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/radio_drivers/sx128x_driver/src/sx128x_driver_module.cmake:
--------------------------------------------------------------------------------
1 | # @file sx128x_driver_module.cmake
2 | #
3 | # @brief Defines CMake source files and include directories for this module
4 | #
5 | # --- The Clear BSD License ---
6 | # Copyright Semtech Corporation 2022. All rights reserved.
7 | #
8 | # Redistribution and use in source and binary forms, with or without
9 | # modification, are permitted (subject to the limitations in the disclaimer
10 | # below) provided that the following conditions are met:
11 | # * Redistributions of source code must retain the above copyright
12 | # notice, this list of conditions and the following disclaimer.
13 | # * Redistributions in binary form must reproduce the above copyright
14 | # notice, this list of conditions and the following disclaimer in the
15 | # documentation and/or other materials provided with the distribution.
16 | # * Neither the name of the Semtech corporation nor the
17 | # names of its contributors may be used to endorse or promote products
18 | # derived from this software without specific prior written permission.
19 | #
20 | # NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY
21 | # THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
22 | # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
23 | # NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
24 | # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE
25 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29 | # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30 | # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31 | # POSSIBILITY OF SUCH DAMAGE.
32 |
33 | set(SX128X_DRIVER_MODULE_C_SOURCES
34 | ${CMAKE_CURRENT_LIST_DIR}/sx128x.c
35 | )
36 |
37 | set(SX128X_DRIVER_MODULE_C_INCLUDES
38 | ${CMAKE_CURRENT_LIST_DIR}/.
39 | )
40 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/smtc_ral/README.md:
--------------------------------------------------------------------------------
1 | # Semtech Radio Abstraction Layer
2 |
3 | This package proposes an implementation in C of the RAL (Radio Abstraction Layer).
4 |
5 | ## Components
6 |
7 | The RAL is split in several components:
8 |
9 | - RAL interface
10 | - Implementation for SX1261/2/8 transceivers
11 | - Implementation for LR1110/20/21 transceivers
12 | - Implementation for SX1280/1 transceivers
13 | - Implementation for LLCC68 transceivers
14 |
15 | ## Compatibility
16 |
17 | The current version of the RAL is compatible with the following version the drivers:
18 |
19 | - LR11xx driver unreleased (head of develop branch)
20 | - SX126x driver v2.0.1 and later
21 | - SX128x driver unreleased (head of develop branch)
22 | - LLCC68 driver v2.0.1 and later
23 |
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/smtc_ral/license.md:
--------------------------------------------------------------------------------
1 | The Clear BSD License
2 | Copyright Semtech Corporation 2021. All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted (subject to the limitations in the disclaimer
6 | below) provided that the following conditions are met:
7 | * Redistributions of source code must retain the above copyright
8 | notice, this list of conditions and the following disclaimer.
9 | * Redistributions in binary form must reproduce the above copyright
10 | notice, this list of conditions and the following disclaimer in the
11 | documentation and/or other materials provided with the distribution.
12 | * Neither the name of the Semtech corporation nor the
13 | names of its contributors may be used to endorse or promote products
14 | derived from this software without specific prior written permission.
15 |
16 | NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY
17 | THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
18 | CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
19 | NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
20 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE
21 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 | POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/lora_basics_modem/lora_basics_modem/lbm_lib/smtc_modem_core/smtc_ralf/license.md:
--------------------------------------------------------------------------------
1 | Revised BSD License
2 | Copyright Semtech Corporation 2020. All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted provided that the following conditions are met:
6 | * Redistributions of source code must retain the above copyright
7 | notice, this list of conditions and the following disclaimer.
8 | * Redistributions in binary form must reproduce the above copyright
9 | notice, this list of conditions and the following disclaimer in the
10 | documentation and/or other materials provided with the distribution.
11 | * Neither the name of the Semtech corporation nor the
12 | names of its contributors may be used to endorse or promote products
13 | derived from this software without specific prior written permission.
14 |
15 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 | ARE DISCLAIMED. IN NO EVENT SHALL SEMTECH CORPORATION BE LIABLE FOR ANY
19 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 |
--------------------------------------------------------------------------------
/lora_basics_modem/makefiles/common.mk:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------------------------
2 | # Indicates library location
3 | #-----------------------------------------------------------------------------
4 |
5 | C_INCLUDES += \
6 | -I$(LORA_BASICS_MODEM)/smtc_modem_api/ \
7 | -I$(LORA_BASICS_MODEM)/smtc_modem_hal/ \
8 | -I$(LORA_BASICS_MODEM)/smtc_modem_core/smtc_ralf/src \
9 | -I$(LORA_BASICS_MODEM)/smtc_modem_core/smtc_ral/src
10 |
11 |
12 | # Add printers
13 | C_INCLUDES += -I$(TOP_DIR)/lora_basics_modem/printers/\
14 |
15 |
16 | C_SOURCES += \
17 | $(TOP_DIR)/lora_basics_modem/printers/smtc_modem_api_str.c
18 |
19 | #-----------------------------------------------------------------------------
20 | # Buid targets
21 | #-----------------------------------------------------------------------------
22 | .PHONY: build_basic_modem
23 |
24 | build_basic_modem:
25 | $(MAKE) -C $(LORA_BASICS_MODEM) basic_modem MCU_FLAGS="$(MCU) -DRP_MARGIN_DELAY=$(RP_MARGIN_DELAY)" RADIO=$(RADIO) RP_VERSION=$(RP_VERSION) MODEM_TRACE=$(MODEM_TRACE) CRYPTO=$(CRYPTO) LBM_GEOLOCATION=$(LBM_GEOLOCATION) DEBUG=$(DEBUG) LBM_STORE_AND_FORWARD=$(LBM_STORE_AND_FORWARD) REGION=$(REGION)
26 |
27 | #-----------------------------------------------------------------------------
28 | # Clean targets
29 | #-----------------------------------------------------------------------------
30 |
31 | .PHONY: clean_lbm
32 | clean_lbm:
33 | $(MAKE) -C $(LORA_BASICS_MODEM) clean_all
34 |
--------------------------------------------------------------------------------
/lora_basics_modem/makefiles/printing.mk:
--------------------------------------------------------------------------------
1 | ######################################
2 | # Some pretty colors and printing
3 | ######################################
4 |
5 | ######################################
6 | # Verbose build
7 | ######################################
8 | ifdef VERBOSE
9 | SILENT =
10 | else
11 | SILENT = @
12 | endif
13 |
14 | # Shell colors
15 | BOLD_RED := '\033[1;31m'
16 | BOLD_CYAN := '\033[1;36m'
17 | BOLD_GREEN := '\033[1;32m'
18 | BOLD_PURPLE := '\033[1;35m'
19 | BOLD_YELLOW:= '\033[1;33m'
20 | IPURPLE:= '\033[0;95m'
21 | BIPURPLE:= '\033[1;95m'
22 |
23 | NC := '\033[0m' # no color
24 | ECHO = @echo -e $(LIGHT_CYAN)
25 | ECHO_OK = @echo -e $(LIGHT_GREEN)
26 | ECHO_CMD = /bin/echo
27 |
28 | define echo
29 | @$(ECHO_CMD) -e $(BOLD_CYAN)$(1)$(NC)
30 | endef
31 |
32 | define echo_error
33 | @$(ECHO_CMD) -e $(BOLD_RED)'! '$(1)$(NC)
34 | endef
35 |
36 | define build
37 | @echo -e $(BOLD_CYAN)'['$(1)'] Building '$(2)$(NC)
38 | endef
39 |
40 | define success
41 | @echo -e $(BOLD_GREEN)'+ '$(1)' [SUCCESS]'$(NC)
42 | endef
43 |
44 | define warn
45 | @$(ECHO_CMD) -e $(BOLD_PURPLE)'! '$(1)$(NC)
46 | endef
47 |
48 | define echo_help
49 | @$(ECHO_CMD) -e $(IPURPLE)'| '$(1)$(NC)
50 | endef
51 |
52 | define echo_help_b
53 | @$(ECHO_CMD) -e $(BIPURPLE)' '$(1)$(NC)
54 | endef
55 |
56 | define echo_build
57 | @$(ECHO_CMD) -e $(BOLD_YELLOW)$(1)$(NC)
58 | endef
59 |
--------------------------------------------------------------------------------