Comments (1)
The quickfix above has the drawback, that it allows immediate transmission after sleep. For the case, that the avail time is intentionally more in the future, this would lead to a too-early transmit. I propose a more complete solution, which consists of two steps: 1. after sleep, add the sleep time to the timer, to keep track of the real elapsed time. This was proposed in https://www.thethingsnetwork.org/forum/t/lmic-plus-rfm95w-staying-awake-for-long-periods/7506/44
The hacky version for 8 seconds arduino-sleep:
//Give the AVR back the slept time back (simple version)
cli();
timer0_overflow_count += 8 * 64 * clockCyclesPerMicrosecond(); //give back 8 seconds of sleep
sei();
os_getTime(); /* VERY IMPORTANT after sleep to update os_time and not cause txbeg and
os_time out of sync which causes send delays with the RFM95 on and eating power */
Step 2: Make sure, that the avail-variables do not run too much into the past. Pseudocode: if avail is in the past, then avail = now. I referenced my bugfix proposal in #934.
from arduino-lmic.
Related Issues (20)
- Wrap-around of globalDutyAvail is blocking transmission in case of long transmission intervals HOT 1
- rssi
- How to make DR fixed in OTAA example HOT 11
- IN866 - LinkAdrReq failure with ChMask higher than 0x07 HOT 1
- use an explicit pinmap on lora 32 v2 HOT 1
- Reduction of the maximum current when using a smaller button cell HOT 1
- Newbie question - transmitting small packets at near real time speeds HOT 2
- Joining to helium network fails, network sends JoinAccept but sensor doesn't receive EV_JOINED event
- Enabling Class B or C for Continuous Downlink Without Uplink Pre-requisite HOT 3
- MCCI - LMIC keeps resetting
- Uplink with FPort 255 and invalid MIC! HOT 2
- no JoinAccept
- Set fixed BW for uplink messages HOT 1
- Error while trying to run the ttn-abp sketch
- error
- MAC command support for EU868
- Error radio.c:1164
- Support for MSPM0 Microcontroller
- how can i enable class B or class A ?
- downlink problem
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arduino-lmic.