Skip to content

WiFi

This module implements a generic wifi interface. To function correctly it needs a wifi driver to be loaded, so that the module can use the driver to access the underlying hardware.

The link between the wifi module and the wifi driver is established without the programmer intervetion by the driver itself.

This module defines the following constants:

  • WIFI_OPEN = 0; Open Wifi network

  • WIFI_WEP = 1; Wifi Network secured with WEP

  • WIFI_WPA = 2; Wifi Network secured with WPA

  • WIFI_WPA2 = 3; Wifi Network secured with WPA2

gethostbyname

gethostbyname(hostname)

Translate a host name to IPv4 address format. The IPv4 address is returned as a string, such as “192.168.0.5”.

select

select(rlist, wlist, xlist, timeout=None)

This is equivalent to the Unix select system call. The first three arguments are sequences of socket instances.

  • rlist: wait until ready for reading

  • wlist: wait until ready for writing

  • xlist: wait for an “exceptional condition” (not supported by every wifi driver)

Empty sequences are allowed. The optional timeout argument specifies a time-out as an integer number in milliseconds. When the timeout argument is omitted the function blocks until at least one socket is ready. A timeout value of zero specifies a poll and never blocks.

The return value is a triple of lists of objects that are ready: subsets of the first three arguments. When the time-out is reached without a socket becoming ready, three empty lists are returned.

scan

scan(duration=5000)

Return the list of available wifi networks as a tuple of tuples: (SSID, network_security, RSSI, BSSID).

The format of RSSI depends on the specific wifi driver loaded.

duration is the maximum time in milliseconds the scan can last.

link(ssid, security, password="")

Try to establish a link with the Access Point handling the wifi network identified by ssid. security must be one of the WIFI constants, and password is needed if security is different from WIFI_OPEN

An exception can be raised if the link is not successful.

unlink()

Disconnect from the currently linked wifi network.

is_linked

is_linked()

Return True if linked to the Access Point

set_link_info(ip, mask, gw, dns)

Set desired wifi interface parameters:

  • ip, the static ipv4 address

  • mask, the network mask

  • gw, the default gateway

  • dns, the default dns

If 0.0.0.0 is given, a default address will be used.

link_info()

Return information on the currently established AP link.

The result is a tuple where the elements are, in order:

  • The assigned IP as a string

  • The network mask as a string

  • The gateway IP as a string

  • The DNS IP as a string

  • The MAC address of the wifi interface as a sequence of 6 bytes

softap_init

softap_init(ssid, sec, password="", max_conn=4)

Try to activate the Access Point operating mode exposing a wifi network identified by ssid. security must be one of the WIFI constants, and password is needed if security is different from WIFI_OPEN; max_conn represents the maximum number of connections available (default is 4)

An exception can be raised if the activation is not successful.

Note

Not guaranteed to be supported by every wifi driver!

softap_config

softap_config(ip="192.168.0.1", gw="192.168.0.1", net="255.255.255.0")

Try to configure the Access Point setting the IP address, the Gateway address and the Netmask address. Default values are: “192.168.0.1” as IP address, “192.168.0.1” as Gateway address, “255.255.255.0” as Netmask address.

An exception can be raised if the configuration is not successful.

Note

Not guaranteed to be supported by every wifi driver!

softap_get_info

softap_get_info()

Return information on the current devices connected to the Access Point.

The result is a tuple where every element represents a device connected and includes:

  • The assigned IP as a string

  • The MAC address of the wifi interface as a sequence of 6 bytes

Note

Not guaranteed to be supported by every wifi driver!

softap_off

softap_off()

Try to turn off the Access Point operating mode.

An exception can be raised if the Access Point disabling is not successful.

Note

Not guaranteed to be supported by every wifi driver!

station_on

station_on()

Try to turn on the Station operating mode.

An exception can be raised if the Station enabling is not successful.

Note

Not guaranteed to be supported by every wifi driver!

station_off

station_off()

Try to turn off the Station operating mode.

An exception can be raised if the Station disabling is not successful.

Note

Not guaranteed to be supported by every wifi driver!