mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
68 lines
2.5 KiB
Plaintext
68 lines
2.5 KiB
Plaintext
/**
|
|
@defgroup boards_i-nucleo-lrwan1 ST I-NUCLEO-LRWAN1 LoRa board
|
|
@ingroup boards
|
|
@brief Support for the ST I-NUCLEO-LRWAN1 LoRa board shield
|
|
|
|
## Description
|
|
|
|
<img src="https://www.st.com/content/ccc/fragment/product_related/rpn_information/board_photo/group0/d0/d8/be/59/bb/0f/42/d9/i-nucleo-lrwan1.jpg/files/i-nucleo-lrwan1.jpg/_jcr_content/translations/en.i-nucleo-lrwan1.jpg"
|
|
alt="I-NUCLEO-LRWAN1" style="width:400px;"/>
|
|
|
|
The [I-NUCLEO-LRWAN1](https://www.st.com/en/evaluation-tools/i-nucleo-lrwan1.html)
|
|
board provides LoRa connectivity with an SX1272 radio connected via SPI
|
|
to an ultra-low power
|
|
[STM32L052T8](https://www.st.com/en/microcontrollers-microprocessors/stm32l052t8.html).
|
|
microcontroller.
|
|
|
|
For details, the
|
|
[schematics are available on GitHub](https://github.com/USIWP1Module/USI_I-NUCLEO-LRWAN1/blob/master/Schematics/USI%20LoRa%20Arduino%20shield_SCH_20161115-1.pdf).
|
|
|
|
_Note_: to use the on-board I2C sensors, the R19 and R20 shorts must be closed
|
|
(soldered).
|
|
|
|
## Flashing the board
|
|
|
|
To flash, one needs to use an external ST-Link programmer connected to SWD pins
|
|
of the JP6 connector.
|
|
|
|
By default, the flash on the microcontroller is write protected so before being
|
|
able to flash it, one needs to unlock using the following:
|
|
- Apply the following patch to the `openocd.sh` script:
|
|
```diff
|
|
diff --git a/dist/tools/openocd/openocd.sh b/dist/tools/openocd/openocd.sh
|
|
index c59a1939a2..0c359e438c 100755
|
|
--- a/dist/tools/openocd/openocd.sh
|
|
+++ b/dist/tools/openocd/openocd.sh
|
|
@@ -248,6 +248,11 @@ do_flash() {
|
|
-c 'init' \
|
|
-c 'targets' \
|
|
-c 'reset halt' \
|
|
+ -c 'stm32lx unlock 0' \
|
|
+ -c 'reset halt' \
|
|
+ -c 'init' \
|
|
+ -c 'targets' \
|
|
+ -c 'reset halt' \
|
|
${OPENOCD_PRE_FLASH_CMDS} \
|
|
-c 'flash write_image erase \"${IMAGE_FILE}\" ${IMAGE_OFFSET} ${IMAGE_TYPE}' \
|
|
${OPENOCD_PRE_VERIFY_CMDS} \
|
|
```
|
|
- Run make flash:
|
|
```sh
|
|
make BOARD=i-nucleo-lrwan1 -C examples/hello-world flash
|
|
```
|
|
The command will fail but after that the memory will be unlocked after a
|
|
power cycle. The line added above in `openocd.sh` can also be removed.
|
|
- Unplug the board and replug-it: the board is now flashable normally.
|
|
|
|
Note that this unlock procedure only needs to be done once.
|
|
|
|
## Accessing STDIO
|
|
|
|
STDIO is available on pin 0 and 1 on CN9 so one needs an USB to UART to connect
|
|
to STDIO.
|
|
|
|
When flashing using an ST-Link, STDIO pins can be plugged directly to the RX/TX
|
|
pins on the programmer, STDIO is then accessible like on any Nucleo boards.
|
|
|
|
*/
|