-
Notifications
You must be signed in to change notification settings - Fork 11
Comparing changes
Open a pull request
base repository: stm32duino/STM32LoRaWAN
base: main
head repository: stm32duino/STM32LoRaWAN
compare: first-preview
- 12 commits
- 130 files changed
- 1 contributor
Commits on Aug 11, 2022
-
These are various pieces of glue that provide a "board support package" to the STM32CubeWL codebase. These mostly contain configuration for the STM32CubeWL code or initialization for HAL components used by STM32CubeWL or other parts of the code. Note that these files reference some STM32CubeWL files that are not yet added to the repo yet, these will be added later (but ordering things like this makes it easier to add those files later and update their references to these glue files directly). Most of these files are based on various template files from the LoRaWAN or SubGhz middlewares in STM32CubeWL and licensed under the BSD-3-Clause license. The origin of the files added in this commit is as follows (original paths reference to files from STM32CubeWL). - src/Glue/radio_conf.h Based on Middlewares/Third_Party/SubGHz_Phy/Conf/radio_conf_template.h - src/Glue/mw_log_conf.h Based on Middlewares/Third_Party/SubGHz_Phy/Conf/mw_log_conf_template.h - src/Glue/lorawan_conf.h Based on Middlewares/Third_Party/LoRaWAN/Conf/lorawan_conf_template.h - src/Glue/timer.h Largely taken verbatim from Middlewares/Third_Party/LoRaWAN/Conf/timer_template.h - src/Glue/se-identity.h Based on ./Middlewares/Third_Party/LoRaWAN/Conf/se-identity_template.h - src/Glue/subghz.[ch] Based on ./Middlewares/Third_Party/SubGHz_Phy/Conf/subghz_template.[ch] - src/Glue/radio_board_if.h Based on Projects/NUCLEO-WL55JC/Applications/LoRaWAN/LoRaWAN_End_Node/LoRaWAN/Target BSD-licensed version provided privately by ST. - src/Glue/utilities_conf.h src/Glue/systime.h src/Glue/radio_board_if.c New implementation.
Configuration menu - View commit details
-
Copy full SHA for 5b7aa2c - Browse repository at this point
Copy the full SHA 5b7aa2cView commit details -
This script copies selected files from the STM32CubeWL package (unpacked zip or git clone) into this library as needed. It can be used for the initial copy as well as for later updates.
Configuration menu - View commit details
-
Copy full SHA for 4a51224 - Browse repository at this point
Copy the full SHA 4a51224View commit details -
This script can be used to, after an update, fix up various include paths. The STM32CubeWL code assumes a lot of files are in the include path, but this is not the case in the Arduino build. So this script modifies the STM32CubeWL files (and any other source files) to resolve any include files using relative paths for any header files that are available within this library. This script is intended to be ran whenever update.sh is ran.
Configuration menu - View commit details
-
Copy full SHA for c16c533 - Browse repository at this point
Copy the full SHA c16c533View commit details -
Add STM32CubeWL 1.2.0 code verbatim
This used the previously added update.sh script to add the relevant bits of the STM32CubeWL code verbatim, and uses the fix-includes.py script to fix the include directives. No other changes were made to these files. This code was downloaded from https://www.st.com/en/embedded-software/stm32cubewl.html as version 1.2.0 was not published to https://github.com/STMicroelectronics/STM32CubeWL yet.
Configuration menu - View commit details
-
Copy full SHA for 8f2b1a2 - Browse repository at this point
Copy the full SHA 8f2b1a2View commit details -
Add timer driver based on RTC HAL
The main part of this commit is the timer_if.c code, which implements UTIL_TimerDriver using the RTC and direct HAL calls. rtc.c/h handles RTC initialization. This commit uses a BSD-licensed version of these files, which was privately provided by ST. These files are identical to the files from STM32CMubeWL 1.2.0, except for the license header. STM32CubeWL/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/LoRaWAN_End_Node/Core/*/timer_if.[ch] STM32CubeWL/Projects/NUCLEO-WL55JC/Applications/LoRaWAN/LoRaWAN_End_Node/Core/*/rtc.[ch] The files added in this commit have only been modified using fix-include.py, and by adding an alarm IRQ handler to rtc.c. main.h is a very much stripped down version of that file, containing just some RTC settings used by both other files.
Configuration menu - View commit details
-
Copy full SHA for adabf94 - Browse repository at this point
Copy the full SHA adabf94View commit details -
STM32LoRaWAN: Add main library class
This class is the main entrypoint for the Arduino API, wrapping the STM32CubeWL/LoRaMAC-Node API. This adds an initial version that has roughly the right shape, but is still incomplete and does not properly mimic the MKRWAN API yet (in particular is non-blocking everywhere and does not implement Stream I/O yet).
Configuration menu - View commit details
-
Copy full SHA for 86e81e0 - Browse repository at this point
Copy the full SHA 86e81e0View commit details -
This is just minimal and incomplete example.
Configuration menu - View commit details
-
Copy full SHA for 4094c20 - Browse repository at this point
Copy the full SHA 4094c20View commit details -
Make timer_if debug printing work
This can be enabled be defining `RTIF_DEBUG`. To make this work without modifying `timer_if.c`, this adds a tiny `sys_app.h` file that just defines a dummy UTIL_ADV_TRACE_COND_Fsend macro that forwards to the MW_LOG function.
Configuration menu - View commit details
-
Copy full SHA for 3eb345f - Browse repository at this point
Copy the full SHA 3eb345fView commit details -
Doxyfile: Add default doxygen configuration
This is just the default file generated by `doxygen -g` (version 1.9.1).
Configuration menu - View commit details
-
Copy full SHA for a28f768 - Browse repository at this point
Copy the full SHA a28f768View commit details -
Configuration menu - View commit details
-
Copy full SHA for 82dee6f - Browse repository at this point
Copy the full SHA 82dee6fView commit details -
STM32LoRaWAN: Make class mostly complete
This is a rather big commit that declares all methods that MKRWAN and MKRWAN_v2 have and most (but not all) are implemented yet. Some methods will never be implemented, or are complicated so will not be implemented soon, these methods are marked with the error attribute to get a readable error when used. The methods for channel configuration are also missing, but those just need a closer look and an implementation. This resolves a number of TODOs and makes uplink work using the MKRWAN Stream API, makes downlink work and implements most configuration methods (and adds a few more). It also adds documentation to most methods, though some overall documentation is still needed. The blocking/non-blocking behavior of join and data transmission is still incorrect (to be decided how this shouls work exactly).
Configuration menu - View commit details
-
Copy full SHA for 8a2411b - Browse repository at this point
Copy the full SHA 8a2411bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c0d9ce - Browse repository at this point
Copy the full SHA 0c0d9ceView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff main...first-preview