samisabik
(Samisabik)
June 16, 2019, 1:11pm
8
Thank you for your answer;
I am indeed re-considering the power gating option. Initially I was using ABP, therefore the issue never surfaced with the JOIN. But yes, I think using the TPL5010 on a hardware interrupt to wake up the MCU seems the best case scenario.
samisabik
(Samisabik)
June 16, 2019, 1:12pm
9
What method would you recommend for deepsleep?
External interrupt from RTC or nano timer
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF); looped as many time as it’s need to reach 2h.
There are some notes on power down versus deep sleep in the section entitled;
“Reducing Tracker node sleep current - a wasteful race to the bottom ?”
In this report;
Its about GPSs and trackers, but the principles are the same.
1 Like
Amedee
(Amedee)
June 16, 2019, 1:35pm
11
I do external interrupt from TPL 5110.
I use Mini-Lora nodes as described in:
Hi Guys,
I’d like to introduce my new demo node, no wire, just battery powered, Arduino Mini 3.3V 8Mhz. I created a demo for a customer with a fully Temperature Humidity sensor (I2C SI7021) with Battery Level Monitor, and here it is.
[image]
[image]
I know it’s not the smallest node, but what the deal with small nodes if the battery size is twice the node size?
So I decided to test some with battery and my old ULPNode Power Efficient Library (not released yet but soon) but trust me this lib…
This Arduino stack allows you to save the session keys (and network id, upload counter):
I’m basing a node on this library for use with an ESP32 TTGO LoRa board where the session keys and some counters are stored in (simulated) EEPROM here. In the EV_JOINED callback, I’m saving them:
break;
case EV_BEACON_TRACKED:
Serial.println(F("EV_BEACON_TRACKED"));
break;
case EV_JOINING:
Serial.println(F("EV_JOINING"));
setLoraStatus("OTAA JOIN...");
break;
case EV_JOINED:
Serial.println(F("EV_JOINED"));
LMIC_getSessionKeys(&otaa_data.netid, &otaa_data.devaddr, otaa_data.nwkKey,
otaa_data.artKey);
otaa_data.magic = OTAA_MAGIC;
EEPROM.put(0, otaa_data);
EEPROM.commit();
print_keys();
setLoraStatus("JOIN OK!");
break;
case EV_JOIN_FAILED:
Upon startup, I check my EEPROM structure for a previously saved session, and restore it using either LMIC_SetSession(…), or do a JOIN using LMIC_StartJoining():
snprintf(screen.loraDevEui, sizeof(screen.loraDevEui),
"%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X", deveui[7], deveui[6], deveui[5], deveui[4],
deveui[3], deveui[2], deveui[1], deveui[0]);
// LMIC init
os_init();
LMIC_reset();
LMIC_setClockError(MAX_CLOCK_ERROR * 1 / 100);
EEPROM.begin(512);
EEPROM.get(0, otaa_data);
if (otaa_data.magic == OTAA_MAGIC) {
setLoraStatus("Resume OTAA");
LMIC_setSession(otaa_data.netid, otaa_data.devaddr, otaa_data.nwkKey, otaa_data.artKey);
print_keys();
} else {
LMIC_startJoining();
}
char version[32];
if (sds_version(version, sizeof(version))) {
Serial.print("SDS version and date: ");
5 Likes
How to get dev_EUI from RFM95 with arduino nano? I have problems
Thanks in advance.
@am1lcarcaceres just let TTN generate you a unique one when you register a device
kersing
(Jac Kersing)
July 5, 2019, 4:33pm
15
The RFM95 does not have an EUI so you will not be able to get it.
Use a TTN generated one like @Paul_Stewart suggests.
Which library are you using to drive the RFM95?
I’m just entering the world of LoRa, thanks for solving the doubt
I am using the LMIC library, thank you for solving my doubts
patknott
(Patknott)
July 11, 2019, 10:40pm
18
Hi im also using a ATMEGA328p with an RFM in deepsleep mode.
But my uC wakes only 3 oder 4 times up after that it newer sends data again.
Somebody has a clue?
BoRRoZ
July 11, 2019, 11:17pm
19
that’s not enough information
patknott
(Patknott)
July 12, 2019, 6:22am
20
I’m using IOT-MCU V1, soldered DIO1 D5 together and my sketch is from https://www.thethingsnetwork.org/forum/t/arduino-sketch-generator/6542
Using the MCCI Library.
It works only one time, (see the data in the console) then die Atmega sleeps and never wakes up again.
The forum will need to know the actual code you are using, its much easier for us than using the external code generator which may well not provide the same code you are using.
And an actual link to the actual hardware you are using, its not fully clear exactly which hardware ‘IOT-MCU V1’ actually is.
2 Likes
gerardvtk
(Gerardvtk)
July 20, 2019, 4:14pm
22
Is the IOTMCU V1 not the Lora Radio node V1.0? I see both names on the PCB.
BoRRoZ
July 20, 2019, 4:36pm
23
he didn’t answer before … So it’s a waste of time/energy , we are not paranormal here imho
When quoting parts or boards, it helps to provide a link or picture so we can be sure exactly what board you are using.
1 Like
gerardvtk
(Gerardvtk)
July 20, 2019, 7:21pm
25
I am not sure this will work, I will give it a try:
gerardvtk
(Gerardvtk)
July 20, 2019, 7:30pm
26
but mine is 886 MHz and since today good working with Cayenne:
BoRRoZ
July 20, 2019, 8:11pm
27
less then 5 uA in deepsleep…
[17%20AM]
@Charles , CH2I , has decided that he will open source his ULP node library and that is very good news for all of us ultra low power users !!
[IMG_6084]
Because his library is only used for his customers until now and closed source , its not completely ready to present to the general public.
’ And at least, but not least, since I’m not going to works on more (just maintenance) I will open source ULPNode library and some demo sketch, including this one.
The library is very powerfu…