Browse Source

added NUCLEO L073RZ board, minimal-printf

nvstore
Anthony Hinsinger 7 years ago
parent
commit
e333e16041
  1. 2
      .clang-format
  2. 8
      .mbedignore
  3. 18
      README.md
  4. 64
      lora_radio_helper.h
  5. 11
      main.cpp
  6. 0
      mbed-lora-radio-drv.lib
  7. 48
      mbed_app.json
  8. 2718
      mbedtls_lora_config.h
  9. 1
      minimal-printf.lib

2
.clang-format

@ -72,7 +72,7 @@ PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60 PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Left PointerAlignment: Left
ReflowComments: true ReflowComments: true
SortIncludes: true SortIncludes: false
SpaceAfterCStyleCast: false SpaceAfterCStyleCast: false
SpaceAfterTemplateKeyword: false SpaceAfterTemplateKeyword: false
SpaceBeforeAssignmentOperators: true SpaceBeforeAssignmentOperators: true

8
.mbedignore

@ -0,0 +1,8 @@
mbed-os/features/netsocket/*
mbed-os/features/cellular/*
mbed-os/features/frameworks/greentea-client/*
mbed-os/features/frameworks/utest/*
mbed-os/features/frameworks/unity/*
mbed-os/features/nanostack/*
mbed-os/features/lwipstack/*
mbed-os/components/wifi/esp8266-driver/*

18
README.md

@ -36,3 +36,21 @@ From STlink CN4 Connector to RAK811 "shortest" connector (pin 1 at the same side
4 -> 4 (DATA) 4 -> 4 (DATA)
5 -> 2 (RST) 5 -> 2 (RST)
``` ```
### rewire STLink on a cutted Nucleo board
From STlink CN4 Connector to Nucleo CN7
```
2 -> 15 (CLK)
3 -> 19,20,22 (GND)
4 -> 13 (DATA)
5 -> 14 (RST)
```
From STLink CN3 Connector to Nucleo CN7 (stdio through USB)
```
rx -> 1 (USART4_TX)
tx -> 2 (USART4_RX)
```

64
lora_radio_helper.h

@ -20,44 +20,56 @@
#ifndef APP_LORA_RADIO_HELPER_H_ #ifndef APP_LORA_RADIO_HELPER_H_
#define APP_LORA_RADIO_HELPER_H_ #define APP_LORA_RADIO_HELPER_H_
#if MBED_CONF_APP_LORAWAN_ENABLED
#ifdef DEVICE_SPI
#include "SX1272_LoRaRadio.h" #include "SX1272_LoRaRadio.h"
#include "SX1276_LoRaRadio.h" #include "SX1276_LoRaRadio.h"
#define SX1272 0xFF #define SX1272 0xFF
#define SX1276 0xEE #define SX1276 0xEE
#if(MBED_CONF_APP_LORA_RADIO == SX1272) #if (MBED_CONF_APP_LORA_RADIO == SX1272)
SX1272_LoRaRadio radio(MBED_CONF_APP_LORA_SPI_MOSI, MBED_CONF_APP_LORA_SPI_MISO, SX1272_LoRaRadio radio(MBED_CONF_APP_LORA_SPI_MOSI,
MBED_CONF_APP_LORA_SPI_SCLK, MBED_CONF_APP_LORA_CS, MBED_CONF_APP_LORA_RESET, MBED_CONF_APP_LORA_SPI_MISO,
MBED_CONF_APP_LORA_DIO0, MBED_CONF_APP_LORA_DIO1, MBED_CONF_APP_LORA_DIO2, MBED_CONF_APP_LORA_SPI_SCLK,
MBED_CONF_APP_LORA_DIO3, MBED_CONF_APP_LORA_DIO4, MBED_CONF_APP_LORA_DIO5, MBED_CONF_APP_LORA_CS,
MBED_CONF_APP_LORA_RF_SWITCH_CTL1, MBED_CONF_APP_LORA_RF_SWITCH_CTL2, MBED_CONF_APP_LORA_RESET,
MBED_CONF_APP_LORA_TXCTL, MBED_CONF_APP_LORA_RXCTL, MBED_CONF_APP_LORA_DIO0,
MBED_CONF_APP_LORA_ANT_SWITCH, MBED_CONF_APP_LORA_PWR_AMP_CTL, MBED_CONF_APP_LORA_DIO1,
MBED_CONF_APP_LORA_DIO2,
MBED_CONF_APP_LORA_DIO3,
MBED_CONF_APP_LORA_DIO4,
MBED_CONF_APP_LORA_DIO5,
MBED_CONF_APP_LORA_RF_SWITCH_CTL1,
MBED_CONF_APP_LORA_RF_SWITCH_CTL2,
MBED_CONF_APP_LORA_TXCTL,
MBED_CONF_APP_LORA_RXCTL,
MBED_CONF_APP_LORA_ANT_SWITCH,
MBED_CONF_APP_LORA_PWR_AMP_CTL,
MBED_CONF_APP_LORA_TCXO); MBED_CONF_APP_LORA_TCXO);
#elif(MBED_CONF_APP_LORA_RADIO == SX1276) #elif (MBED_CONF_APP_LORA_RADIO == SX1276)
SX1276_LoRaRadio radio(MBED_CONF_APP_LORA_SPI_MOSI, MBED_CONF_APP_LORA_SPI_MISO, SX1276_LoRaRadio radio(MBED_CONF_APP_LORA_SPI_MOSI,
MBED_CONF_APP_LORA_SPI_SCLK, MBED_CONF_APP_LORA_CS, MBED_CONF_APP_LORA_RESET, MBED_CONF_APP_LORA_SPI_MISO,
MBED_CONF_APP_LORA_DIO0, MBED_CONF_APP_LORA_DIO1, MBED_CONF_APP_LORA_DIO2, MBED_CONF_APP_LORA_SPI_SCLK,
MBED_CONF_APP_LORA_DIO3, MBED_CONF_APP_LORA_DIO4, MBED_CONF_APP_LORA_DIO5, MBED_CONF_APP_LORA_CS,
MBED_CONF_APP_LORA_RF_SWITCH_CTL1, MBED_CONF_APP_LORA_RF_SWITCH_CTL2, MBED_CONF_APP_LORA_RESET,
MBED_CONF_APP_LORA_TXCTL, MBED_CONF_APP_LORA_RXCTL, MBED_CONF_APP_LORA_DIO0,
MBED_CONF_APP_LORA_ANT_SWITCH, MBED_CONF_APP_LORA_PWR_AMP_CTL, MBED_CONF_APP_LORA_DIO1,
MBED_CONF_APP_LORA_DIO2,
MBED_CONF_APP_LORA_DIO3,
MBED_CONF_APP_LORA_DIO4,
MBED_CONF_APP_LORA_DIO5,
MBED_CONF_APP_LORA_RF_SWITCH_CTL1,
MBED_CONF_APP_LORA_RF_SWITCH_CTL2,
MBED_CONF_APP_LORA_TXCTL,
MBED_CONF_APP_LORA_RXCTL,
MBED_CONF_APP_LORA_ANT_SWITCH,
MBED_CONF_APP_LORA_PWR_AMP_CTL,
MBED_CONF_APP_LORA_TCXO); MBED_CONF_APP_LORA_TCXO);
#else #else
#error "Unknown LoRa radio specified (SX1272,SX1276 are valid)" #error "Unknown LoRa radio specified (SX1272,SX1276 are valid)"
#endif #endif
#endif // DEVICE_SPI
#endif // MBED_CONF_APP_LORAWAN_ENABLED
#endif /* APP_LORA_RADIO_HELPER_H_ */ #endif /* APP_LORA_RADIO_HELPER_H_ */

