Skip to content

EXP-CONNECT

class EXP

EXP(position, selectors)
Created an object for the expansion board connected to Zerynth ZM1 board at the position number, counting from left to right. Valid positions are 1 to 4. selectors is a tuple composed as in the following:

  1. Ring pin.

Once the EXP object is created, the expansion board can be used from the application by using the gpio module.

Both values are integers from 0 to 3.

method start_cellular

start_cellular(apn="", apn_user="", apn_password="",
               dhcp=True, ip="", mask="", gateway="",
               dns="8.8.8.8", timeout=10000)
The method fully configure, initialize and start the cellular module. The cellular module will be ready to use when this method resolves.

  • apn: is the APN for the network connection. It depends from the SIM card provider.
  • apn_user: the username for the network connection authentication. Usually it is empty. Default value empty string.
  • apn_password: the password for the network connection authentication. Usually it is empty. Default value empty string.

If dhcp is True (the default) other following four IP related arguments are ignored. When dhcp is False, the four IP related arguments are:

  • ip: is the IP address.
  • mask: the net mask expressed as A.B.C.D dotted address.
  • gateway: the gateway to be used as default router.
  • dns: the Domain Name Server to be used for name resolution. Default is "8.8.8.8", the Google DNS.

  • timeout: Connection timeout in milliseconds. CellularException is raised if connection do not succeed during this time. Default value 10000 ms.

The cellular module is returned.

method stop_cellular

stop_cellular()
The interface is stopped, all connections dropped, and all socket related to cellular interface closed.

mehod reset_cellular

reset_cellular()
The method resets the Cellular hardware module and the GNSS subsystem. The started network connections should have been closed before, otherwise they could fall in an inconsistent state.

method antenna_on

antenna_on()
The method powers the GNSS antenna. The antenna is already powered by the start_cellular method.

method antenna_off

antenna_off()
The method shuts down the GNSS antenna.

method get_status

get_status()
The method returns the value of the status pin of the cellular modem. The pin will be high when the module is on.

method get_psm_ind

get_psm_ind()
The method returns the value of the psm indicator pin. The pin will be low when in PSM.

method get_ring

get_ring()
The method returns the value of the ring pin. The pin will go low when the ring triggers.

method setup_ring_cb

setup_ring_cb(cb)
The method setup the call back function to be called when the ring triggers.

method get_dcd

get_dcd()
The method returns the value of the dcd pin.

method summary

summary()
Print the connect expansion summary on the console.

Example

Please refer also to the cellular documentation.

from expansions import connect
from bsp import board

board.init()

# Add the connect expansion
sel = (0,)
con_e = board.next_expansion(connect, sel)
# Start the cellular module and connect to the desired provider
cel = con_e.start_cellular(apn="my-provider-apn")
# Print info of the cell we connected to.
print(cel.cellinfo())
# Stop cellular module
con_e.stop_cellular()

while True:
    sleep(1000)