2.2 Network Module API Manual#
1. Overview#
This module is primarily used to configure and view network parameters. Once configured, the socket module can be used for network communication.
2. LAN Class#
Reference documentation: Micropython LAN
This class serves as the interface for configuring wired networks. Example code is as follows:
import network
nic = network.LAN()
print(nic.ifconfig())
# Once configured, sockets can be used as usual
...
2.1 Constructor#
class
network.LAN()¶Creates a wired Ethernet object.
2.2 Methods#
LAN.active([state]) ¶
Activates or deactivates the network interface. Pass a boolean parameter
Trueto activate,Falseto deactivate. If no parameter is passed, it returns the current state.LAN.isconnected() ¶
Returns
Trueif connected to the network,Falseotherwise.LAN.ifconfig([(ip, subnet, gateway, dns)]) ¶
Gets or sets the network interface parameters at the IP level, including IP address, subnet mask, gateway, and DNS server. When called without parameters, it returns a tuple containing the above information; to set parameters, pass a tuple containing the IP address, subnet mask, gateway, and DNS. For example:
nic.ifconfig(('192.168.0.4', '255.255.255.0', '192.168.0.1', '8.8.8.8'))
LAN.config(config_parameters) ¶
Gets or sets network interface parameters. Currently, only the MAC address can be set or retrieved. For example:
import network lan = network.LAN() # Set MAC address lan.config(mac="42:EA:D0:C2:0D:83") # Get MAC address print(lan.config("mac"))
3. WLAN Class#
Reference documentation: Micropython WLAN
This class serves as the interface for configuring WiFi networks. Example code is as follows:
import network
# Enable STA mode and connect to WiFi access point
nic = network.WLAN(network.STA_IF)
nic.active(True)
nic.connect('your-ssid', 'your-password')
# Once configured, sockets can be used as usual
3.1 Constructor#
class
network.WLAN(*interface_id*)Creates a WLAN network interface object. Supported interface types include
network.STA_IF(station mode, connecting to an upstream WiFi access point) andnetwork.AP_IF(access point mode, allowing other devices to connect). Methods differ based on the interface type; for example, only STA mode supports connecting to an access point usingWLAN.connect().
3.2 Methods#
WLAN.active([is_active])
Activates (
True) or deactivates (False) the network interface by passing a boolean parameter. If no parameter is passed, it returns the current state of the interface.WLAN.connect(ssid=None, password=None, bssid=None)
Connects to a WiFi network using the specified SSID and password. If
bssidis provided, it connects only to the access point with that MAC address (SSID must also be specified in this case).WLAN.disconnect()
Disconnects from the current WiFi network.
WLAN.scan()
Scans for available WiFi networks. This method is only valid in STA mode and returns a list containing information about each network, such as:
# print(sta.scan()) bssid / frequency / signal strength / security protocol / ssid da:c5:47:12:80:ab 2462 -30 [WPA2-PSK-CCMP][ESS] Redmi Note 11 Pro 72:a8:d3:ab:c8:2c 2412 -42 [WPA2-PSK-CCMP][WPS][ESS] wifi_test
WLAN.status([param])
Returns the current network connection status. When no parameter is passed, it returns detailed connection information, including BSSID, frequency, SSID, encryption type, IP address, etc. For example:
# print(sta.status()) bssid=c6:b5:b6:86:64:d7 freq=2462 ssid=wjx_pc ip_address=192.168.137.221
WLAN.isconnected()
In STA mode, returns
Trueif connected to a WiFi access point and has a valid IP address, otherwise returnsFalse. In AP mode, returnsTrueif devices are connected to the access point.WLAN.ifconfig([(ip, subnet, gateway, dns)])
Gets or sets the network interface parameters at the IP level. When called without parameters, it returns a tuple containing the IP address, subnet mask, gateway, and DNS server; passing parameters sets these values. For example:
nic.ifconfig(('192.168.0.4', '255.255.255.0', '192.168.0.1', '8.8.8.8'))
WLAN.config(param)
Gets or sets the network interface configuration parameters. Supported parameters include MAC address, SSID, WiFi channel, whether to hide SSID, password, etc. Use keyword argument syntax to set parameters; to query a parameter, pass the parameter name. For example:
# Set access point SSID and channel ap.config(ssid='k230_ap_wjx', channel=11, key='12345678') # Query configuration parameters print(ap.config('ssid')) print(ap.config('channel'))
Supported configuration parameters include:
Parameter
Description
mac
MAC address (bytes)
ssid
WiFi access point name (string)
channel
WiFi channel (integer)
hidden
Whether to hide SSID (boolean)
password
WiFi connection password (string)