Skip to content

Commit d058ab2

Browse files
committed
read APP & MAC address as IPAddress
1 parent 29de7be commit d058ab2

File tree

1 file changed

+19
-12
lines changed

1 file changed

+19
-12
lines changed

src/MKRWAN.h

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -262,11 +262,8 @@ struct fw_version_LoRa_s {
262262
String mac_version;
263263
};
264264

265-
class LoRaVersion : public IPAddress
266-
{
267-
public:
268-
fw_version_LoRa_s fw_version_LoRa;
269-
};
265+
IPAddress app_addr;
266+
IPAddress mac_addr;
270267

271268
class LoRaModem : public Stream
272269
{
@@ -499,20 +496,30 @@ class LoRaModem : public Stream
499496
return false;
500497
}
501498

502-
String version() {
499+
IPAddress version() {
503500

504501
// TODO: split firmware version in actual versions
505-
LoRaVersion version_fw;
502+
String app_version_str;
503+
String mac_version_str;
504+
String app_num_str;
505+
String mac_num_str;
506506

507507
sendAT(GF("+VER=?"));
508508
if (waitResponse(fw_version) == 1) {
509-
version_fw.fw_version_LoRa.app_version=fw_version.substring(0,fw_version.indexOf('\r'));
510-
version_fw.fw_version_LoRa.mac_version=fw_version.substring(fw_version.indexOf('\n')+1, fw_version.lastIndexOf('\r', fw_version.indexOf("OK")));
511-
512-
fw_version=fw_version.substring(0,fw_version.lastIndexOf('\r', fw_version.indexOf("OK")));
509+
app_version_str=fw_version.substring(0,fw_version.indexOf('\r'));
510+
mac_version_str=fw_version.substring(fw_version.indexOf('\n')+1, fw_version.lastIndexOf('\r', fw_version.indexOf("OK")));
511+
}
512+
app_num_str=app_version_str.substring(app_version_str.indexOf('=')+2, app_version_str.lastIndexOf('\r'));
513+
mac_num_str=mac_version_str.substring(mac_version_str.indexOf('=')+2, mac_version_str.lastIndexOf('\r'));
514+
515+
if (app_addr.fromString(app_num_str)){
516+
DBG("App num: ", app_addr);
517+
}
518+
if (mac_addr.fromString(mac_num_str)){
519+
DBG("Mac num: ", mac_addr);
513520
}
514521

515-
return fw_version;
522+
return app_addr;
516523
}
517524

518525
String deviceEUI() {

0 commit comments

Comments
 (0)