Files
lucky-cat/docs/factory-cli-wifi-commands.md
T

74 lines
2.3 KiB
Markdown

# Factory CLI Wi-Fi Commands
The Factory CLI accepts commands terminated by CR, LF, or CRLF on UART0. A
successful command returns `OK`. Commands that return data emit one JSON line
before `OK`. Failures return `ERROR <reason>`.
## Read Saved Networks
```text
get_wifi
```
The response lists saved SSIDs in connection-priority order. Passwords are
never returned. Up to 10 networks can be stored.
```text
{"count":2,"networks":[{"priority":0,"ssid":"Office WiFi"},{"priority":1,"ssid":"Backup"}]}
OK
```
An empty list is returned as:
```text
{"count":0,"networks":[]}
OK
```
## Save a Network
```text
set_wifi "Office WiFi" "network-password"
```
The SSID is required and may contain up to 32 bytes. The password may contain
up to 64 bytes. Quote arguments that contain spaces. A missing or explicitly
empty password saves an open network:
```text
set_wifi "Guest Network"
set_wifi "Guest Network" ""
```
Backslash escapes the following character inside or outside quoted arguments.
To include a literal backslash, enter it twice.
Saving a new SSID inserts it at priority 0. Saving an existing SSID replaces
its password and moves it to priority 0. If 10 networks are already saved,
adding a new SSID removes the lowest-priority entry. This command only updates
persistent credentials; it does not disconnect or immediately reconnect the
current station.
## Clear Saved Networks
```text
reset_wifi
```
This command clears all saved Wi-Fi credentials, returns `OK`, allows 100 ms
for the UART reply to be transmitted, and restarts the device. It has the same
persistence effect as the physical Wi-Fi reset action.
## Error Responses
| Response | Meaning |
| --- | --- |
| `ERROR invalid_command_syntax` | An argument quote was not closed or the command contains too many arguments. |
| `ERROR wifi_read_failed` | Saved networks could not be read. |
| `ERROR wifi_response_too_large` | The saved network response exceeded the internal reply buffer. |
| `ERROR missing_wifi_ssid` | `set_wifi` did not receive a non-empty SSID. |
| `ERROR invalid_wifi_arguments` | `set_wifi` received more than an SSID and password. |
| `ERROR invalid_wifi_credentials` | The SSID or password exceeded its supported length. |
| `ERROR wifi_save_failed` | Credentials could not be saved. |
| `ERROR wifi_reset_failed` | Saved credentials could not be cleared. |