Skip to content

Conversation

@morigawa
Copy link
Contributor

@morigawa morigawa commented Nov 9, 2025

Contribution description

Adds a wrapper, so that the OpenThread CLI can be used through the RIOT shell. Without this, it was not possible to use the OpenThread CLI and RIOT shell capabilities simultaneously, as far as I am aware. To solve this, I created a new shell pseudo-module that adds the "ot" command, to provide access to the OpenThread CLI. If the openthread-cli-% module is used, the shell module will be compiled as a dependency. The OpenThread example previously made use of the OpenThread CLI, therefor the example has been adapted for the new usage.

Testing procedure

Tested shell and basic OpenThread utility with new wrapper for nrf52840dk, adafruit-feather-nrf52840-sense (added this to example whitelist) and frdm-kw41z.

@github-actions github-actions bot added Area: network Area: Networking Area: doc Area: Documentation Area: build system Area: Build system Area: pkg Area: External package ports Area: sys Area: System Area: examples Area: Example Applications labels Nov 9, 2025
@morigawa morigawa changed the title Pr/integrate openthread into shell sys/shell: add shell wrapper for openthread cli Nov 9, 2025
Until now OpenThread CLI and RIOT shell could not be used at the same
time. Now it is possible to use all CLI command with the prefix "ot". To
get an overview use "ot help".
Automatically use RIOT shell when compiling OpenThread with CLI module.
Ordered Makefile.dep alpha numerically.
Add shell to example, update readme and add adafruit-feather-sense to
whitelisted boards, after testing.
@morigawa morigawa force-pushed the pr/integrate-openthread-into-shell branch from eaa1033 to c04fbd3 Compare November 10, 2025 07:31
@morigawa
Copy link
Contributor Author

Fixed some errors that were created while doing the cleanup and tested for different boards now. PR is now ready for review. I changed the CLI transport from UART to Console and it works, but I'm not sure if this is correct. At least for the feather it is now possible to easily use the example, because previously the output was only available using a UART to USB adapter.

@morigawa morigawa marked this pull request as ready for review November 10, 2025 07:38
@morigawa morigawa requested a review from jia200x as a code owner November 10, 2025 07:38
@crasbe crasbe added Type: new feature The issue requests / The PR implemements a new feature for RIOT CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels Nov 10, 2025
Copy link
Contributor

@mguetschow mguetschow left a comment

Choose a reason for hiding this comment

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

Nice one, thank you! Haven't tested it yet, but I do have some comments already :)

@riot-ci
Copy link

riot-ci commented Nov 10, 2025

Murdock results

✔️ PASSED

61e1f85 fixup! sys/shell: integrate OpenThread CLI into RIOT shell

Success Failures Total Runtime
10928 0 10930 11m:32s

Artifacts

@mguetschow
Copy link
Contributor

Tested to work nicely on an nrf52840dk :)

@morigawa morigawa force-pushed the pr/integrate-openthread-into-shell branch from 8abe2f0 to 61e1f85 Compare November 14, 2025 13:36
Copy link
Contributor

@mguetschow mguetschow left a comment

Choose a reason for hiding this comment

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

Thanks for bearing with me :) Looks good, please squash!

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

Labels

Area: build system Area: Build system Area: doc Area: Documentation Area: examples Area: Example Applications Area: network Area: Networking Area: pkg Area: External package ports Area: sys Area: System CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR 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.

5 participants