WiFi Station¶
-
group
wifi_sta Control and monitoring of WiFi station interface.
- Note
The WiFi station interface provides client access to a WiFi network. Control of WiFi connection including WiFi SSID and password and IP address, DHCP, etc.
- See
- See
Typedefs
-
using
ScanCompletedDelegate= Delegate<void(bool success, BssList &list)>¶ Scan complete handler function.
-
using
SmartConfigDelegate= Delegate<bool(SmartConfigEvent event, const SmartConfigEventInfo &info)>¶ Smart configuration handler function.
- Parameters
event:info:
- Return Value
bool: return true to perform default configuration
-
using
WPSConfigDelegate= Delegate<bool(WpsStatus status)>¶ WPS configuration callback function.
- Parameters
status:
- Return Value
bool: return true to perform default configuration
Enums
-
enum
StationConnectionStatus¶ WiFi station connection states.
Values:
-
eSCS_Idle¶ Connection idle.
-
eSCS_Connecting¶ Connecting.
-
eSCS_WrongPassword¶ Wrong password.
-
eSCS_AccessPointNotFound¶ AP not found.
-
eSCS_ConnectionFailed¶ Connection failed.
-
eSCS_GotIP¶ Got IP address.
-
-
enum
SmartConfigType¶ Smart configuration type.
Values:
-
SCT_None= -1¶
-
SCT_EspTouch¶ ESP Touch.
-
SCT_AirKiss¶ Air Kiss.
-
SCT_EspTouch_AirKiss¶ ESP Touch and Air Kiss.
-
Variables
-
StationClass &
WifiStation¶ Global instance of WiFi station object.
- Note
Use WifiStation.function to access WiFi station functions
- Note
Example:
if(WifiStation.config("My_WiFi", "My_Password")) WifiStation.enable(true);
-
struct
SmartConfigEventInfo¶ - #include <Station.h>
Smart Config callback information.
-
class
StationClass¶ - #include <Station.h>
WiFi station class.
Public Functions
-
virtual void
enable(bool enabled, bool save = false) = 0¶ Enable / disable WiFi station.
- Note
Disabling WiFi station will also disable and clear the handler set with waitConnection.
- Parameters
enabled: True to enable station. False to disable.save: True to save operational mode to flash, False to set current operational mode only
-
virtual bool
isEnabled() const = 0¶ Get WiFi station enable status.
- Return Value
bool: True if WiFi station enabled
-
virtual bool
config(const String &ssid, const String &password, bool autoConnectOnStartup = true, bool save = true) = 0¶ Configure WiFi station.
- Parameters
ssid: WiFi SSIDpassword: WiFi passwordautoConnectOnStartup: True to auto connect. False for manual. (Default: True)save: True to save the SSID and password in Flash. False otherwise. (Default: True)
-
virtual bool
connect() = 0¶ Connect WiFi station to network.
-
virtual bool
disconnect() = 0¶ Disconnect WiFi station from network.
-
bool
isConnected() const¶ Get WiFi station connectoin status.
- Return Value
bool: True if connected.
-
bool
isConnectionFailed() const¶ Get WiFi station connection failure status.
- Return Value
bool: True if connection failed
-
virtual StationConnectionStatus
getConnectionStatus() const = 0¶ Get WiFi station connection status.
- Return Value
StationConnectionStatus: Connection status structure
-
virtual bool
isEnabledDHCP() const = 0¶ Get WiFi station DHCP enabled status.
- Return Value
bool: True if DHCP enabled
-
virtual void
enableDHCP(bool enable) = 0¶ Enable or disable WiFi station DHCP.
- Parameters
enable: True to enable WiFi station DHCP
-
virtual void
setHostname(const String &hostname) = 0¶ Set WiFi station DHCP hostname.
- Parameters
hostname: - WiFi station DHCP hostname
-
virtual String
getHostname() const = 0¶ Set WiFi station DHCP hostname.
- Return Value
WiFi: station DHCP hostname
-
virtual IpAddress
getIP() const = 0¶ Get WiFi station IP address.
- Return Value
IpAddress: IP address of WiFi station
-
virtual MacAddress
getMacAddress() const = 0¶ Get WiFi station MAC address.
- Return Value
MacAddress:
-
String
getMAC(char sep = '0') const¶ Get WiFi station MAC address.
- Parameters
sep: Optional separator between bytes (e.g. ‘:’)
- Return Value
String: WiFi station MAC address
-
virtual bool
setMacAddress(const MacAddress &addr) const = 0¶ Set WiFi station MAC address.
Must be called from
init()before activating station. Espressif place certain limitations on MAC addresses:- Parameters
addr: The new MAC address
- Return Value
bool: true on success
Bit 0 of the first byte of the MAC address can not be 1. For example:
OK: “1a:XX:XX:XX:XX:XX” NOT OK: “15:XX:XX:XX:XX:XX”
-
virtual IpAddress
getNetworkMask() const = 0¶ Get WiFi station network mask.
- Return Value
IpAddress: WiFi station network mask
-
virtual IpAddress
getNetworkGateway() const = 0¶ Get WiFi station default gateway.
- Return Value
IpAddress: WiFi station default gateway
-
virtual IpAddress
getNetworkBroadcast() const = 0¶ GetWiFi station broadcast address.
- Return Value
IpAddress: WiFi station broadcast address
-
bool
isLocal(IpAddress address)¶ Determine if the given address is on the same subnet.
- Note
Use to prevent external access to services
- Parameters
address:
- Return Value
bool: true if address is local
-
bool
setIP(IpAddress address)¶ Set WiFi station IP address.
- Parameters
address: IP address
- Return Value
bool: True on success
-
virtual bool
setIP(IpAddress address, IpAddress netmask, IpAddress gateway) = 0¶ Set WiFi station IP parameters.
- Parameters
address: IP addressnetmask: Network maskgateway: Default gatway
- Return Value
bool: True on success
-
virtual String
getPassword() const = 0¶ Get WiFi station password.
- Return Value
String: WiFi station password
-
virtual int8_t
getRssi() const = 0¶ Get WiFi signal strength.
- Return Value
int8_t: Value in dBm
-
virtual uint8_t
getChannel() const = 0¶ Get active WiFi channel.
- Return Value
uint8_t: channel number
-
virtual bool
startScan(ScanCompletedDelegate scanCompleted) = 0¶ Start WiFi station network scan.
- Parameters
scanCompleted: Function to call when scan completes
- Return Value
bool: True on success
-
virtual void