Skip to content

doc/guides: migrate rpl networking guide from wiki#22460

Open
elenaf9 wants to merge 10 commits into
RIOT-OS:masterfrom
elenaf9:guides/networking
Open

doc/guides: migrate rpl networking guide from wiki#22460
elenaf9 wants to merge 10 commits into
RIOT-OS:masterfrom
elenaf9:guides/networking

Conversation

@elenaf9

@elenaf9 elenaf9 commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Contribution description

Migrate the wiki Tutorial: RIOT and Multi Hop Routing with RPL to Starlight.

Small refactor:

  • Before: the tutorial included two guides, one for native and one for using the IoT-Lab. The RPL-related sections were mostly duplicated.
  • Now: One Starting RIOT section for three setups: Local hardware, native, and IoT-Lab. The remaining RPL-related sections are then shared.

Testing procedure

I am not familiar with Starlight. Can I preview the page locally somehow?

Issues/PRs references

Discussed in #22265.

Declaration of AI-Tools / LLMs usage:

AI-Tools / LLMs that were used are:

  • GPT 5.3 for spell-checking

@github-actions github-actions Bot added the Area: doc Area: Documentation label Jul 10, 2026
Comment thread doc/guides/networking/rpl.mdx Outdated
Comment on lines +173 to +177
To flash your application onto all nodes in the experiment, use the `iotlab-flash` command:

```sh
$ IOTLAB_USER=<iotlab_user> BOARD=iotlab-m3 make iotlab-flash
```

@elenaf9 elenaf9 Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

The iotlab-exp command before should already flash the firmware onto all nodes.
However, the command somehow failed for me, so I removed the flashing part from iotlab-exp locally and added this step here. Before merging the PR, the iotlab-exp command should be fixed (or I should figure out why it didn't work for me specifically) and this section revisited.

Comment thread doc/starlight/astro.config.ts Outdated
Comment thread doc/guides/networking/rpl.mdx
@AnnsAnns

Copy link
Copy Markdown
Member

I am not familiar with Starlight. Can I preview the page locally somehow?

Yes, https://guide.riot-os.org/misc/how_to_doc/ should help you with that 😄

Comment on lines +60 to +62
```sh
$ make flash term
```

@AnnsAnns AnnsAnns Jul 10, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
```sh
$ make flash term
```
make flash term

Removing the $ makes it copy-pastable with the little button that pops up :) (The suggestion is broken though, don't apply it)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I was using the conventions from the riot exercises, to differentiate between Linux shell and RIOT shell commands.
Does that convention not apply in the guides here?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I have never seen that convention if I am totally honest with you, the repo is also outside of the RIOT org 🤓 ☝️

That being said, I think it's generally fine to keep it as is, esp. since you are following that convention. This was more of a "neat to have".

@elenaf9 elenaf9 Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Don't have a strong opinion. The fact that you can't copy a command well if it's prepended with $ also annoys me sometimes ^^
Does someone else have an opinion on this? cc @mguetschow

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Now that we have fancy starlight, couldn't we somehow mark the codeblock as being the host or RIOT shell and visualize that in starlight outside of the copy-able area? somehow annotate the codeblock HTML and a simple CSS rule should do.

Other than that, I would prefer removing the $ so it is easy to copy. Should be clear from the context anyhow what is meant.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

It appears like that we can do this by directly using the Code component with the theme attribute, however, this might make it look weird depending on whether you use dark/light theme, e.g. if we make RIOT default to a dark blue theme for code blocks it would then look really out of place when using the light theme and I don't see an (easy) option to give a theme depending on that. (All that to say "Yes but hard")

@LasseRosenow LasseRosenow Jul 19, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I am also in favor to remove the $, as I have also already done at many places, we should update the docs

@AnnsAnns AnnsAnns added CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR CI: skip compile test If set, CI server will run only non-compile jobs, but no compile jobs or their dependent jobs AI: Helped PR/Issue uses AI sparingly, e.g. code inline assistant, debugging with AI, etc. Area: network Area: Networking labels Jul 10, 2026
@riot-ci

riot-ci commented Jul 10, 2026

Copy link
Copy Markdown

Murdock results

✔️ PASSED

970658c fixup! doc/starlight: move CoAP tutorial to networking group

Success Failures Total Runtime
1 0 1 01m:12s

Artifacts

@crasbe crasbe added the Type: new feature The issue requests / The PR implemements a new feature for RIOT label Jul 11, 2026

@crasbe crasbe left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thank you for starting the wiki move. This is a really good tutorial that was quite hidden in the Wiki 😅


Type the following command in three different terminals, using `tap0`, `tap1`, and `tap2`, respectively.

```sh

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
```sh
```

These are not really shell commands.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Comment thread doc/guides/networking/rpl.mdx Outdated
Comment thread doc/guides/networking/rpl.mdx
Comment thread doc/guides/networking/rpl.mdx Outdated

List all connected boards, their port, and serial number.

```sh

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
```sh
```

These are also not really shell commands but rather printout of a command.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Why would it not be a shell command? I think the format:

$ command
printout
printout

is quite common for markdown code blocks. 1
Without the sh we loose syntax highlighting, which is generally recommended for all fenced code blocks. 2

Footnotes

  1. https://github.com/DavidAnson/markdownlint/blob/main/doc/md014.md

  2. https://github.com/DavidAnson/markdownlint/blob/main/doc/md040.md

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Currently in starlight we don't use the "$" prefix because this is in conflict with the copy button and starlight already visualizes quite clear that it is a shell command.

We right now usually just split the command and output into 2 different code blocks at other places in the guides.

Comment thread doc/guides/networking/rpl.mdx Outdated
Comment thread doc/guides/networking/rpl.mdx Outdated
Comment thread doc/guides/networking/rpl.mdx Outdated
Comment thread doc/guides/networking/rpl.mdx Outdated
Apply suggestions from code review.

Co-authored-by: crasbe <crasbe@gmail.com>
@github-actions github-actions Bot removed the Area: network Area: Networking label Jul 13, 2026
Comment thread doc/starlight/astro.config.ts
Comment on lines +60 to +62
```sh
$ make flash term
```

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

It appears like that we can do this by directly using the Code component with the theme attribute, however, this might make it look weird depending on whether you use dark/light theme, e.g. if we make RIOT default to a dark blue theme for code blocks it would then look really out of place when using the light theme and I don't see an (easy) option to give a theme depending on that. (All that to say "Yes but hard")

@crasbe crasbe added the State: needs rebase State: The codebase was changed since the creation of the PR, making a rebase necessary label Jul 20, 2026
@crasbe

crasbe commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

This has to be rebased, now that the #22481 PR is in.

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

Labels

AI: Helped PR/Issue uses AI sparingly, e.g. code inline assistant, debugging with AI, etc. Area: doc Area: Documentation CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR CI: skip compile test If set, CI server will run only non-compile jobs, but no compile jobs or their dependent jobs State: needs rebase State: The codebase was changed since the creation of the PR, making a rebase necessary Type: new feature The issue requests / The PR implemements a new feature for RIOT

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants