...
Native Installation
CMake (must be v3.14 or greater)
Make
ST-LINK GDB Server (via STMCubeIDE)
VSCode “Cortex-Debug” Extension
VSCode “Cortex-Debug: Device Support Pack - STM32WL” Extension
Terminal Program (choose one)
[OPTIONAL] GNU ARM toolchain (also packaged with STM32CubeIDE)
*NOTE: Be sure to add/install all tools/libraries into your system path.
This may be necessary of all tools, but is especially important for
ST-LINK_gdbserver
and it’s shared library dependency,libSTLinkUSBDriver.so
(or platform specific equivalent).*Linux:
Code Block export PATH=/opt/st/stm32cubeide_1.8.0/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.linux64_2.0.0.202105311346/tools/bin:${PATH} export PATH=/opt/st/stm32cubeide_1.8.0/plugins/com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.linux64_2.0.100.202110141430/tools/bin:${PATH} export PATH=/opt/st/stm32cubeide_1.8.0/plugins/com.st.stm32cube.ide.mcu.externaltools.stlink-gdb-server.linux64_2.0.100.202109301221/tools/bin:${PATH} export LD_LIBRARY_PATH=/opt/st/stm32cubeide_1.8.0/plugins/com.st.stm32cube.ide.mcu.externaltools.stlink-gdb-server.linux64_2.0.100.202109301221/tools/bin/native/linux_x64:${LD_LIBRARY_PATH}
Mac OS (set in your ~/.bashrc file or whatever terminal you prefer):
Code Block export PATH="/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin:$PATH"export PATH="/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin:$PATH" export PATH="/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.macos64_2.0.100.202110141430/tools/bin:$PATH" export PATH="/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.stlink-gdb-server.macos64_2.0.100.2109301221/tools/bin:$PATH” export DYLD_LIBRARY_PATH="/Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.stlink-gdb-server.macos64_2.0.100.202109301221/tools/bin/native/mac_x64:$DYLD_LIBRARY_PATH”
[LINUX ONLY] Containerized Development Environment
...
Code Block |
---|
{"req":"card.wifi","ssid":"<ssid name>","password":"<password>"}
|
There are two ways to connect your project to Notehub:
Configure the Notecard to connect to your Notehub product directly over USB (as you normally would).
Code Block {"req":"hub.set","product":"<your_product_id>"}
Update the
NOTECARD_PRODUCT_UID
variable insparrow-lora/Application/config_notecard.h
to force your Sparrow Applications to connect to the desired Notehub product.
...
Identify the value associated with your “current board” from the following table:
Board Value Nucleo 0 Sparrow v1.0 1 Sparrow v1.1 2
Update the
CMakeLists.txt
file in the root folder of the workspace.Add an entry for “CURRENT_BOARD” (e.g.
CURRENT_BOARD=1
) in the following block...Code Block # Set global compile settings add_compile_definitions( STM32WL55xx CORE_CM4 )
[OPTIONAL][Intellisense Only] Update the
.vscode/c-cpp-properties.json
file.Add an entry for “CURRENT_BOARD” (e.g.
"CURRENT_BOARD=1",
) in the following block...Code Block "defines": [ "CMAKE_TOOLCHAIN_FILE=${workspaceFolder}/arm-gcc-toolchain.cmake", "CORE_CM4", "STM32WL55xx" ],
Build Sparrow Firmware
Hotkey: Ctrl+Shift+B
...