RIOT-OS / Release-Specs

Specification for RIOT releases and corresponding test configurations
4 stars 21 forks source link

Release 2018.01 - RC2 #58

Closed smlng closed 6 years ago

smlng commented 6 years ago

This issue lists the status of all tests for the Release Candidate 2 of the 2018.01 release.

Specs tested:

PeterKietzmann commented 6 years ago

@miri64 thanks four your detailed explanation in #55. I guess you know I was not asking for a tutorial about how to compile or start a tap interface? However, Task 5#1 demands ping "between two native nodes with global unicast addresses". With your description a ping with local unicast source address is done.

miri64 commented 6 years ago

I guess you know I was not asking for a tutorial about how to compile or start a tap interface?

Yes, just wanted to make sure that it is clear that this is done as usual ;-)

miri64 commented 6 years ago

With your description a ping with local unicast source address is done.

For Task 5.1 and Task 5.3 the scope of the source address is not specified. This is why in the past I always did it that way (because this case should also be tested and work because it is single hop).

miri64 commented 6 years ago

But maybe, if we interpret the task description differently the description needs a more specific update ;-)

PeterKietzmann commented 6 years ago

description needs a more specific update ;-)

Yes. That's what I wanted to come on to.

For Task 5.1 and Task 5.3 the scope of the source address is not specified. This is why in the past I always did it that way (because this case should also be tested and work because it is single hop).

I don't know what (exactly) was intended to test here (that's why I asked you). But how about we either change task 1 or 3 (which are similar) or create a fourth task to cover both situations?

miri64 commented 6 years ago

Tasks 56.1-4 are succeeding, however I get duplicate packets in 5.2 and 5.4 6.2 and 6.4. Maybe this is related to https://github.com/RIOT-OS/RIOT/issues/8457 somehow... I investigate.

PeterKietzmann commented 6 years ago

I am a bit confused.

miri64 commented 6 years ago

Corrected the task number, so most of your confusion should now be lifted ;-).

If you used gnrc_networking, this is not based on sock right? So maybe not related to above linked issue/PR?

Well the issue is about #8457 UDP so the duplication might lead to a problem there.

miri64 commented 6 years ago

I don't know what (exactly) was intended to test here (that's why I asked you). But how about we either change task 1 or 3 (which are similar) or create a fourth task to cover both situations?

I don't think Task 1 and 3 are similar enough to throw them in one bowl, so yes a fourth task would be better suited.

PeterKietzmann commented 6 years ago

So how about adding it in #56?

miri64 commented 6 years ago

So how about adding it in #56?

I'd rather put it in a separate PR, since they don't seem related.

PeterKietzmann commented 6 years ago

@miri64 #56 has been merged. Now we should still enhance the sub tasks in 05. I read again through the description which explains "request/reply exchange between two native nodes with global unicast addresses". For me it still reads as if both should have global addresses. To repeat: I would either

PeterKietzmann commented 6 years ago

I created #60 to extend Task 05. As soon as this is merged, I will adapt the above checklist and confirm successful tests.

kYc0o commented 6 years ago

04-Task07 succeeds with https://github.com/RIOT-OS/RIOT/pull/8490

kYc0o commented 6 years ago

Task 8 succeeds with:

2018-01-30 21:59:04,009 - INFO # --- fe80::213:a200:40a9:f8d4 ping statistics ---
2018-01-30 21:59:04,016 - INFO # 1000 packets transmitted, 993 received, 1% packet loss, time 438.06293747 s
2018-01-30 21:59:04,020 - INFO # rtt min/avg/max = 324.230/323.503/357.071 ms

And task 7:

2018-01-30 21:26:32,030 - INFO # --- ff02::1 ping statistics ---
2018-01-30 21:26:32,037 - INFO # 1000 packets transmitted, 989 received, 2% packet loss, time 285.06691437 s
2018-01-30 21:26:32,041 - INFO # rtt min/avg/max = 166.379/166.092/233.729 ms
PeterKietzmann commented 6 years ago

BTW: All tests in 05-Single Hop Route succeed.

kYc0o commented 6 years ago

08-Task 3 succeed:

