Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

08-interop: add test for WiFi <-> DHCPv6 router #185

Merged
merged 1 commit into from
Aug 5, 2020

Conversation

benpicco
Copy link
Contributor

@benpicco benpicco commented Aug 2, 2020

Add a specification for testing the WiFi uplink with an esp*.
This also allows us to test routing to the wider internet (via border router) and DNS operation.

Requirement is a IPv6 uplink and a router that allows enabling prefix delegation (IA_PD) via DHCPv6.

Fixes #150

@miri64
Copy link
Member

miri64 commented Aug 2, 2020

IMHO this would fit better in with 08-interop.

12-wifi/12-wifi.md Outdated Show resolved Hide resolved
@miri64
Copy link
Member

miri64 commented Aug 2, 2020

Also addresses #150 in part.

@gschorcht
Copy link

This covers only esp_wifi. With driver atwinc15x0 also arduino-mkr1000 and feather-m0 have a WiFi interface as netdev default.

@miri64
Copy link
Member

miri64 commented Aug 3, 2020

As I have the feeling this discussion point got lost:

IMHO this would fit better in with 08-interop.

I really don't see why we need a whole new spec just for WiFi. In the end this is about interoperability with other OSs (namely FritzBox OS/OpenWRT when one follows your instructions) and the tools of other OSs

@miri64
Copy link
Member

miri64 commented Aug 3, 2020

This covers only esp_wifi. With driver atwinc15x0 also arduino-mkr1000 and feather-m0 have a WiFi interface as netdev default.

Remember that those also need to be available to the release testers! (+ AFAIK the feather-m0 is not shipped with a WiFi module per default)

@benpicco
Copy link
Contributor Author

benpicco commented Aug 3, 2020

Ok, I can move it there.
The advantage of using an esp for this test is that we can test border router functionality without any additional hardware.

@gschorcht
Copy link

gschorcht commented Aug 3, 2020

AFAIK the feather-m0 is not shipped with a WiFi module per default

There is the Feather M0 board with and without WiFi. To avoid that separate board definitions are necessary only because of this difference, the respective board is simply defined using the pseudomodule feather-m0-wifi. In case the pseudomodule feather-m0-wifi is used, atwinc15x0 is the default netdev.

@miri64
Copy link
Member

miri64 commented Aug 3, 2020

There is the Feather M0 board with and without WiFi. To avoid that separate board definitions are necessary only because of this difference, the respective board is simply defined using the pseudomodule feather-m0-wifi. In case the pseudomodule feather-m0-wifi is used, atwinc15x0 is the default netdev.

Off-topic: we should really find a concise way to unify such board variants. Even for the slwstk6000b variants there are now separate directories.

@gschorcht
Copy link

There is the Feather M0 board with and without WiFi. To avoid that separate board definitions are necessary only because of this difference, the respective board is simply defined using the pseudomodule feather-m0-wifi. In case the pseudomodule feather-m0-wifi is used, atwinc15x0 is the default netdev.

Off-topic: we should really find a concise way to unify such board variants. Even for the slwstk6000b variants there are now separate directories.

OK, we have the same for esp32_ttgo_t_beam. There are different versions v1.0, v1.1 and v1.2 of the same board but with different hardware and GPIO configurations. The different versions are also defined as pseudomodules. Otherwise the number of board definitions would explode.

@miri64
Copy link
Member

miri64 commented Aug 3, 2020

OK, we have the same for esp32_ttgo_t_beam. There are different versions v1.0, v1.1 and v1.2 of the same board but with different hardware and GPIO configurations. The different versions are also defined as pseudomodules. Otherwise the number of board definitions would explode.

But defining them as pseudo-modules it (1) breaks the board abstraction and (2) leaves them untested by our CI systems which relies on the boards being listed somewhere.

@benpicco
Copy link
Contributor Author

benpicco commented Aug 3, 2020

I did something different for openlabs-kw41z-mini-256kib and stm32f429i-disco: Include the base board and just change a variable / add a module.

@gschorcht
Copy link

But defining them as pseudo-modules it ... leaves them untested by our CI systems which relies on the boards being listed somewhere.

That's clear.

@miri64
Copy link
Member

miri64 commented Aug 3, 2020

Let's move to a dedicated issue for that RIOT-OS/RIOT#14681

@fjmolinas
Copy link
Contributor

Would it be possible to add a automatic release test for this based on @miri64 framework?

@miri64
Copy link
Member

miri64 commented Aug 4, 2020

Would it be possible to add a automatic release test for this based on @miri64 framework?

As there is

  1. An interaction required with an external router / DHCPv6 server
  2. No template for @benpicco to work of of (there are currently no border router tests automated)

I'd say: not yet :-).

@miri64
Copy link
Member

miri64 commented Aug 5, 2020

ping @benpicco? Needs rebase after #116, I'm afraid.

@benpicco
Copy link
Contributor Author

benpicco commented Aug 5, 2020

Rebased.

08-interop/README.md Outdated Show resolved Hide resolved
08-interop/README.md Outdated Show resolved Hide resolved
08-interop/README.md Outdated Show resolved Hide resolved
08-interop/README.md Outdated Show resolved Hide resolved
08-interop/README.md Outdated Show resolved Hide resolved
@miri64 miri64 changed the title 12-wifi: add release specs for WiFi 08-interop: add test for WiFi <-> DHCPv6 router Aug 5, 2020
Copy link
Member

@miri64 miri64 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lastly some spelling nits.

08-interop/README.md Show resolved Hide resolved
08-interop/README.md Show resolved Hide resolved
08-interop/README.md Show resolved Hide resolved
08-interop/README.md Show resolved Hide resolved
08-interop/README.md Show resolved Hide resolved
08-interop/README.md Show resolved Hide resolved
08-interop/README.md Show resolved Hide resolved
08-interop/README.md Show resolved Hide resolved
Copy link
Member

@miri64 miri64 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK. Please squash. Other boards with WiFi support and automated tests can always added be later.

08-interop/README.md Outdated Show resolved Hide resolved
@miri64 miri64 merged commit 07a6f18 into RIOT-OS:master Aug 5, 2020
@miri64
Copy link
Member

miri64 commented Aug 5, 2020

Wait... does this actually work? Should this have been marked as experimental?

@benpicco benpicco deleted the 12-wifi branch August 5, 2020 22:40
@benpicco
Copy link
Contributor Author

benpicco commented Aug 5, 2020

It works for me™.
Some independent testing sure wouldn't hurt though.
I've found that exposing RIOT to the real IPv6 (Inter)net can uncover corner cases that have been overlooked before.

@miri64
Copy link
Member

miri64 commented Aug 5, 2020

Then I guess you have to shepherd these tasks for at least a few upcoming releases ^^"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

RFC: Task 8: Add DHCPv6 client tests
4 participants