11
main.cpp

@ -17,14 +17,14 @@ uint8_t rx_buffer[LORAMAC_PHY_MAXPAYLOAD];
* Sets up an application dependent transmission timer in ms. Used only when Duty Cycling is off for * Sets up an application dependent transmission timer in ms. Used only when Duty Cycling is off for
* testing * testing
*/ */
#define TX_TIMER 600000 #define TX_TIMER 30000 //600000
/** /**
* Maximum number of events for the event queue. * Maximum number of events for the event queue.
* 16 is the safe number for the stack events, however, if application * 16 is the safe number for the stack events, however, if application
* also uses the queue for whatever purposes, this number should be increased.c * also uses the queue for whatever purposes, this number should be increased.c
*/ */
#define MAX_NUMBER_OF_EVENTS 16 #define MAX_NUMBER_OF_EVENTS 10
/** /**
* Maximum number of retries for CONFIRMED messages before giving up * Maximum number of retries for CONFIRMED messages before giving up
@ -45,9 +45,10 @@ AnalogIn bat(MBED_CONF_APP_BATTERY_ADC);
DHT dht(MBED_CONF_APP_DHT_DATA, MBED_CONF_APP_DHT_TYPE); DHT dht(MBED_CONF_APP_DHT_DATA, MBED_CONF_APP_DHT_TYPE);
#endif #endif
DigitalOut led(LED1, 1); //DigitalOut led(LED1, 1);
int main(void) { int main(void) {
lorawan_status_t retcode; lorawan_status_t retcode;
// Initialize LoRaWAN stack // Initialize LoRaWAN stack
if(lorawan.initialize(&ev_queue) != LORAWAN_STATUS_OK) { if(lorawan.initialize(&ev_queue) != LORAWAN_STATUS_OK) {
@ -76,7 +77,7 @@ int main(void) {
printf("\r\n Adaptive data rate (ADR) - Enabled \r\n"); printf("\r\n Adaptive data rate (ADR) - Enabled \r\n");
led = 0; //led = 0;
retcode = lorawan.connect(); retcode = lorawan.connect();
@ -161,7 +162,7 @@ static void receive_message() {
static void lora_event_handler(lorawan_event_t event) { static void lora_event_handler(lorawan_event_t event) {
switch(event) { switch(event) {
case CONNECTED: case CONNECTED:
led = 1; //led = 1;
printf("\r\n Connection - Successful \r\n"); printf("\r\n Connection - Successful \r\n");
if(MBED_CONF_LORA_DUTY_CYCLE_ON) { if(MBED_CONF_LORA_DUTY_CYCLE_ON) {
send_message(); send_message();

0
mbed-semtech-lora-rf-drivers.lib → mbed-lora-radio-drv.lib

48
mbed_app.json

@ -5,9 +5,6 @@
"value": "SX1276" "value": "SX1276"
}, },
"main_stack_size": { "value": 4096 }, "main_stack_size": { "value": 4096 },
"lorawan-enabled": { "value": false},
"lora-spi-mosi": { "value": "NC" }, "lora-spi-mosi": { "value": "NC" },
"lora-spi-miso": { "value": "NC" }, "lora-spi-miso": { "value": "NC" },
"lora-spi-sclk": { "value": "NC" }, "lora-spi-sclk": { "value": "NC" },
@ -26,28 +23,27 @@
"lora-ant-switch": { "value": "NC" }, "lora-ant-switch": { "value": "NC" },
"lora-pwr-amp-ctl": { "value": "NC" }, "lora-pwr-amp-ctl": { "value": "NC" },
"lora-tcxo": { "value": "NC" }, "lora-tcxo": { "value": "NC" },
"battery-enabled": { "value": "false" }, "battery-enabled": { "value": "false" },
"battery-adc": { "value": "NC" }, "battery-adc": { "value": "NC" },
"dht-enabled": { "value": "false" }, "dht-enabled": { "value": "false" },
"dht-type": { "value": "DHT::DHT22" }, "dht-type": { "value": "DHT::DHT22" },
"dht-data": { "value": "NC" } "dht-data": { "value": "NC" }
}, },
"target_overrides": { "target_overrides": {
"*": { "*": {
"platform.stdio-convert-newlines": true,
"platform.stdio-baud-rate": 115200,
"platform.default-serial-baud-rate": 115200,
"lora.app-port": 3, "lora.app-port": 3,
"lora.over-the-air-activation": true, "lora.over-the-air-activation": true,
"lora.duty-cycle-on": false, "lora.duty-cycle-on": false,
"lora.phy": 0, "lora.phy": 0,
"lora.device-eui": "{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }", "lora.device-eui": "{ 0x00, 0xC0, 0xE1, 0xC8, 0x1E, 0xFE, 0xBA, 0xA7 }",
"lora.application-eui": "{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }", "lora.application-eui": "{ 0x70, 0xB3, 0xD5, 0x7E, 0xF0, 0x00, 0x40, 0x5D }",
"lora.application-key": "{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }" "lora.application-key": "{ 0x15, 0x8A, 0x34, 0x3B, 0xCC, 0x3E, 0xDE, 0xEC, 0xD2, 0x93, 0x45, 0xB4, 0xD3, 0x64, 0xA4, 0x37 }"
}, },
"K64F": { "K64F": {
"lorawan-enabled": true,
"lora-spi-mosi": "D11", "lora-spi-mosi": "D11",
"lora-spi-miso": "D12", "lora-spi-miso": "D12",
"lora-spi-sclk": "D13", "lora-spi-sclk": "D13",
@ -70,7 +66,6 @@
"DISCO_L072CZ_LRWAN1": { "DISCO_L072CZ_LRWAN1": {
"main_stack_size": 3072, "main_stack_size": 3072,
"lorawan-enabled": true,
"lora-radio": "SX1276", "lora-radio": "SX1276",
"lora-spi-mosi": "PA_7", "lora-spi-mosi": "PA_7",
@ -94,8 +89,6 @@
}, },
"MTB_MURATA_ABZ": { "MTB_MURATA_ABZ": {
"lorawan-enabled": true,
"lora-radio": "SX1276", "lora-radio": "SX1276",
"lora-spi-mosi": "PA_7", "lora-spi-mosi": "PA_7",
"lora-spi-miso": "PA_6", "lora-spi-miso": "PA_6",
@ -118,8 +111,6 @@
}, },
"XDOT_L151CC": { "XDOT_L151CC": {
"lorawan-enabled": true,
"lora-radio": "SX1272", "lora-radio": "SX1272",
"lora-spi-mosi": "LORA_MOSI", "lora-spi-mosi": "LORA_MOSI",
"lora-spi-miso": "LORA_MISO", "lora-spi-miso": "LORA_MISO",
@ -142,8 +133,6 @@
}, },
"MTB_MTS_XDOT": { "MTB_MTS_XDOT": {
"lorawan-enabled": true,
"lora-radio": "SX1272", "lora-radio": "SX1272",
"lora-spi-mosi": "LORA_MOSI", "lora-spi-mosi": "LORA_MOSI",
"lora-spi-miso": "LORA_MISO", "lora-spi-miso": "LORA_MISO",
@ -166,8 +155,6 @@
}, },
"LTEK_FF1705": { "LTEK_FF1705": {
"lorawan-enabled": true,
"lora-radio": "SX1272", "lora-radio": "SX1272",
"lora-spi-mosi": "LORA_MOSI", "lora-spi-mosi": "LORA_MOSI",
"lora-spi-miso": "LORA_MISO", "lora-spi-miso": "LORA_MISO",
@ -190,8 +177,6 @@
}, },
"MTS_MDOT_F411RE": { "MTS_MDOT_F411RE": {
"lorawan-enabled": true,
"lora-radio": "SX1272", "lora-radio": "SX1272",
"lora-spi-mosi": "LORA_MOSI", "lora-spi-mosi": "LORA_MOSI",
"lora-spi-miso": "LORA_MISO", "lora-spi-miso": "LORA_MISO",
@ -214,8 +199,6 @@
}, },
"MTB_ADV_WISE_1510": { "MTB_ADV_WISE_1510": {
"lorawan-enabled": true,
"lora-radio": "SX1276", "lora-radio": "SX1276",
"lora-spi-mosi": "SPI_RF_MOSI", "lora-spi-mosi": "SPI_RF_MOSI",
"lora-spi-miso": "SPI_RF_MISO", "lora-spi-miso": "SPI_RF_MISO",
@ -238,8 +221,6 @@
}, },
"MTB_RAK811": { "MTB_RAK811": {
"lorawan-enabled": true,
"lora-radio": "SX1276", "lora-radio": "SX1276",
"lora-spi-mosi": "SPI_RF_MOSI", "lora-spi-mosi": "SPI_RF_MOSI",
"lora-spi-miso": "SPI_RF_MISO", "lora-spi-miso": "SPI_RF_MISO",
@ -259,18 +240,19 @@
"lora-ant-switch": "NC", "lora-ant-switch": "NC",
"lora-pwr-amp-ctl": "NC", "lora-pwr-amp-ctl": "NC",
"lora-tcxo": "RF_TCXO_EN", "lora-tcxo": "RF_TCXO_EN",
"battery-enabled": true, "battery-enabled": true,
"battery-adc": "PA_2", "battery-adc": "PA_2",
"dht-enabled": true, "dht-enabled": true,
"dht-data": "PA_1", "dht-data": "PA_1",
"dht-type": "DHT::DHT22" "dht-type": "DHT::DHT22"
}, },
"NUCLEO_L073RZ": { "NUCLEO_L073RZ": {
"lorawan-enabled": true, "main_stack_size": 1024,
"target.lpticker_lptim": 0,
"target.clock_source": "USE_PLL_HSI",
"target.stdio_uart_tx": "PC_10",
"target.stdio_uart_rx": "PC_11",
"lora-radio": "SX1272", "lora-radio": "SX1272",
"lora-spi-mosi": "D11", "lora-spi-mosi": "D11",
"lora-spi-miso": "D12", "lora-spi-miso": "D12",
@ -281,8 +263,8 @@
"lora-dio1": "D3", "lora-dio1": "D3",
"lora-dio2": "D4", "lora-dio2": "D4",
"lora-dio3": "D5", "lora-dio3": "D5",
"lora-dio4": "D8", "lora-dio4": "NC",
"lora-dio5": "D9", "lora-dio5": "NC",
"lora-rf-switch-ctl1": "NC", "lora-rf-switch-ctl1": "NC",
"lora-rf-switch-ctl2": "NC", "lora-rf-switch-ctl2": "NC",
"lora-txctl": "NC", "lora-txctl": "NC",
@ -290,12 +272,10 @@
"lora-ant-switch": "A4", "lora-ant-switch": "A4",
"lora-pwr-amp-ctl": "NC", "lora-pwr-amp-ctl": "NC",
"lora-tcxo": "NC", "lora-tcxo": "NC",
"battery-enabled": false, "battery-enabled": false,
"battery-adc": "PA_2", "battery-adc": "PA_2",
"dht-enabled": true, "dht-enabled": true,
"dht-data": "PA_1", "dht-data": "D8",
"dht-type": "DHT::DHT22" "dht-type": "DHT::DHT22"
} }
}, },

2718
mbedtls_lora_config.h

File diff suppressed because it is too large Load Diff

1
minimal-printf.lib

@ -0,0 +1 @@
https://github.com/ARMmbed/minimal-printf/#7a57a3e36a227a3e412cec55b0eeaf649b9fa7c9
Loading…
Cancel
Save