|
|
@@ -258,12 +258,12 @@ void lorawan_ed_app_thread_entry(void* parameter)
|
|
|
/* Private functions ---------------------------------------------------------*/
|
|
|
static void lorawan_ed_joined(void)
|
|
|
{
|
|
|
- lorawan_ed_request_device_class((DeviceClass_t)LORAWAN_ED_STACK_MAC_PARAMETER_DEVICE_TYPE);
|
|
|
+ lorawan_ed_request_device_class((DeviceClass_t)lorawan_ed_init_params.Class);
|
|
|
}
|
|
|
|
|
|
static void lorawan_ed_tx_confirm(McpsConfirm_t *mcpsConfirm)
|
|
|
{
|
|
|
- /* nothings */
|
|
|
+
|
|
|
}
|
|
|
|
|
|
static void lorawan_ed_receive_message(lorawan_ed_appdata_t *app_data)
|
|
|
@@ -423,7 +423,7 @@ static void lorawan_ed_receive_linkcheck(MlmeConfirm_t *mlmeConfirm)
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("Request Server timed out: seqno=%d, time=%d ms\n", tx_seq_cnt, ( rx_timestamp - tx_timestamp ) );
|
|
|
+ rt_kprintf("Request Server timed out: seqno=%d, time=%d ms\r\n", tx_seq_cnt, ( rx_timestamp - tx_timestamp ) );
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -470,13 +470,13 @@ static void on_tx_timer_event(void)
|
|
|
avg_ed_snr = snr_value_total / (int32_t)rx_correct_cnt;
|
|
|
avg_gw_demod_margin = gw_demod_margin_value_total / (int32_t)rx_correct_cnt;
|
|
|
}
|
|
|
- rt_kprintf("\r\n====== LoRaWAN End-Device Ping statistics: ======\n");
|
|
|
- rt_kprintf("-> Tx pakcets: sent = %d, tx_total = %d.%d KByte\n",tx_seq_cnt, tx_total_kbyte_integer, tx_total_kbyte_decimal);
|
|
|
- rt_kprintf("-> Rx pakcets: received = %d, lost = %d, per = %d%, rx_total = %d.%d KByte\n",rx_correct_cnt, tx_seq_cnt - rx_correct_cnt, per,rx_total_kbyte_integer,rx_total_kbyte_decimal);
|
|
|
- rt_kprintf("--> End-Device Rx rssi: max_rssi = %d, min_rssi = %d, avg_rssi = %d\n",rssi_value_max,rssi_value_min,avg_ed_rssi);
|
|
|
- rt_kprintf("--> End-Device Rx snr : max_snr = %d, min_snr = %d, avg_snr = %d\n",snr_value_max,snr_value_min,avg_ed_snr);
|
|
|
- rt_kprintf("--> Gateway RX DemodMargin : max_margin = %d, min_margin = %d, avg_margin = %d\n",gw_demod_margin_value_max,gw_demod_margin_value_min,avg_gw_demod_margin);
|
|
|
- rt_kprintf("--> Gateway RX Numbers : %d\n",gw_received_nb);
|
|
|
+ rt_kprintf("\r\n====== LoRaWAN End-Device Ping statistics: ======\r\n");
|
|
|
+ rt_kprintf("-> Tx pakcets: sent = %d, tx_total = %d.%d KByte\r\n",tx_seq_cnt, tx_total_kbyte_integer, tx_total_kbyte_decimal);
|
|
|
+ rt_kprintf("-> Rx pakcets: received = %d, lost = %d, per = %d%, rx_total = %d.%d KByte\r\n",rx_correct_cnt, tx_seq_cnt - rx_correct_cnt, per,rx_total_kbyte_integer,rx_total_kbyte_decimal);
|
|
|
+ rt_kprintf("--> End-Device Rx rssi: max_rssi = %d, min_rssi = %d, avg_rssi = %d\r\n",rssi_value_max,rssi_value_min,avg_ed_rssi);
|
|
|
+ rt_kprintf("--> End-Device Rx snr : max_snr = %d, min_snr = %d, avg_snr = %d\r\n",snr_value_max,snr_value_min,avg_ed_snr);
|
|
|
+ rt_kprintf("--> Gateway RX DemodMargin : max_margin = %d, min_margin = %d, avg_margin = %d\r\n",gw_demod_margin_value_max,gw_demod_margin_value_min,avg_gw_demod_margin);
|
|
|
+ rt_kprintf("--> Gateway RX Numbers : %d\r\n",gw_received_nb);
|
|
|
rt_kprintf("====== LoRaWAN End-Device Ping Test Finished ======\r\n");
|
|
|
}
|
|
|
}
|
|
|
@@ -595,7 +595,7 @@ int lorawan_test_shell_init(void)
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("lorwan_ed_test_shell_thread creat fail!\n");
|
|
|
+ rt_kprintf("lorwan_ed_test_shell_thread creat fail!\r\n");
|
|
|
}
|
|
|
}
|
|
|
return 0;
|
|
|
@@ -619,35 +619,41 @@ typedef enum
|
|
|
CMD_LORAWAN_ED_STACK_JOIN_INDEX, // LoRaWAN End-device Join
|
|
|
CMD_LORAWAN_ED_STACK_PING_INDEX, // LoRaWAN End-device ping test
|
|
|
CMD_LORAWAN_ED_STACK_TX_INDEX, // LoRaWAN End-device TX data
|
|
|
+ CMD_LORAWAN_ED_STACK_SAVE_INDEX, // LoRaWAN End-device save
|
|
|
+ CMD_LORAWAN_ED_STACK_FACTORY_INDEX, // LoRaWAN End-device factory
|
|
|
}lorawan_shell_index_t;
|
|
|
|
|
|
const char* lorawan_help_info[] =
|
|
|
{
|
|
|
- [CMD_LORAWAN_ED_STACK_DEVEUI_INDEX] = "lorawan deveui - DevEui(8 Bytes)",
|
|
|
- [CMD_LORAWAN_ED_STACK_JOINEUI_INDEX] = "lorawan joineui - JoinEui(8 Bytes)",
|
|
|
- [CMD_LORAWAN_ED_STACK_APPKEY_INDEX] = "lorawan appkey - AppKey(16 Bytes)",
|
|
|
- [CMD_LORAWAN_ED_STACK_DEVADDR_INDEX] = "lorawan devaddr - DevAddr(4 Bytes)",
|
|
|
- [CMD_LORAWAN_ED_STACK_APPSKEY_INDEX] = "lorawan appskey - AppSKey(16 Bytes)",
|
|
|
- [CMD_LORAWAN_ED_STACK_NWKSENCKEY_INDEX] = "lorawan nwkskey - NwkSEncKey(16 Bytes)",
|
|
|
- [CMD_LORAWAN_ED_STACK_CLASS_INDEX] = "lorawan class - Class Type: A,B,C",
|
|
|
- [CMD_LORAWAN_ED_STACK_CONFIRM_INDEX] = "lorawan confirm - Data Message Type: Unconfirm,Confirm",
|
|
|
- [CMD_LORAWAN_ED_STACK_ACTIVATION_INDEX] = "lorawan activation - Activation Type: OTAA,ABP",
|
|
|
- [CMD_LORAWAN_ED_STACK_ADR_INDEX] = "lorawan adr - ADR enable",
|
|
|
- [CMD_LORAWAN_ED_STACK_JOIN_INDEX] = "lorawan join <nbtrials> <interval> - join network",
|
|
|
- [CMD_LORAWAN_ED_STACK_PING_INDEX] = "lorawan ping <nbtrials> <interval> - ping network",
|
|
|
- [CMD_LORAWAN_ED_STACK_TX_INDEX] = "lorawan tx <mode> <cfm> <port> <len> <data> - tx data",
|
|
|
+ [CMD_LORAWAN_ED_STACK_DEVEUI_INDEX] = "lorawan deveui <hex0..7> - set/get DevEui(8 Bytes)",
|
|
|
+ [CMD_LORAWAN_ED_STACK_JOINEUI_INDEX] = "lorawan joineui<hex0..7> - set/get JoinEui(8 Bytes)",
|
|
|
+ [CMD_LORAWAN_ED_STACK_APPKEY_INDEX] = "lorawan appkey <hex0..15> - set/get AppKey(16 Bytes)",
|
|
|
+ [CMD_LORAWAN_ED_STACK_DEVADDR_INDEX] = "lorawan devaddr <hex0..3> - set/get DevAddr(4 Bytes)",
|
|
|
+ [CMD_LORAWAN_ED_STACK_APPSKEY_INDEX] = "lorawan appskey <hex0..15> - set/get AppSKey(16 Bytes)",
|
|
|
+ [CMD_LORAWAN_ED_STACK_NWKSENCKEY_INDEX] = "lorawan nwkskey <hex0..15> - set/get NwkSEncKey(16 Bytes)",
|
|
|
+ [CMD_LORAWAN_ED_STACK_CLASS_INDEX] = "lorawan class <0/1/2> - set/get Class Type: A,B,C",
|
|
|
+ [CMD_LORAWAN_ED_STACK_CONFIRM_INDEX] = "lorawan confirm <0/1> - set/get Data Message Type: Unconfirm,Confirm",
|
|
|
+ [CMD_LORAWAN_ED_STACK_ACTIVATION_INDEX] = "lorawan activation <0/1> - set/get Activation Type: OTAA,ABP",
|
|
|
+ [CMD_LORAWAN_ED_STACK_ADR_INDEX] = "lorawan adr <0/1> - set/get ADR: disable,enable",
|
|
|
+ [CMD_LORAWAN_ED_STACK_JOIN_INDEX] = "lorawan join <nbtrial> <interval> - join network:nbtrial-max join num",
|
|
|
+ [CMD_LORAWAN_ED_STACK_PING_INDEX] = "lorawan ping <nbtrial> <interval> - ping network:nbtrial-max ping num",
|
|
|
+ [CMD_LORAWAN_ED_STACK_TX_INDEX] = "lorawan tx <mode> <cfm> <port> <len> <data> - tx data: mode:0-stop,1-once,2~1500-cnt,>1500-period,cfm:0/1",
|
|
|
+#ifdef PKG_USING_EASYFLASH
|
|
|
+ [CMD_LORAWAN_ED_STACK_SAVE_INDEX] = "lorawan save <cfg/dev> - save config or device info",
|
|
|
+ [CMD_LORAWAN_ED_STACK_FACTORY_INDEX] = "lorawan factory - recover to factory setup",
|
|
|
+#endif
|
|
|
};
|
|
|
|
|
|
static void lorawan_shell_usage(void)
|
|
|
{
|
|
|
size_t i = 0;
|
|
|
/* parameter error */
|
|
|
- rt_kprintf("Usage:\n");
|
|
|
+ rt_kprintf("Usage:\r\n");
|
|
|
for (i = 0; i < sizeof(lorawan_help_info) / sizeof(char*); i++)
|
|
|
{
|
|
|
- rt_kprintf("%s\n", lorawan_help_info[i]);
|
|
|
+ rt_kprintf("%s\r\n", lorawan_help_info[i]);
|
|
|
}
|
|
|
- rt_kprintf("\n");
|
|
|
+ rt_kprintf("\r\n");
|
|
|
}
|
|
|
|
|
|
/* LoRaWAN End-Device shell function */
|
|
|
@@ -674,18 +680,20 @@ static int lorawan(int argc, char *argv[])
|
|
|
deveui[i] = get_hex_byte(&argv[2]);
|
|
|
}
|
|
|
|
|
|
+ rt_kprintf("DevEUI=%02X%02X%02X%02X%02X%02X%02X%02X", HEX8(deveui));
|
|
|
+
|
|
|
if( lorawan_ed_set_deveui(deveui) == RT_EOK )
|
|
|
{
|
|
|
- rt_kprintf("DevEUI=%02X%02X%02X%02X%02X%02X%02X%02X Set OK\r\n", HEX8(deveui));
|
|
|
+ rt_kprintf(" Set OK\r\n");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("DevEUI=%02X%02X%02X%02X%02X%02X%02X%02X Set Failed\r\n", HEX8(deveui));
|
|
|
+ rt_kprintf(" Set Failed\r\n");
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("DevEUI=%02X%02X%02X%02X%02X%02X%02X%02X\n\r", HEX8(lorawan_ed_get_deveui()));
|
|
|
+ rt_kprintf("DevEUI=%02X%02X%02X%02X%02X%02X%02X%02X\r\n", HEX8(lorawan_ed_get_deveui()));
|
|
|
}
|
|
|
}
|
|
|
else if (!rt_strcmp("joineui", cmd))
|
|
|
@@ -697,18 +705,21 @@ static int lorawan(int argc, char *argv[])
|
|
|
{
|
|
|
joineui[i] = get_hex_byte(&argv[2]);
|
|
|
}
|
|
|
+
|
|
|
+ rt_kprintf("JoinEUI=%02X%02X%02X%02X%02X%02X%02X%02X", HEX8(joineui));
|
|
|
+
|
|
|
if( lorawan_ed_set_joineui(joineui) == RT_EOK )
|
|
|
{
|
|
|
- rt_kprintf("JoinEUI=%02X%02X%02X%02X%02X%02X%02X%02X Set OK\r\n", HEX8(joineui));
|
|
|
+ rt_kprintf(" Set OK\r\n", HEX8(joineui));
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("JoinEUI=%02X%02X%02X%02X%02X%02X%02X%02X Set Failed\r\n", HEX8(joineui));
|
|
|
+ rt_kprintf(" Set Failed\r\n", HEX8(joineui));
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("JoinEUI=%02X%02X%02X%02X%02X%02X%02X%02X\n\r", HEX8(lorawan_ed_get_joineui()));
|
|
|
+ rt_kprintf("JoinEUI=%02X%02X%02X%02X%02X%02X%02X%02X\r\n", HEX8(lorawan_ed_get_joineui()));
|
|
|
}
|
|
|
}
|
|
|
else if (!rt_strcmp("appkey", cmd))
|
|
|
@@ -721,68 +732,81 @@ static int lorawan(int argc, char *argv[])
|
|
|
{
|
|
|
appkey[i] = get_hex_byte(&argv[2]);
|
|
|
}
|
|
|
+ rt_kprintf("AppKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X", HEX16(appkey));
|
|
|
+
|
|
|
if( lorawan_ed_set_appkey(appkey) == RT_EOK )
|
|
|
{
|
|
|
- rt_kprintf("AppKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X Set OK\r\n", HEX16(appkey));
|
|
|
+ rt_kprintf(" Set OK\r\n");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("AppKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X Set Failed\r\n", HEX16(appkey));
|
|
|
+ rt_kprintf(" Set Failed\r\n");
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("AppKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X\n\r", HEX16(lorawan_ed_get_appkey()));
|
|
|
+ rt_kprintf("AppKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X\r\n", HEX16(lorawan_ed_get_appkey()));
|
|
|
}
|
|
|
}
|
|
|
else if (!rt_strcmp("devaddr", cmd))
|
|
|
{
|
|
|
- mibReq.Type = MIB_DEV_ADDR;
|
|
|
-
|
|
|
if( argc > 2 )
|
|
|
{
|
|
|
- uint8_t devaddr[4] = { 0 };
|
|
|
+#if ( defined LORAWAN_ED_STACK_MAC_PARAMETER_ACTIVATION_TYPE_ABP ) || (defined LORAWAN_ED_STACK_USING_ACTIVATION_TYPE_ABP)
|
|
|
+ uint8_t devaddr[4] = { 0 };
|
|
|
|
|
|
for(uint8_t i = 0;i < 4; i++)
|
|
|
{
|
|
|
devaddr[i] = get_hex_byte(&argv[2]);
|
|
|
}
|
|
|
|
|
|
- mibReq.Type = MIB_DEV_ADDR;
|
|
|
- mibReq.Param.DevAddr = devaddr[0] << 24 | devaddr[1] << 16 | devaddr[2] << 8 | devaddr[3];
|
|
|
- LoRaMacMibGetRequestConfirm( &mibReq );
|
|
|
- rt_kprintf("DevAddr=%04X\n\r", mibReq.Param.DevAddr);
|
|
|
+ rt_kprintf("DevAddr=%08X", devaddr[0] << 24 | devaddr[1] << 16 | devaddr[2] << 8 | devaddr[3]);
|
|
|
+
|
|
|
+ if (lorawan_ed_set_devaddr(devaddr) == RT_EOK)
|
|
|
+ {
|
|
|
+ rt_kprintf(" Set OK\r\n");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ rt_kprintf(" Set Fail\r\n");
|
|
|
+ }
|
|
|
+#else
|
|
|
+ rt_kprintf("Error,Enable ABP function Please.\r\n");
|
|
|
+#endif
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- LoRaMacMibGetRequestConfirm( &mibReq );
|
|
|
- rt_kprintf("DevAddr=%04X\n\r", mibReq.Param.DevAddr);
|
|
|
+ uint32_t devaddr = lorawan_ed_get_devaddr();
|
|
|
+ rt_kprintf("DevAddr=%08X\r\n", devaddr);
|
|
|
}
|
|
|
}
|
|
|
else if (!rt_strcmp("appskey", cmd))
|
|
|
{
|
|
|
if (argc > 2)
|
|
|
{
|
|
|
+#if ( defined LORAWAN_ED_STACK_MAC_PARAMETER_ACTIVATION_TYPE_ABP ) || (defined LORAWAN_ED_STACK_USING_ACTIVATION_TYPE_ABP)
|
|
|
uint8_t appskey[16] = { 0 };
|
|
|
|
|
|
for (uint8_t i = 0; i < 16; i++)
|
|
|
{
|
|
|
appskey[i] = get_hex_byte(&argv[2]);
|
|
|
}
|
|
|
+ rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",HEX16(appskey));
|
|
|
if (lorawan_ed_set_appskey(appskey) == RT_EOK)
|
|
|
{
|
|
|
- rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X Set OK\r\n",
|
|
|
- HEX16(appskey));
|
|
|
+ rt_kprintf(" Set OK\r\n");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X Set Failed\r\n",
|
|
|
- HEX16(appskey));
|
|
|
+ rt_kprintf(" Set Failed\r\n");
|
|
|
}
|
|
|
+#else
|
|
|
+ rt_kprintf("Error,Enable ABP function Please.\r\n");
|
|
|
+#endif
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X\n\r",
|
|
|
+ rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X\r\n",
|
|
|
HEX16(lorawan_ed_get_appskey()));
|
|
|
}
|
|
|
}
|
|
|
@@ -790,28 +814,29 @@ static int lorawan(int argc, char *argv[])
|
|
|
{
|
|
|
if (argc > 2)
|
|
|
{
|
|
|
+#if ( defined LORAWAN_ED_STACK_MAC_PARAMETER_ACTIVATION_TYPE_ABP ) || (defined LORAWAN_ED_STACK_USING_ACTIVATION_TYPE_ABP)
|
|
|
uint8_t nwkskey[16] = { 0 };
|
|
|
|
|
|
for (uint8_t i = 0; i < 16; i++)
|
|
|
{
|
|
|
nwkskey[i] = get_hex_byte(&argv[2]);
|
|
|
}
|
|
|
+ rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",HEX16(nwkskey));
|
|
|
if (lorawan_ed_set_nwkskey(nwkskey) == RT_EOK)
|
|
|
{
|
|
|
- rt_kprintf(
|
|
|
- "AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X Set OK\r\n",
|
|
|
- HEX16(nwkskey));
|
|
|
+ rt_kprintf(" Set OK\r\n");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf(
|
|
|
- "AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X Set Failed\r\n",
|
|
|
- HEX16(nwkskey));
|
|
|
+ rt_kprintf(" Set Failed\r\n");
|
|
|
}
|
|
|
+#else
|
|
|
+ rt_kprintf("Error,Enable ABP function Please.\r\n");
|
|
|
+#endif
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X\n\r",
|
|
|
+ rt_kprintf("AppSKey=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X\r\n",
|
|
|
HEX16(lorawan_ed_get_nwkskey()));
|
|
|
}
|
|
|
}
|
|
|
@@ -837,9 +862,8 @@ static int lorawan(int argc, char *argv[])
|
|
|
else
|
|
|
{
|
|
|
LoRaMacMibGetRequestConfirm(&mibReq);
|
|
|
- rt_kprintf("Class Type: %c, %c\n\r", "ABC"[lorawan_ed_init_params.Class],
|
|
|
- "ABC"[(mibReq.Param.Class & 0x03)]);
|
|
|
}
|
|
|
+ rt_kprintf("Class Type: %c, %c\r\n", "ABC"[lorawan_ed_init_params.Class],"ABC"[(mibReq.Param.Class & 0x03)]);
|
|
|
}
|
|
|
else if (!rt_strcmp("nbtrials", cmd))
|
|
|
{
|
|
|
@@ -862,8 +886,8 @@ static int lorawan(int argc, char *argv[])
|
|
|
else
|
|
|
{
|
|
|
LoRaMacMibGetRequestConfirm( &mibReq );
|
|
|
- rt_kprintf("nbtrials: %d\n\r", mibReq.Param.ChannelsNbTrans);
|
|
|
}
|
|
|
+ rt_kprintf("nbtrials: %d\r\n", mibReq.Param.ChannelsNbTrans);
|
|
|
}
|
|
|
else if (!rt_strcmp("confirm", cmd))
|
|
|
{
|
|
|
@@ -871,10 +895,8 @@ static int lorawan(int argc, char *argv[])
|
|
|
{
|
|
|
lorawan_ed_init_params.DataMessageType = atoi(argv[2]);
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- rt_kprintf("Data Message Type: %s\n\r", lorawan_ed_init_params.DataMessageType?"Confirm":"UnConfirm");
|
|
|
- }
|
|
|
+
|
|
|
+ rt_kprintf("Data Message Type: %s\r\n", lorawan_ed_init_params.DataMessageType?"Confirm":"UnConfirm");
|
|
|
}
|
|
|
else if (!rt_strcmp("activation", cmd))
|
|
|
{
|
|
|
@@ -882,10 +904,8 @@ static int lorawan(int argc, char *argv[])
|
|
|
{
|
|
|
lorawan_ed_init_params.ActivationType = atoi(argv[2]);
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- rt_kprintf("Activation Type: %s\n\r", lorawan_ed_init_params.ActivationType?"ABP":"OTAA");
|
|
|
- }
|
|
|
+
|
|
|
+ rt_kprintf("Activation Type: %s\r\n", lorawan_ed_init_params.ActivationType?"ABP":"OTAA");
|
|
|
}
|
|
|
else if (!rt_strcmp("adr", cmd))
|
|
|
{
|
|
|
@@ -893,10 +913,8 @@ static int lorawan(int argc, char *argv[])
|
|
|
{
|
|
|
lorawan_ed_init_params.AdrEnable = atoi(argv[2]);
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- rt_kprintf("ADR: %s\n\r", lorawan_ed_init_params.AdrEnable?"Enable":"Disable");
|
|
|
- }
|
|
|
+
|
|
|
+ rt_kprintf("ADR: %s\r\n", lorawan_ed_init_params.AdrEnable?"Enable":"Disable");
|
|
|
}
|
|
|
/* JOIN */
|
|
|
else if (!rt_strcmp(cmd, "join"))
|
|
|
@@ -920,7 +938,7 @@ static int lorawan(int argc, char *argv[])
|
|
|
/* min join period */
|
|
|
if (period < 8)
|
|
|
{
|
|
|
- rt_kprintf("Join Period Error!\n");
|
|
|
+ rt_kprintf("Join Period Error!\r\n");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
@@ -939,6 +957,8 @@ static int lorawan(int argc, char *argv[])
|
|
|
app_tx_period = 0;
|
|
|
|
|
|
TimerStop(&TxTimer);
|
|
|
+
|
|
|
+ rt_kprintf("Stop Join\r\n");
|
|
|
}
|
|
|
}
|
|
|
else if (!rt_strcmp(cmd, "ping")) /* Ping test */
|
|
|
@@ -965,7 +985,7 @@ static int lorawan(int argc, char *argv[])
|
|
|
|
|
|
if ( lorawan_ed_join_status() == LORAWAN_ED_NOT_JOIN_NETWORK )
|
|
|
{
|
|
|
- rt_kprintf("==== Please Join Network first ====\n");
|
|
|
+ rt_kprintf("==== Please Join Network first ====\r\n");
|
|
|
|
|
|
return 1;
|
|
|
}
|
|
|
@@ -1050,7 +1070,7 @@ static int lorawan(int argc, char *argv[])
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- rt_kprintf("==== Please Join Network first ====\n");
|
|
|
+ rt_kprintf("==== Please Join Network first ====\r\n");
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
@@ -1079,7 +1099,7 @@ static int lorawan(int argc, char *argv[])
|
|
|
TimerStop(&TxTimer);
|
|
|
app_tx_period = 0;
|
|
|
|
|
|
- rt_kprintf("Stop Periodic Report\n");
|
|
|
+ rt_kprintf("Stop Periodic Tx\r\n");
|
|
|
}
|
|
|
}
|
|
|
#ifdef PKG_USING_EASYFLASH
|
|
|
@@ -1089,10 +1109,12 @@ static int lorawan(int argc, char *argv[])
|
|
|
if (!rt_strcmp(argv[2], "dev"))
|
|
|
{
|
|
|
lorawan_ed_save_dev_info();
|
|
|
+ rt_kprintf("save dev done\r\n");
|
|
|
}
|
|
|
- else if (!rt_strcmp(argv[2], "cfg"))
|
|
|
+ else // if (!rt_strcmp(argv[2], "cfg"))
|
|
|
{
|
|
|
lorawan_ed_save_cfg();
|
|
|
+ rt_kprintf("save cfg done\r\n");
|
|
|
}
|
|
|
}
|
|
|
else if(!rt_strcmp(cmd, "factory"))
|
|
|
@@ -1100,6 +1122,7 @@ static int lorawan(int argc, char *argv[])
|
|
|
/* clear cfg parameters */
|
|
|
lorawan_ed_init_params = lorawan_ed_init_params_default;
|
|
|
lorawan_ed_save_cfg();
|
|
|
+ rt_kprintf("save cfg done\r\n");
|
|
|
}
|
|
|
#endif /* PKG_USING_EASYFLASH */
|
|
|
else
|