riot-os / applications Goto Github PK
View Code? Open in Web Editor NEWSome useful RIOT applications
License: GNU Lesser General Public License v2.1
Some useful RIOT applications
License: GNU Lesser General Public License v2.1
The RIOT
submodule currently points to the almost 2 year old 2020.07 release. One of the future releases should fix this (and maybe also fix the CI / automation into the release manager script in the process).
According to @haukepetersen microcoap has issues.
Sometimes when receiving many frames in a short period of time, the UART speed is too low to be able to capture every frame. The current format of the sniffer output is very verbose and the data is hex encoded in ascii, so every sniffed byte will use three bytes on the UART.
Changing the format of the UART output into something like SLIP encapsulated 802.15.4 frames would significantly reduce the risk of lost frames.
This is an example output from the current version of the sniffer, the frame contains a 6lowpan compressed ICMPv6 echo request packet with the destination address ff02::1
rftest-rx --- len 0000001F lqi 79 rx_time 00000000025A4D96
41 D8 D0 23 00 FF FF 4E 6E B7 36 29 53 14 23 7A 3B 3A 01 80 00 C1 F4 00 53 00 03 53 53 53 53
The LQI and RX timestamp could be appended/prepended to the frame data to preserve the same functionality.
This change would possibly affect the shell functionality in the sniffer, the terminal program on the PC side might not handle raw binary data well, so the sniffer would need to be used together with the sniffer script to handle demuxing the binary frames from the shell text.
The instructions on how to set up the sniffer are outdated.
I didn't look into details yet but the way how parameters need to be provided is clearly different.
While trying to move away from our old econotag-based sniffer setup, I noticed that RIOTs sniffer seemed to drop some packets. I generated traffic on a RaspberryPi with Openlabs-Module using the following command:
# ping -s 100 -c1 ff02::1%lowpan0
This requires 6lowpan to use fragmentation, resulting in two succesive IEEE 802.15.4 frames being transmitted.
While the econotag correctly receives both, the sniffer app on a pba-d-01-kw2x only receives the first frame. I guess this is some kind of race condition. How would I go about debugging this?
E.g.
$ BOARD=samr21-xpro make flash
2015-03-27 20:39:53,328 - INFO # > nc ff02::1 1234 test
2015-03-27 20:39:53,329 - INFO #
2015-03-27 20:39:53,333 - INFO # Trying to send 5 bytes to ff02::1:1234
[board never comes back]
Stepping through the code has led my to thread_yield_higher
, where the board appears to stop responding, but I'm not sure whether this is due to my non-existant gdb skills or if its related to the actual problem :D
PS: This does not seem to be related to UDP on the SAM R21 in general, since sending UDP packets with pretty much the same code works when taken out of the sixlowapp example. Also, the UDP server seems to work, as UDP packets sent from another app (i.e. not sixlowapp) can be received by the sixlowapp UDP server.
Currently the travis configuration is broken. flake8
does not seem to work with the Python version they install.
hi all,
when i running make for microcoap application getting the following error.if anybody knows share it will be useful for me.. thanks in advance......
------for native board-------
giri@giri:~/RIOT/examples/microcoap_server$ make all
Building application "microcoap_server" for "native" with MCU "native".
"make" -C /home/giri/RIOT/pkg/microcoap
"make" -C /home/giri/RIOT/pkg/microcoap/microcoap
main-posix.c: In function ‘main’:
main-posix.c:12:14: error: unused parameter ‘argc’ [-Werror=unused-parameter]
int main(int argc, char **argv)
^
main-posix.c:12:27: error: unused parameter ‘argv’ [-Werror=unused-parameter]
int main(int argc, char **argv)
^
cc1: all warnings being treated as errors
make[2]: *** [main-posix.o] Error 1
make[1]: *** [all] Error 2
make: *** [/home/giri/RIOT/examples/microcoap_server/bin/native/microcoap.a] Error 2
-------for samr21 board------
giri@giri:~/RIOT/examples/microcoap_server$ make BOARD=samr21-xpro
"make" -C /home/giri/RIOT/pkg/microcoap
"make" -C /home/giri/RIOT/pkg/microcoap/microcoap
main-posix.c:1:24: fatal error: sys/socket.h: No such file or directory
#include <sys/socket.h>
^
compilation terminated.
make[2]: *** [main-posix.o] Error 1
make[1]: *** [all] Error 2
make: *** [/home/giri/RIOT/examples/microcoap_server/bin/samr21-xpro/microcoap.a] Error 2
currently, the openwsn application does not build, as the openwsn package is outdated?!
hi all,
can anyone teach me how to start microcoap-server example.....
if i am running on native as per read me file i'm getting the following result..i dont know after what to do? i also installed copper plugin and radvd,when i'm trying to ping in firefox it showing network unreachable..
LOG:
giri@giri:~/RIOT/examples/microcoap_server$ make term
/home/giri/RIOT/examples/microcoap_server/bin/native/microcoap_server.elf tap0
RIOT native interrupts/signals initialized.
LED_GREEN_OFF
LED_RED_ON
RIOT native board initialized.
RIOT native hardware initialization complete.
main(): This is RIOT! (Version: UNKNOWN (builddir: /home/giri/RIOT))
RIOT microcoap example application
Configured network interfaces:
Iface 5 HWaddr: 76:50:44:76:11:44
MTU:1280 HL:64 RTR RTR_ADV
Source address length: 6
Link type: wired
inet6 addr: ff02::1/128 scope: local [multicast]
inet6 addr: fe80::7450:44ff:fe76:1144/64 scope: local
inet6 addr: ff02::1:ff76:1144/128 scope: local [multicast]
inet6 addr: ff02::2/128 scope: local [multicast]
inet6 addr: fc00::7450:44ff:fe76:1144/64 scope: global
Waiting for incoming UDP packet...
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.