forked from espressif/esp-protocols
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request espressif#453 from espressif-abhikroy/component/co…
…nsole_cmd_wifi feat(console): Console for runtime wifi configuration
- Loading branch information
Showing
15 changed files
with
481 additions
and
1 deletion.
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
name: "console_cmd_wifi: build-tests" | ||
|
||
on: | ||
push: | ||
branches: | ||
- master | ||
pull_request: | ||
types: [opened, synchronize, reopened, labeled] | ||
|
||
jobs: | ||
build_console_cmd_wifi: | ||
if: contains(github.event.pull_request.labels.*.name, 'console') || github.event_name == 'push' | ||
name: Build | ||
strategy: | ||
matrix: | ||
idf_ver: ["latest", "release-v5.0"] | ||
idf_target: ["esp32"] | ||
test: [ { app: example, path: "components/console_cmd_wifi/examples" }] | ||
runs-on: ubuntu-20.04 | ||
container: espressif/idf:${{ matrix.idf_ver }} | ||
steps: | ||
- name: Checkout esp-protocols | ||
uses: actions/checkout@v3 | ||
with: | ||
submodules: recursive | ||
- name: Build ${{ matrix.test.app }} with IDF-${{ matrix.idf_ver }} for ${{ matrix.idf_target }} | ||
shell: bash | ||
working-directory: ${{matrix.test.path}} | ||
run: | | ||
${IDF_PATH}/install.sh --enable-pytest | ||
. ${IDF_PATH}/export.sh | ||
python $IDF_PATH/tools/ci/ci_build_apps.py . --target ${{ matrix.idf_target }} -vv --preserve-all --pytest-app |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
--- | ||
commitizen: | ||
bump_message: 'bump(console): $current_version -> $new_version' | ||
pre_bump_hooks: python ../../ci/changelog.py console_cmd_wifi | ||
tag_format: console_cmd_wifi-v$version | ||
version: 1.0.0 | ||
version_files: | ||
- idf_component.yml |
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,7 @@ | ||
# Changelog | ||
|
||
## [1.0.0](https://github.com/espressif/esp-protocols/commits/console_cmd_wifi-v1.0.0) | ||
|
||
### Features | ||
|
||
- Console for runtime wifi configuration ([194d1179](https://github.com/espressif/esp-protocols/commit/194d1179)) |
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,4 @@ | ||
idf_component_register(SRCS "console_wifi.c" | ||
INCLUDE_DIRS "." | ||
PRIV_REQUIRES esp_netif console esp_wifi | ||
WHOLE_ARCHIVE) |
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,44 @@ | ||
# Console command wifi | ||
The component offers a console with a command that enables runtime wifi configuration for any example project. | ||
|
||
## API | ||
|
||
### Steps to enable console in an example code: | ||
1. Add this component to your project using ```idf.py add-dependency``` command. | ||
2. In the main file of the example, add the following line: | ||
```c | ||
#include "console_wifi.h" | ||
``` | ||
3. Ensure esp-netif and NVS flash is initialized and default event loop is created in your app_main(): | ||
```c | ||
ESP_ERROR_CHECK(esp_netif_init()); | ||
ESP_ERROR_CHECK(esp_event_loop_create_default()); | ||
esp_err_t ret = nvs_flash_init(); //Initialize NVS | ||
if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND) { | ||
ESP_ERROR_CHECK(nvs_flash_erase()); | ||
ret = nvs_flash_init(); | ||
} | ||
ESP_ERROR_CHECK(ret); | ||
``` | ||
4. In your app_main() function, add the following line as the last line: | ||
```c | ||
ESP_ERROR_CHECK(console_cmd_init()); // Initialize console | ||
|
||
// Register all plugin command added to your project | ||
ESP_ERROR_CHECK(console_cmd_all_register()); | ||
|
||
// To register only wifi command skip calling console_cmd_all_register() | ||
ESP_ERROR_CHECK(console_cmd_wifi_register()); | ||
|
||
ESP_ERROR_CHECK(console_cmd_start()); // Start console | ||
``` | ||
|
||
## Suported command: | ||
|
||
### wifi: | ||
* ```wifi help```: Prints the help text for all wifi commands | ||
* ```wifi show network```: Scans and displays upto 10 available wifi networks. | ||
* ```wifi show sta```: Shows the details of wifi station. | ||
* ```wifi sta join <network ssid> <password>```: Station joins the given wifi network. | ||
* ```wifi sta join <network ssid>```: Station joins the given unsecured wifi network. | ||
* ```wifi sta leave```: Station leaves the wifi network. |
Oops, something went wrong.