Wi-Fi Remote Terminal
This example demonstrates how to setup Gecko OS to enable remote access to your module or evaluation board using telnet via the Wi-Fi interface. The example shows how to use a Wi-Fi remote terminal, either via the softAP interface, or via the Wi-Fi client interface.
Once your evaluation board and Gecko OS is configured to enable the Remote Terminal feature, there is no longer any need to use a serial connection to control the board. The board can instead be controlled directly by Connecting the Remote Terminal.
- Soft AP
- Remote Terminal
Soft AP Remote Terminal
The example is based on a Silabs Mackerel board, but the process is generic for any Silabs evaluation board with a serial interface and a Gecko OS device.
Connect a computer to the evaluation board USB connector. Use your terminal program to make a serial connection to the board (see Getting Started).
View the Default State of the Soft AP and Remote Terminal Variables
This step is for information only. It is NOT necessary to list the variables before you change them.
In the serial terminal console use the
get softap and
get remote_terminal command to display the current state of the softap and remote_terminal variables. In the default state the variables are as shown below:
> get softap softap.auto_start: 0 softap.channel: 0 softap.dhcp_server.enabled: 1 softap.dns_server.enabled: 1 softap.idle_timeout: 7 softap.static.ip: 10.10.10.1 softap.passkey: softap.rate.protocol: auto softap.rate.transmit: auto softap.ssid: Gecko OS-# softap.dns_server.url: gecko_os.com,www.gecko_os.com
> get remote_terminal remote_terminal.enabled: 0 remote_terminal.password: remote_terminal.port: 2000 remote_terminal.timeout: 60
If the variables do not display as shown, you may wish to perform a factory reset to return them to the default state (see Factory Reset).
Change the Soft AP and Remote Terminal Variables
Setting up the soft Access Point (softap) and remote terminal, from the default state, requires just a few commands:
|Gecko OS Commands||Description|
You can reboot the board using the
reboot command, by pressing the reset button, or by power cycling.
After reboot, Gecko OS displays a message similar to the following:
> IPv4 address: 10.10.10.1 SoftAP 'Gecko OS-098' started Remote terminal listening on port: 2000 [Ready]
View the Changed State of the Soft AP and Remote Terminal Variables
This step is for information only. It is NOT necessary to list the variables after you change them.
After reboot, in the serial terminal, check the state of all softap and remote_terminal variables.
> get softap softap.auto_start: 1 softap.channel: 1 softap.dhcp_server.enabled: 1 softap.dns_server.enabled: 1 softap.idle_timeout: 7 softap.static.ip: 10.10.10.1 softap.passkey: softap.rate.protocol: auto softap.rate.transmit: auto softap.ssid: Gecko OS-# softap.dns_server.url: Gecko OS,Gecko OS.com,www.Gecko OS.com
> get remote_terminal remote_terminal.enabled: 1 remote_terminal.password: remote_terminal.port: 2000 remote_terminal.timeout: 60
Connecting the Remote Terminal to the Soft AP
On the computer running the remote terminal, connect to the Soft AP. The softap SSID is determined by the softap.ssid variable. The default value of Gecko OS-# means Gecko OS-, followed by the last 3 digits of the device WLAN MAC address, e.g. Gecko OS-098. The passkey is determined by the softap.passkey variable. The default is empty i.e. no passkey.
In your communication terminal program (e.g. Teraterm) create a new TCP/IP telnet connection with the Host determined by the softap.static.ip or softap.dns_server.url and the Port determined by remote_terminal.port:
|Property||Gecko OS variable||Default Value|
The terminal program should now complete the telnet connection to the eval board.
Note that the softap runs a DNS server by default. Softap urls are determined by the variable softap.dns_server.url. For example, you can connect the remote terminal to
gecko_os.com:2000, or set a softap.dns_server.url and remote_terminal.port as desired.
Before typing commands, ensure that local echo is turned on. For example, in Teraterm, select the checkbox in the menu Setup | Terminal | Local echo.
The remote terminal provides full access to all Gecko OS commands, exactly as if you were connected via a serial interface.
When a telnet client is connected to the remote terminal via Wi-Fi, the serial interface is disabled.
If required, and to add security, a remote terminal password can be added by configuring the remote_terminal.password variable.
WLAN Remote Terminal
Using a remote terminal via the WLAN interface is similar to the Soft AP example shown above. The difference is that we connect the module to the WLAN and set the remote terminal to use the WLAN interface.
For remote terminal control via Wi-Fi, set up the Gecko OS device to connect to your WLAN, and enable the remote terminal.
|Gecko OS Commands||Description|
The Gecko OS device restarts and displays output similar to:
[2015-04-21 | 01:08:15: Disassociated] Gecko OS-beta-126.96.36.199, Built:2015-04-15 10:45:20 for AMW004.3, Board:AMW004-E03.3 [Ready] [Associating to Silabs] > Obtaining IPv4 address via DHCP IPv4 address: 10.5.6.108 Remote terminal listening on port: 2000
Connecting the Remote Terminal to the WLAN
On the computer running the remote terminal, connect to the WLAN.
In your communication terminal program (e.g. Teraterm) create a new TCP/IP telnet connection with the Host determined by the Gecko OS device's wlan.network.ip, and the Port determined by remote_terminal.port (
2000 by default):
|Property||Gecko OS Variable||Value in this Example|
Supporting Gecko OS Editions and Versions
|2015-Apr-21||Added WLAN Remote Terminal section|