Table of Contents

Class WifiNetworkHelper

Namespace
nanoFramework.Networking
Assembly
System.Device.Wifi.dll

Network helper class providing helper methods to assist on connecting to a Wifi network.

public static class WifiNetworkHelper
Inheritance
WifiNetworkHelper
Inherited Members

Properties

HelperException

Exception that occurred when waiting for the network to become ready.

public static Exception HelperException { get; }

Property Value

Exception

NetworkReady

Event signaling that networking it's ready.

public static ManualResetEvent NetworkReady { get; }

Property Value

ManualResetEvent

Remarks

The conditions for this are setup in the call to SetupNetworkHelper(bool). It will be a composition of network connected, IpAddress available and valid system DateTime.

Status

Status of NetworkHelper.

public static NetworkHelperStatus Status { get; }

Property Value

NetworkHelperStatus

WifiAdapter

Gets the Wifi Adapter.

public static WifiAdapter WifiAdapter { get; }

Property Value

WifiAdapter

Methods

ConnectDhcp(string, string, WifiReconnectionKind, bool, int, CancellationToken)

This method will connect the network with DHCP enabled, for your SSID and try to connect to it with the credentials you've passed. This will save as well the configuration of your network.

public static bool ConnectDhcp(string ssid, string password, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false, int wifiAdapterId = 0, CancellationToken token = default)

Parameters

ssid string

The SSID of the network you are trying to connect to.

password string

The password associated to the SSID of the network you are trying to connect to.

reconnectionKind WifiReconnectionKind

The WifiReconnectionKind to setup for the connection.

requiresDateTime bool

Set to true if valid date and time are required.

wifiAdapterId int

The index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.

token CancellationToken

A CancellationToken used for timing out the operation.

Returns

bool

true on success. On failure returns false and details with the cause of the failure are made available in the Status property

ConnectFixAddress(string, string, IPConfiguration, WifiReconnectionKind, bool, int, CancellationToken)

This method will connect the network with the static IP address you are providing, for your SSID and try to connect to it with the credentials you've passed. This will save as well the configuration of your network.

public static bool ConnectFixAddress(string ssid, string password, IPConfiguration ipConfiguration, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false, int WifiAdapter = 0, CancellationToken token = default)

Parameters

ssid string

The SSID you are trying to connect to.

password string

The password associated to the SSID you are trying to connect to.

ipConfiguration IPConfiguration

The static IPv4 configuration to apply to the Wifi network interface.

reconnectionKind WifiReconnectionKind

The WifiReconnectionKind to setup for the connection.

requiresDateTime bool

Set to true if valid date and time are required.

WifiAdapter int

The index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.

token CancellationToken

A CancellationToken used for timing out the operation.

Returns

bool

true on success. On failure returns false and details with the cause of the failure are made available in the Status property

Disconnect()

Disconnect from the network.

public static void Disconnect()

Reconnect(bool, int, CancellationToken)

This method will connect the network, the information used to connect is the one already stored on the device.

public static bool Reconnect(bool requiresDateTime = false, int wifiAdapterId = 0, CancellationToken token = default)

Parameters

requiresDateTime bool

Set to true if valid date and time are required.

wifiAdapterId int

The index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.

token CancellationToken

A CancellationToken used for timing out the operation.

Returns

bool

true on success. On failure returns false and details with the cause of the failure are made available in the Status property

Remarks

This function can be called only if an existing network has been setup previously and if the credentials are valid.

ScanAndConnectDhcp(string, string, WifiReconnectionKind, bool, int, CancellationToken)

This method will scan and connect the network with DHCP enabled, for your SSID and try to connect to it with the credentials you've passed. This will save as well the configuration of your network.

public static bool ScanAndConnectDhcp(string ssid, string password, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false, int WifiAdapter = 0, CancellationToken token = default)

Parameters

ssid string

The SSID you are trying to connect to.

password string

The password associated to the SSID you are trying to connect to.

reconnectionKind WifiReconnectionKind

The reconnection type to the network.

requiresDateTime bool

Set to true if valid date and time are required.

WifiAdapter int

The index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.

token CancellationToken

A CancellationToken used for timing out the operation.

Returns

bool

true on success. On failure returns false and details with the cause of the failure are made available in the Status property

SetupNetworkHelper(bool)

This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.

public static void SetupNetworkHelper(bool requiresDateTime = false)

Parameters

requiresDateTime bool

Set to true if valid date and time are required.

Exceptions

InvalidOperationException

If any of the NetworkHelper methods is called more than once.

NotSupportedException

There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.

SetupNetworkHelper(string, string, WifiReconnectionKind, bool)

This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.

public static void SetupNetworkHelper(string ssid, string password, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false)

Parameters

ssid string

The SSID of the network you are trying to connect to.

password string

The password associated to the SSID of the network you are trying to connect to.

reconnectionKind WifiReconnectionKind

The WifiReconnectionKind to setup for the connection.

requiresDateTime bool

Set to true if valid date and time are required.

Exceptions

InvalidOperationException

If any of the NetworkHelper methods is called more than once.

NotSupportedException

There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.

SetupNetworkHelper(IPConfiguration, bool)

This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.

public static void SetupNetworkHelper(IPConfiguration ipConfiguration, bool requiresDateTime = false)

Parameters

ipConfiguration IPConfiguration

The static IP configuration you want to apply.

requiresDateTime bool

Set to true if valid date and time are required.

Exceptions

NotSupportedException

There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.