-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Silabs] Adds new Silabs guides (#31261)
* Creation of new Silabs documentation * restyle * FIx misspells * fix TOC * restyle table * fix typo * Restyled by prettier-markdown --------- Co-authored-by: Restyled.io <[email protected]>
- Loading branch information
Showing
9 changed files
with
661 additions
and
40 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,232 @@ | ||
# Silabs CLI Guide | ||
|
||
## Introduction | ||
|
||
The guide discusses the different CLIs that can be enabled with the Silabs | ||
sample apps. The CLIs expose configuration and management APIs via a command | ||
line interface (CLI). For OpenThread devices, the OpenThread CLI can be used | ||
with or without the Matter CLI. For Wi-Fi devices, only the Matter CLI is | ||
available. | ||
|
||
- [Introduction](#introduction) | ||
- [Enable the CLI interfaces](#enable-the-cli-interfaces) | ||
- [Matter CLI](#matter-cli) | ||
- [OpenThread CLI](#openthread-cli) | ||
- [Connecting to the device](#connecting-to-the-device) | ||
- [Screen Utility](#screen-utility) | ||
- [Tera Term](#tera-term) | ||
- [Command List](#command-list) | ||
- [Application Specific Commands](#application-specific-commands) | ||
|
||
## Enable the CLI Interfaces | ||
|
||
### Matter CLI | ||
|
||
To enable the Matter CLI, the `chip_build_libshell=true` argument can be added. | ||
This build argument can be added to OpenThread and Wi-Fi build commands. Here is | ||
an example of the build command with the Matter CLI enabled. | ||
|
||
```sh | ||
./scripts/examples/gn_silabs_example.sh ./examples/lighting-app/silabs/ ./out/lighting-app BRD4187C chip_build_libshell=true | ||
``` | ||
|
||
### OpenThread CLI | ||
|
||
The OpenThread CLI is enabled by default on all OpenThread builds. To disable | ||
the OpenThread CLI, the `enable_openthread_cli=false` argument can be added. | ||
Here is an example of the build command to disable the OpenThread CLI. | ||
|
||
```sh | ||
./scripts/examples/gn_silabs_example.sh ./examples/lighting-app/silabs/ ./out/lighting-app BRD4187C enable_openthread_cli=false | ||
``` | ||
|
||
## Connecting to the Device | ||
|
||
The different CLIs are provided through the UART interface. The following table | ||
exposes the UART configurations to connect to the different CLIs. | ||
|
||
| Configuration | Value | | ||
| :--------------: | :----- | | ||
| Baudrate (speed) | 115200 | | ||
| Data | 8 bit | | ||
| Parity | None | | ||
| Stop Bit | 1 bit | | ||
| Flow Control | None | | ||
|
||
Any serial terminal emulator will permit to connect to the device. For MacOS and | ||
Linux, the screen utility can be used. For Windows, Tera Term can be used. | ||
|
||
### Screen Utility | ||
|
||
To use the Screen utility, we first need to find the vcom port. For MacOS, it | ||
will be formatted as `/dev/cu.usbmodem...` and for Linux it will be formatted as | ||
`/dev/ttyACM...`.<br/> Here is an example command connecting to the device with | ||
the screen utility. | ||
|
||
```sh | ||
screen /dev/cu.usbmodem0004403048491 115200 8-N-1 | ||
``` | ||
|
||
### Tera Term | ||
|
||
See the | ||
[Tera Term guide](https://siliconlabs.github.io/matter/latest/wifi/MATTER_SHELL.html) | ||
on how to connect to the device on Windows. | ||
|
||
## Command List | ||
|
||
When the prompt `matterCli>` is printed, the device is ready for a command. | ||
|
||
> **Note**: When the OpenThread CLI is used without the Matter CLI, the prompt | ||
> is `>`. | ||
- [help](#help) | ||
- [base64](#base64) | ||
- [exit](#exit) | ||
- [version](#version) | ||
- [ble](#ble) | ||
- [config](#config) | ||
- [device](#device) | ||
- [onboardingcodes](#onboardingcodes) | ||
- [dns](#dns) | ||
- [dns](#dns) | ||
- [ota](#ota) | ||
- [stat](#stat) | ||
- [echo](#echo) | ||
- [log](#log) | ||
- [rand](#rand) | ||
- [otcli](#otcli) | ||
|
||
### help | ||
|
||
Prints the list of commands and their description. | ||
|
||
```bash | ||
matterCli> help | ||
base64 Base64 encode / decode utilities | ||
exit Exit the shell application | ||
help List out all top level commands | ||
version Output the software version | ||
ble BLE transport commands | ||
config Manage device configuration. Usage to dump value: config [param_name] and to set some values (discriminator): config [param_name] [param_value]. | ||
device Device management commands | ||
onboardingcodes Dump device onboarding codes. Usage: onboardingcodes none|softap|ble|onnetwork [qrcode|qrcodeurl|manualpairingcode] | ||
dns Dns client commands | ||
ota OTA commands | ||
stat Statistics commands | ||
echo Echo back provided inputs | ||
log Logging utilities | ||
rand Random number utilities | ||
otcli Dispatch OpenThread CLI command | ||
``` | ||
|
||
### base64 | ||
|
||
Base64 encode / decode utilities | ||
|
||
```bash | ||
matterCli>base64 help | ||
help Usage: base64 <subcommand> | ||
encode Encode a hex sting as base64. Usage: base64 encode <hex_string> | ||
decode Decode a base64 sting as hex. Usage: base64 decode <base64_string> | ||
``` | ||
|
||
### exit | ||
|
||
Exit the application | ||
|
||
> **Note**: Application will not respond until reset. | ||
### version | ||
|
||
Output the software version | ||
|
||
### ble | ||
|
||
BLE transport commands | ||
|
||
```bash | ||
matterCli> ble help | ||
help Usage: ble <subcommand> | ||
adv Enable or disable advertisement. Usage: ble adv <start|stop|state> | ||
``` | ||
|
||
### config | ||
|
||
Manage device configuration. Usage to dump value: config [param_name] and to set | ||
some values (discriminator): config [param_name][param_value]. | ||
|
||
```bash | ||
matterCli> config help | ||
help Usage: config <subcommand> | ||
vendorid Get VendorId. Usage: config vendorid | ||
productid Get ProductId. Usage: config productid | ||
hardwarever Get HardwareVersion. Usage: config hardwarever | ||
pincode Get commissioning pincode. Usage: config pincode | ||
discriminator Get/Set commissioning discriminator. Usage: config discriminator [value] | ||
``` | ||
|
||
### device | ||
|
||
Device management commands | ||
|
||
```bash | ||
matterCli> device | ||
factoryreset Performs device factory reset | ||
``` | ||
|
||
### onboardingcodes | ||
|
||
Dump device onboarding codes. Usage: onboardingcodes none|softap|ble|onnetwork | ||
[qrcode|qrcodeurl|manualpairingcode] | ||
|
||
### dns | ||
|
||
Dns client commands | ||
|
||
```bash | ||
matterCli> dns | ||
resolve Resolve the DNS service. Usage: dns resolve <fabric-id> <node-id> (e.g. dns resolve 5544332211 1) | ||
browse Browse DNS services published by Matter nodes. Usage: dns browse <commissionable|commissioner> | ||
``` | ||
|
||
### ota | ||
|
||
OTA commands | ||
|
||
```bash | ||
matterCli> ota | ||
query Query for a new image. Usage: ota query | ||
apply Apply the current update. Usage: ota apply | ||
notify Notify the new image has been applied. Usage: ota notify <version> | ||
state Gets state of a current image update process. Usage: ota state | ||
progress Gets progress of a current image update process. Usage: ota progress | ||
``` | ||
|
||
### stat | ||
|
||
Statistics commands | ||
|
||
### echo | ||
|
||
Echo back provided inputs | ||
|
||
### log | ||
|
||
Logging utilities | ||
|
||
### rand | ||
|
||
Random number utilities | ||
|
||
### otcli | ||
|
||
See the official OpenThread CLI | ||
[documentation](https://github.com/openthread/openthread/blob/main/src/cli/README.md) | ||
for the list of commands. | ||
|
||
## Application Specific Commands | ||
|
||
Samples apps may adds example specific commands to enhance the testable feature | ||
set of the sample. See the sample app documentation for more information on | ||
application specific commands. |
Oops, something went wrong.