From cf1c0d1737f1da2ac92dbd240839168e26bef82d Mon Sep 17 00:00:00 2001 From: Anthony Hinsinger Date: Tue, 16 Apr 2019 11:56:36 +0200 Subject: [PATCH] Added error checking --- main.cpp | 66 +++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 46 insertions(+), 20 deletions(-) diff --git a/main.cpp b/main.cpp index cd61ac8..8f9ac97 100644 --- a/main.cpp +++ b/main.cpp @@ -6,9 +6,11 @@ #include "mbed.h" #include "nvstore.h" -#define NVKEY_DEVICE_EUI 1 -#define NVKEY_APP_EUI 2 -#define NVKEY_APP_KEY 3 +#define NVKEY_LORA_DEVICE_EUI 0x01 +#define NVKEY_LORA_APP_EUI 0x02 +#define NVKEY_LORA_APP_KEY 0x03 +#define NVKEY_HX711_OFFSET 0x04 +#define NVKEY_HX711_SCALE 0x05 #if MBED_CONF_APP_MODE_BOOTSTRAP @@ -19,23 +21,33 @@ const static uint8_t app_key[] = MBED_CONF_LORA_APPLICATION_KEY; int main(void) { int rc; uint16_t key; - uint16_t rsize; - uint8_t test[8]; - // NVStore is a sigleton, get its instance NVStore &nvstore = NVStore::get_instance(); rc = nvstore.init(); - printf("Init NVStore : %d\n", rc); + if (rc != NVSTORE_SUCCESS) { + printf("Unable to init NVStore : %d\n", rc); + return -1; + } rc = nvstore.reset(); - printf("Reset NVStore : %d\n", rc); + if (rc != NVSTORE_SUCCESS) { + printf("Unable to reset NVStore : %d\n", rc); + return -1; + } + printf("NVStore initiated and reseted\n"); - key = NVKEY_DEVICE_EUI; - nvstore.set(key, sizeof(dev_eui), dev_eui); - key = NVKEY_APP_EUI; - nvstore.set(key, sizeof(app_eui), app_eui); - key = NVKEY_APP_KEY; - nvstore.set(key, sizeof(app_key), app_key); + key = NVKEY_LORA_DEVICE_EUI; + if (nvstore.set(key, sizeof(dev_eui), dev_eui) != NVSTORE_SUCCESS) { + printf("Unable to write LoRa Device EUI\n"); + } + key = NVKEY_LORA_APP_EUI; + if (nvstore.set(key, sizeof(app_eui), app_eui) != NVSTORE_SUCCESS) { + printf("Unable to write LoRa Application EUI\n"); + } + key = NVKEY_LORA_APP_KEY; + if (nvstore.set(key, sizeof(app_key), app_key) != NVSTORE_SUCCESS) { + printf("Unable to write LoRa Application key\n"); + } while(1) { printf("Bootstrap done\n"); @@ -131,12 +143,26 @@ int main(void) { return -1; } - key = NVKEY_DEVICE_EUI; - nvstore.get(key, sizeof(dev_eui), dev_eui, readsize); - key = NVKEY_APP_EUI; - nvstore.get(key, sizeof(app_eui), app_eui, readsize); - key = NVKEY_APP_KEY; - nvstore.get(key, sizeof(app_key), app_key, readsize); + key = NVKEY_LORA_DEVICE_EUI; + rc = nvstore.get(key, sizeof(dev_eui), dev_eui, readsize); + if (rc != NVSTORE_SUCCESS || readsize != sizeof(dev_eui)) { + debug("\r\n Failed to read LoRa Device EUI from NVStore! \r\n"); + return -1; + } + + key = NVKEY_LORA_APP_EUI; + rc = nvstore.get(key, sizeof(app_eui), app_eui, readsize); + if (rc != NVSTORE_SUCCESS || readsize != sizeof(app_eui)) { + debug("\r\n Failed to read LoRa Application EUI from NVStore! \r\n"); + return -1; + } + + key = NVKEY_LORA_APP_KEY; + rc =nvstore.get(key, sizeof(app_key), app_key, readsize); + if (rc != NVSTORE_SUCCESS || readsize != sizeof(app_key)) { + debug("\r\n Failed to read LoRa Application Key from NVStore! \r\n"); + return -1; + } connect.connection_u.otaa.app_eui = const_cast(app_eui); connect.connection_u.otaa.dev_eui = const_cast(dev_eui);