pkg/opendsme: add initial support for IEEE 802.15.4 DSME time-slotted MAC#18156
pkg/opendsme: add initial support for IEEE 802.15.4 DSME time-slotted MAC#18156bors[bot] merged 6 commits intoRIOT-OS:masterfrom
Conversation
|
Great PR! As discussed offline, many nits need cosmetics, e.g., get rid of magic numbers, do the todos, remove needless checks, add asserts consistently, split out unrelated changes... Furthermore, I think that the code would be even better to understand if 1. the filenames would be more descriptive (example: opendsme.cpp currently contains netif adaptation) and 2. there was a brief overview (documentation) of the openDSME OS abstraction interfaces. Otherwise, I flashed the example application on two nrf52840dk boards and successfully managed to send some packets with CAP and CFP as described above. Nice! |
|
Our current Doxygen configuration doesn't seem to behave that nicely with C++ :/ |
1e4f7c4 to
972304c
Compare
|
I think I found the missing group |
|
finally!!! |
|
Thanks a lot. I'm particularly looking forward to trying this on energy constrained devices. bors merge |
|
Looking over the commits (as I should have done before the bors command), why is there a revert in this, moreover one that refers to a commit not in the history? bors cancel |
|
Canceled. |
|
I reverted a commit into the wrong branch. Completely unrelated. Will fix it. |
|
bors merge |
18156: pkg/opendsme: add initial support for IEEE 802.15.4 DSME time-slotted MAC r=miri64 a=jia200x 19691: drivers/bmx055: fix crazy use of FPU r=maribu a=maribu ### Contribution description As the title says... 19694: tests/drivers/epd_bw_spi_disp_dev: fix accidental use of FPU r=maribu a=maribu Co-authored-by: Jose Alamos <jose@alamos.cc> Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
|
Build failed (retrying...): |
18156: pkg/opendsme: add initial support for IEEE 802.15.4 DSME time-slotted MAC r=miri64 a=jia200x 19689: cpu/sam0_eth: disable PHY when MAC is sleeping r=dylad a=benpicco Co-authored-by: Jose Alamos <jose@alamos.cc> Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
|
Build failed (retrying...): |
|
Build failed: |
|
the build failure seems to be unrelated |
|
bors merge |
|
Build succeeded! The publicly hosted instance of bors-ng is deprecated and will go away soon. If you want to self-host your own instance, instructions are here. If you want to switch to GitHub's built-in merge queue, visit their help page. |
|
Thank you everyone for reviewing! |
Contribution description
This PR adds support for openDSME.
DSME is a time-slotted MAC layer (similar to TSCH), which supports deterministic communication.
It offers some promising features such as:
Similar to TSCH, such a MAC improves PRR drastically (with the cost of some latency) and enables low-power operation.
This work is still WIP, although the basic support is already running. This PR includes:
Some commits (labeled as "REMOVE_ME") will be handled in separate PRsTested with
nrf52840. The cc2538 needs a small change to remove the beacon filter.Testing procedure
examples/opendsme.gtsoption to enable GTS transmission (slotted). By default, the option is unset.Example session
PAN coordinator
Child:
Issues/PRs references
#15313
Depends on
#18283, #18284