From fc427d6cc5188539e1079d4555a142a1d78c3190 Mon Sep 17 00:00:00 2001 From: brentru Date: Mon, 1 Jun 2020 15:47:28 -0400 Subject: [PATCH 1/2] add updated examples --- examples/requests_advanced.py | 69 ++++++++++++++---------- examples/requests_simpletest_cellular.py | 31 ++++++----- 2 files changed, 61 insertions(+), 39 deletions(-) diff --git a/examples/requests_advanced.py b/examples/requests_advanced.py index d74f9af..e54c421 100644 --- a/examples/requests_advanced.py +++ b/examples/requests_advanced.py @@ -1,34 +1,49 @@ +# pylint: disable=unused-import +import time import board import busio -from digitalio import DigitalInOut -import adafruit_esp32spi.adafruit_esp32spi_socket as socket -from adafruit_esp32spi import adafruit_esp32spi +import digitalio +from adafruit_fona.adafruit_fona import FONA +from adafruit_fona.fona_3g import FONA3G +import adafruit_fona.adafruit_fona_network as network +import adafruit_fona.adafruit_fona_socket as cellular_socket import adafruit_requests as requests -# If you are using a board with pre-defined ESP32 Pins: -esp32_cs = DigitalInOut(board.ESP_CS) -esp32_ready = DigitalInOut(board.ESP_BUSY) -esp32_reset = DigitalInOut(board.ESP_RESET) - -# If you have an externally connected ESP32: -# esp32_cs = DigitalInOut(board.D9) -# esp32_ready = DigitalInOut(board.D10) -# esp32_reset = DigitalInOut(board.D5) - -spi = busio.SPI(board.SCK, board.MOSI, board.MISO) -esp = adafruit_esp32spi.ESP_SPIcontrol(spi, esp32_cs, esp32_ready, esp32_reset) - -print("Connecting to AP...") -while not esp.is_connected: - try: - esp.connect_AP(b"MY_SSID_NAME", b"MY_SSID_PASSWORD") - except RuntimeError as e: - print("could not connect to AP, retrying: ", e) - continue -print("Connected to", str(esp.ssid, "utf-8"), "\tRSSI:", esp.rssi) - -# Initialize a requests object with a socket and esp32spi interface -requests.set_socket(socket, esp) +# Get GPRS details and more from a secrets.py file +try: + from secrets import secrets +except ImportError: + print("GPRS secrets are kept in secrets.py, please add them there!") + raise + +# Create a serial connection for the FONA connection +uart = busio.UART(board.TX, board.RX) +rst = digitalio.DigitalInOut(board.D9) + +# Use this for FONA800 and FONA808 +fona = FONA(uart, rst) + +# Use this for FONA3G +# fona = FONA3G(uart, rst) + +# Initialize cellular data network +network = network.CELLULAR( + fona, (secrets["apn"], secrets["apn_username"], secrets["apn_password"]) +) + +while not network.is_attached: + print("Attaching to network...") + time.sleep(0.5) +print("Attached!") + +while not network.is_connected: + print("Connecting to network...") + network.connect() + time.sleep(0.5) +print("Network Connected!") + +# Initialize a requests object with a socket and cellular interface +requests.set_socket(cellular_socket, fona) JSON_GET_URL = "http://httpbin.org/get" diff --git a/examples/requests_simpletest_cellular.py b/examples/requests_simpletest_cellular.py index b091349..6727815 100755 --- a/examples/requests_simpletest_cellular.py +++ b/examples/requests_simpletest_cellular.py @@ -1,9 +1,11 @@ +# pylint: disable=unused-import import time import board import busio import digitalio from adafruit_fona.adafruit_fona import FONA -from adafruit_fona.adafruit_fona_gsm import GSM +from adafruit_fona.fona_3g import FONA3G +import adafruit_fona.adafruit_fona_network as network import adafruit_fona.adafruit_fona_socket as cellular_socket import adafruit_requests as requests @@ -14,26 +16,31 @@ print("GPRS secrets are kept in secrets.py, please add them there!") raise -# Create a serial connection for the FONA connection using 4800 baud. -# These are the defaults you should use for the FONA Shield. -# For other boards set RX = GPS module TX, and TX = GPS module RX pins. -uart = busio.UART(board.TX, board.RX, baudrate=4800) +# Create a serial connection for the FONA connection +uart = busio.UART(board.TX, board.RX) rst = digitalio.DigitalInOut(board.D4) -# Initialize FONA module (this may take a few seconds) +# Use this for FONA800 and FONA808 fona = FONA(uart, rst) -# initialize gsm -gsm = GSM(fona, (secrets["apn"], secrets["apn_username"], secrets["apn_password"])) +# Use this for FONA3G +# fona = FONA3G(uart, rst) -while not gsm.is_attached: +# Initialize cellular data network +network = network.CELLULAR( + fona, (secrets["apn"], secrets["apn_username"], secrets["apn_password"]) +) + +while not network.is_attached: print("Attaching to network...") time.sleep(0.5) +print("Attached!") -while not gsm.is_connected: +while not network.is_connected: print("Connecting to network...") - gsm.connect() - time.sleep(5) + network.connect() + time.sleep(0.5) +print("Network Connected!") # Initialize a requests object with a socket and cellular interface requests.set_socket(cellular_socket, fona) From 3bc075c1f4961672e73bd05596e440ccf7ebb4af Mon Sep 17 00:00:00 2001 From: brentru Date: Mon, 1 Jun 2020 16:13:31 -0400 Subject: [PATCH 2/2] put back advanced.. --- examples/requests_advanced.py | 69 ++++++++++---------------- examples/requests_advanced_cellular.py | 35 +++++++------ 2 files changed, 48 insertions(+), 56 deletions(-) diff --git a/examples/requests_advanced.py b/examples/requests_advanced.py index e54c421..d74f9af 100644 --- a/examples/requests_advanced.py +++ b/examples/requests_advanced.py @@ -1,49 +1,34 @@ -# pylint: disable=unused-import -import time import board import busio -import digitalio -from adafruit_fona.adafruit_fona import FONA -from adafruit_fona.fona_3g import FONA3G -import adafruit_fona.adafruit_fona_network as network -import adafruit_fona.adafruit_fona_socket as cellular_socket +from digitalio import DigitalInOut +import adafruit_esp32spi.adafruit_esp32spi_socket as socket +from adafruit_esp32spi import adafruit_esp32spi import adafruit_requests as requests -# Get GPRS details and more from a secrets.py file -try: - from secrets import secrets -except ImportError: - print("GPRS secrets are kept in secrets.py, please add them there!") - raise - -# Create a serial connection for the FONA connection -uart = busio.UART(board.TX, board.RX) -rst = digitalio.DigitalInOut(board.D9) - -# Use this for FONA800 and FONA808 -fona = FONA(uart, rst) - -# Use this for FONA3G -# fona = FONA3G(uart, rst) - -# Initialize cellular data network -network = network.CELLULAR( - fona, (secrets["apn"], secrets["apn_username"], secrets["apn_password"]) -) - -while not network.is_attached: - print("Attaching to network...") - time.sleep(0.5) -print("Attached!") - -while not network.is_connected: - print("Connecting to network...") - network.connect() - time.sleep(0.5) -print("Network Connected!") - -# Initialize a requests object with a socket and cellular interface -requests.set_socket(cellular_socket, fona) +# If you are using a board with pre-defined ESP32 Pins: +esp32_cs = DigitalInOut(board.ESP_CS) +esp32_ready = DigitalInOut(board.ESP_BUSY) +esp32_reset = DigitalInOut(board.ESP_RESET) + +# If you have an externally connected ESP32: +# esp32_cs = DigitalInOut(board.D9) +# esp32_ready = DigitalInOut(board.D10) +# esp32_reset = DigitalInOut(board.D5) + +spi = busio.SPI(board.SCK, board.MOSI, board.MISO) +esp = adafruit_esp32spi.ESP_SPIcontrol(spi, esp32_cs, esp32_ready, esp32_reset) + +print("Connecting to AP...") +while not esp.is_connected: + try: + esp.connect_AP(b"MY_SSID_NAME", b"MY_SSID_PASSWORD") + except RuntimeError as e: + print("could not connect to AP, retrying: ", e) + continue +print("Connected to", str(esp.ssid, "utf-8"), "\tRSSI:", esp.rssi) + +# Initialize a requests object with a socket and esp32spi interface +requests.set_socket(socket, esp) JSON_GET_URL = "http://httpbin.org/get" diff --git a/examples/requests_advanced_cellular.py b/examples/requests_advanced_cellular.py index 864cf7e..18cc600 100755 --- a/examples/requests_advanced_cellular.py +++ b/examples/requests_advanced_cellular.py @@ -1,9 +1,11 @@ +# pylint: disable=unused-import import time import board import busio import digitalio from adafruit_fona.adafruit_fona import FONA -from adafruit_fona.adafruit_fona_gsm import GSM +from adafruit_fona.fona_3g import FONA3G +import adafruit_fona.adafruit_fona_network as network import adafruit_fona.adafruit_fona_socket as cellular_socket import adafruit_requests as requests @@ -14,26 +16,31 @@ print("GPRS secrets are kept in secrets.py, please add them there!") raise -# Create a serial connection for the FONA connection using 4800 baud. -# These are the defaults you should use for the FONA Shield. -# For other boards set RX = GPS module TX, and TX = GPS module RX pins. -uart = busio.UART(board.TX, board.RX, baudrate=4800) -rst = digitalio.DigitalInOut(board.D4) +# Create a serial connection for the FONA connection +uart = busio.UART(board.TX, board.RX) +rst = digitalio.DigitalInOut(board.D9) -# Initialize FONA module (this may take a few seconds) -fona = FONA(uart, rst) +# Use this for FONA800 and FONA808 +# fona = FONA(uart, rst) -# initialize gsm -gsm = GSM(fona, (secrets["apn"], secrets["apn_username"], secrets["apn_password"])) +# Use this for FONA3G +fona = FONA3G(uart, rst) -while not gsm.is_attached: +# Initialize cellular data network +network = network.CELLULAR( + fona, (secrets["apn"], secrets["apn_username"], secrets["apn_password"]) +) + +while not network.is_attached: print("Attaching to network...") time.sleep(0.5) +print("Attached!") -while not gsm.is_connected: +while not network.is_connected: print("Connecting to network...") - gsm.connect() - time.sleep(5) + network.connect() + time.sleep(0.5) +print("Network Connected!") # Initialize a requests object with a socket and cellular interface requests.set_socket(cellular_socket, fona)