Comments (5)
How can I reproduce this?
Your theory might be correct indeed, but I need to look into it. I merged the PR already since it needed to be done anyway.
from sub-iot-stack.
here is my test method:
two B-L072Z-LRWAN1 boards, one is gateway
, the other is sensor_pull
. use the default master code.
gateway
keep sending a unicast read request to sensor_pull
node every 10 second. below is my python code change from gateway.py :
# ... some other code
def query_node(self):
unicast_uid = "0x46323039002C0030"
addressee_id = int(unicast_uid, 16)
print(addressee_id)
configuration = Configuration(qos=QoS(resp_mod=ResponseMode.RESP_MODE_ANY),
addressee=Addressee(access_class=0x11, id_type=IdType.UID, id=addressee_id))
alp_command = Command.create_with_read_file_action(
file_id = 0x40,
length = 2,
interface_type = InterfaceType.D7ASP,
interface_configuration = configuration)
print(alp_command)
self.modem.execute_command_async(alp_command)
def run(self):
self.log.info('Started')
keep_running = True
while keep_running:
self.query_node()
time.sleep(10)
if __name__ == '__main__':
Gateway().run()
then sensor_pull
receive the request and send reponse back to gateway
.
after a while (10 minutes or less an hour), i got the assertion fail log from the sensor_pull
's JLinkRTTClient terminal.
from sub-iot-stack.
How can I reproduce this?
Your theory might be correct indeed, but I need to look into it. I merged the PR already since it needed to be done anyway.
There is one place i have found could cause atomic nested problem:
configure_next_event()
was called in a atomic context- in
configure_next_event()
, calledsched_post_task_prio()
which calledstart_atomic()
andend_atomic()
in it. - after exit from
sched_post_task_prio()
, the irq is enabled, but still run inconfigure_next_event()
function.
After this pull request the problem will be solved.
from sub-iot-stack.
I revert the irq nesting counter commit in the PR on master, this seems to be causing problems with UART RX interrupt. Until the cause of this is found it's better to revert so gateway works again. TBC
from sub-iot-stack.
There have been major changes concerning the timer, we assume that this is not a problem anymore. If this is incorrect, don't hesitate to open the issue again.
from sub-iot-stack.
Related Issues (20)
- noise_logger.c compile fails - userbutton.h not found HOT 2
- sniffer.c compile fails - alp_cmd_handler.h not found HOT 1
- I2C on B_L072Z_LRWAN1 platform HOT 2
- Sensor Action example: assertion "is_fs_init_completed" failed HOT 1
- Sensor Action example: incorrect value in RTT logs HOT 4
- STM32 hw_get_unique_id() bug HOT 4
- Gateway software ? HOT 1
- RTT Logging does not work well with Sleep
- Performance results available? HOT 1
- Bug scheduling messages in the unsollicited response callback HOT 8
- Board resets when sending message using default access class at index 1 set to normal rate. HOT 6
- Scheduler hangs when scheduling a task through interrupt service routine HOT 1
- Unkown hardfault when running C++ on B-L072Z-LRWAN1 HOT 2
- Enforce .clang-format
- Assertion fail in timer_fired() HOT 5
- Some compiler flags that cause errors now that might be worth it to be fixed HOT 2
- ALP_ITF_ID_D7ASP interface config format doesn't seem to match spec (same with pyd7a impl) HOT 2
- alp_received_unsolicited_data_cb does not get called anymore HOT 5
- ALP layer: unsolicited commands are sent back in the response HOT 1
- Compilation Error while running make HOT 4
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 sub-iot-stack.