meshtastic/docs/configuration/radio/network.mdx
tobi-sys c1ca0034fd Corrected String lengths for SSID and NTP server name
According to the source in in /firmware/src/mesh/generated/meshtastic/config.pb.h 
the declarations are
char wifi_ssid[33];
char ntp_server[33];
so these variables can hold 32 characters and the terminator \0
2023-11-15 15:09:48 +01:00

167 lines
4.1 KiB
Plaintext

---
id: network
title: Network Configuration
sidebar_label: Network
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
The Network config options are: NTP Server, WiFi Enabled, WiFi SSID, WiFi PSK, Ethernet Enabled, IPv4 Networking Mode, and Static Address. Network config uses an admin message sending a `Config.Network` protobuf.
:::info
Enabling WiFi will disable Bluetooth. Only one connection method will work at a time.
:::
ESP32 devices have the ability to connect to WiFi as a client. SoftAP mode is not supported by the Meshtastic firmware.
## Network Config Values
### NTP Server
The NTP server used if IP networking is available.
Set to `0.pool.ntp.org` by default. (Max Length: 32)
### WiFi Enabled
Enables or Disables WiFi.
Set to `false` (Disabled) by default.
### WiFi SSID
This is your WiFi Network's SSID.
Empty `""` by default. (Case Sensitive, Max Length: 32)
### WiFi PSK
This is your WiFi Network's password.
Empty `""` by default. (Case Sensitive, Max Length: 64)
### Ethernet Enabled
Enables or Disables Ethernet.
Set to `false` (Disabled) by default.
### IPv4 Networking Mode
Set to `DHCP` by default. Change to `STATIC` to use a static IP address. Applies to both Ethernet and WiFi.
### IPv4 Static Address configuration
contains ip, gateway, subnet and dns server in case you want a static configuration.
:::tip
The first time your device restarts after enabling WiFi or Ethernet, it will take an additional 20-30 seconds to boot. This is to generate self-signed SSL keys. The keys will be saved for future reuse.
:::
## Network Config Client Availability
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'},
{label: 'CLI', value: 'cli'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="android">
:::info
Network Config options are available for Android.
1. Open the Meshtastic App
2. Navigate to: **Vertical Ellipsis (3 dots top right) > Radio Configuration > Network**
:::
</TabItem>
<TabItem value="apple">
:::info
Network config options are available on iOS, iPadOS and macOS.
:::
</TabItem>
<TabItem value="cli">
:::info
All Network config options are available in the python CLI.
:::
| Setting | Acceptable Values | Default |
| :------------------: | :---------------: | :--------------: |
| network.ntp_server | string | `0.pool.ntp.org` |
| network.wifi_enabled | `true`, `false` | `false` |
| network.wifi_ssid | string | `""` |
| network.wifi_psk | string | `""` |
| network.eth_enabled | `true`, `false` | `false` |
| network.address_mode | `DHCP`, `STATIC` | `DHCP` |
:::tip
Because the device will reboot after each command is sent via CLI, it is recommended when setting multiple values in a config section that commands be chained together as one.
```shell title="Example:"
meshtastic --set network.wifi_enabled true --set network.wifi_ssid "my network" --set network.wifi_psk mypassword
```
:::
```shell title="Set NTP Server"
meshtastic --set network.ntp_server "0.pool.ntp.org"
```
```shell title="Enable / Disable WiFi"
meshtastic --set network.wifi_enabled true
meshtastic --set network.wifi_enabled false
```
```shell title="Set WiFi SSID"
meshtastic --set network.wifi_ssid mynetwork
// With spaces
meshtastic --set network.wifi_ssid "my network"
```
```shell title="Set WiFi password"
meshtastic --set network.wifi_psk mypassword
// With spaces
meshtastic --set network.wifi_psk "my password"
```
</TabItem>
<TabItem value="web">
:::info
All Network config options are available in the Web UI.
:::
</TabItem>
</Tabs>
## Examples
### WiFi Client
With `network.wifi_ssid` & `network.wifi_psk` populated, the device will know to connect to your network. Make sure you are in range of your WiFi. If you have a single Meshtastic device on your local network it's easy to connect to your device with DNS `http://meshtastic.local`. If you have multiple Meshtastic devices you will need to connect using their respective IP addresses.
### Disable WiFi
To disable WiFi completely, set `network.wifi_enabled` to `false`.