Is there a way to RESET the RAK7205 tracker through downlink by sending a payload?
Short answer is no, unless itās hidden somewhere in the documentation I havenāt seen.
What do you mean by reset? What should the tracker do when you āreset itā? Why do you need it to be reset?
I concur, seeing how I probably wrote the documentation, at least partially
But you are making a good point, reset in what way:
Reboot the board and initiate network join procedure again (power cycle)
Wipe settings with another set of keys, perhaps?
Etc.
Regards
Vladislav
I meant rebooting the tracker node. It would be useful if we have a command to āresetā the node instead of pressing the RESET button on the PCB.
Dragino LDS01 has that feature.
Hiļ¼
Pradeekaļ¼
I am sorry to tell you that RAK7205 cannot receive the issuing instructions for now, perhaps this is a good suggestion and will be used in the next version of the requirement.
If you are interested, you can also modify the calling RUI code to implement this feature!
Regards
Thanks for the clarification. Which product model I should use in the RUI compiler? RAK811?
Yes,you need choose RAK811.
Please start implementing it and I will keep discussing it with you.
Positive choice RAK5205ļ¼
I need some time to understand the codebase. I havenāt done āheavyā programming since 2015 But I want to give it a try.
I think this is the place we should modifyā¦
Yes, this is it. I look forward to your success.
After selecting the reset instruction, you can call the Reset interface to start it.
Why? What is it doing that needs a reset?
Not only for RESET. It is also useful to change the transmission time interval.
This function doesnāt get executed when data received. It should output something on the āRAK SERIAL PORT TOOLā for downlink packets.
void LoRaReceive_callback(RUI_RECEIVE_T* Receive_datapackage)
{
char hex_str[3] = {0};
RUI_LOG_PRINTF(āat+recv=%d,%d,%d,%dā, Receive_datapackage->Port, Receive_datapackage->Rssi, Receive_datapackage->Snr, Receive_datapackage->BufferSize);
if ((Receive_datapackage->Buffer != NULL) && Receive_datapackage->BufferSize) {
RUI_LOG_PRINTF(":");
for (int i = 0; i < Receive_datapackage->BufferSize; i++) {
sprintf(hex_str, "%02x", Receive_datapackage->Buffer[i]);
RUI_LOG_PRINTF("%s", hex_str);
}
}
RUI_LOG_PRINTF("\r\n");
}
But donāt you see any packets when you send them down, does it make a difference?
I sent a packet through downlink.
It appeared in the TTN as:
RAK serial port tool - no data
Iām using ABP. Here is the status.
at+get_config=lora:status
Wake up
at+get_config=lora:status
OK.
==============LoRaWAN Status List================
Work Mode: LoRaWAN
Region: EU433
Send_interval: 600s
Auto send status: true.
Send_interval work at sleep
Join_mode: ABP
DevAddr: 26011955
AppsKey: 0A2B85A5E3DA535BE7145C8424A2570C
NwksKey: 711B4BF686DA6771A2E6F547FB264376
Class: A
Joined Network:true
IsConfirm: false
AdrEnable: true
EnableRepeaterSupport: false
RX2_CHANNEL_FREQUENCY: 434665000, RX2_CHANNEL_DR:0
RX_WINDOW_DURATION: 3000ms
RECEIVE_DELAY_1: 1000ms
RECEIVE_DELAY_2: 2000ms
JOIN_ACCEPT_DELAY_1: 5000ms
JOIN_ACCEPT_DELAY_2: 6000ms
Current Datarate: 5
Primeval Datarate: 5
ChannelsTxPower: 0
UpLinkCounter: 10
DownLinkCounter: 0
===================List End======================
You can see the DownLinkCounter is 0.
You can try to change to classC, and then send the uplink, and then send the data, if itās classA, you have to send the data for every uplink.