2018-01-30 23:00:59,965 - INFO #  ping6 fe80::212:4b00:422:9dbd
2018-01-30 23:00:59,978 - INFO # 12 bytes from fe80::212:4b00:422:9dbd: id=84 seq=1 hop limit=64 time = 8.289 ms
2018-01-30 23:01:00,992 - INFO # 12 bytes from fe80::212:4b00:422:9dbd: id=84 seq=2 hop limit=64 time = 7.009 ms
2018-01-30 23:01:02,006 - INFO # 12 bytes from fe80::212:4b00:422:9dbd: id=84 seq=3 hop limit=64 time = 7.643 ms
2018-01-30 23:01:02,011 - INFO # --- fe80::212:4b00:422:9dbd ping statistics ---
2018-01-30 23:01:02,017 - INFO # 3 packets transmitted, 3 received, 0% packet loss, time 2.0644888

On Contiki side:

Contiki-3.x-3341-g80dbe5c17
TI SmartRF06 + cc2538EM
CC2538: ID: 0xb965, rev.: PG2.0, Flash: 512 KiB, SRAM: 32 KiB, AES/SHA: 1, ECC/RSA: 1
System clock: 16000000 Hz
I/O clock: 16000000 Hz
Reset cause: External reset
 Net: sicslowpan
 MAC: CSMA
 RDC: nullrdc
Rime configured with address 00:12:4b:00:04:22:9d:bd
Starting UDP echo server
Listen port: 3000, TTL=64
Server IPv6 addresses: fe80::212:4b00:422:9dbd
smlng commented 6 years ago

@kYc0o thanks for tackling contiki 👍 😉

kYc0o commented 6 years ago

It was done yesterday but I just realised I didn't push the button 😅

PeterKietzmann commented 6 years ago

@kYc0o can you provide a short description how you tested against contiki? In detail I just want to know which hardware, which application, which branch/commit you used and if there are special commands or settings need to be applied.

PeterKietzmann commented 6 years ago

PS: If you just put some keywords here I'm fine.

kYc0o commented 6 years ago

Yes sure.

I used the cc2538dk on contiki side, and samr21-xpro on RIOT side (though the task requires a iotlab-m3, but I had a lot of problems yesterday with my hardware).

The example I tested is located at examples/cc2538dk/udp-ipv6-echo-server, on the current master branch of upstream contiki repo.

The "special" things to be applied are:

  1. Disable RIME, set project-conf.h configuration file, configure channel and PAN ID:
diff --git a/examples/cc2538dk/udp-ipv6-echo-server/Makefile b/examples/cc2538dk/udp-ipv6-echo-server/Makefile
index 5bbbdd676..92ec1c5fc 100644
--- a/examples/cc2538dk/udp-ipv6-echo-server/Makefile
+++ b/examples/cc2538dk/udp-ipv6-echo-server/Makefile
@@ -1,8 +1,12 @@
+DEFINES+=PROJECT_CONF_H=\"project-conf.h\"
 CONTIKI_PROJECT = udp-echo-server

 all: $(CONTIKI_PROJECT)

 CONTIKI = ../../..
+CONTIKI_WITH_RIME = 0
 CONTIKI_WITH_IPV6 = 1
 CFLAGS += -DUIP_CONF_ND6_SEND_NS=1
+CFLAGS += -DRF_CHANNEL=26
+CFLAGS += -DIEEE802154_CONF_PANID=0x23
 include $(CONTIKI)/Makefile.include
  1. Add project-conf.h file to disable ContikiMAC, replaced by nullrdc_driver (no RDC):
/*
 * Copyright (c) 2012, Texas Instruments Incorporated - http://www.ti.com/
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * 3. Neither the name of the copyright holder nor the names of its
 *    contributors may be used to endorse or promote products derived
 *    from this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
 * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 * OF THE POSSIBILITY OF SUCH DAMAGE.
 */
/**
 * \addtogroup cc2538-examples
 * @{
 *
 * \file
 * Project specific configuration defines for the basic cc2538dk examples
 */
#ifndef PROJECT_CONF_H_
#define PROJECT_CONF_H_

#define NETSTACK_CONF_RDC     nullrdc_driver

#endif /* PROJECT_CONF_H_ */

/** @} */

And that's all.

BTW, UDP packets can also be sent and echoes are received.

miri64 commented 6 years ago

BTW, UDP packets can also be sent and echoes are received.

Isn't task 8.3 about exchanging ICMPv6 packets? Oo

kYc0o commented 6 years ago

Isn't task 8.3 about exchanging ICMPv6 packets? Oo

Yes it is, and that's what was done. I just wanted to point out that UDP exchanges with contiki based nodes is also possible.

miri64 commented 6 years ago

Ah okay, then I misunderstood your last sentence :-).