This library provides a toolkit for interacting with the official Arduino 4G Modules (EMEA and Global Versions) on using the Portenta Mid Carrier and Portenta H7 or C33 boards. It allows you to connect to the internet, send and receive SMS messages, and get location from the cellular network or GPS.
Note
GPS/GNSS functionality is only supported on the Global Versions version of the modem.
- DeleteSMS - Example that shows how to delete SMS.
- GetLocation - Shows how to get the current GPS location. (Supported on the Global Version)
- GetTime - Use GPS to acquire the time of the device. (Supported on the Global Version)
- HTTPClient - Example of using this library together with ArduinoHttpClient to connect to a web server
- HTTPSClient - Example of using this library together with ArduinoHttpClient that uses BearSSL under the hood to create a secure connection to a web server
- ModemTerminal - A handy example for debugging and Testing AT commands
- ReceiveSMS - Example for the SMS sending and receiving functionality
- SendSMS - Shows how to send an SMS
- Fast 4G connection to the internet
- Secure SSL connections with BearSSL
- Get location using GPS or GSM
- Synchronise time with the cell provider
- Send and Receive SMS Messages
-
Insert a nano SIM card in the PCIE_SIM connector on the Arduino Portenta Mid Carrier.
-
Connect the Serial (J17) to the adjacent PCIE Breakout Pins (J16) with jumpers included in the Portenta Mid Carrier:
Serial 1 (J17) PCIE Breakout (J16) RX (Pin 1) CK_N (Pin 1) TX (Pin 2) CK_P (Pin 3) RTS (Pin 3) RX_N (Pin 5) CTS (Pin 4) RX_P (Pin 7) mPCIE_GPIO_RST (Pin 5) mPCIE_RST (Pin 9) -
On J9, using jumpers connect the following pins:
Source (J9) Buck Converter (J9) 3V3 PCIE (Pin 1) 3V3 BUCK (Pin 3) OUT VCC (Pin 2) 3V3 BUCK EN (Pin 4) -
Insert the Arduino Pro 4G Module in the Arduino Portenta Mid Carrier.
-
Screw one black post with a white nut from under the Portenta Mid Carrier. Using another black post, screw the board to the post. Place two washers on top, and one underneath the Pro 4G Module. So that the board is fixed to the post snuggly and horizontally.
-
(EMEA and GNSS variants) Connect the cellular antenna (flat antenna in Arduino Pro 4G Module Antennas Kit) to the left microUFL connector marked MAIN.
-
(PRO 4G GNSS only) Connect the GNSS antenna (square antenna in Arduino Pro 4G Module Antennas Kit) to the middle microUFL connector marked GNSS.
-
Insert a Portenta C33 or Portenta H7 Board into the marked location. The USB-C port of the Portenta board should be next to the Ethernet port on the Mid Carrier.
-
Insert a Terminal Block 2-pin > DC female adapter into the screw terminal (J4). Ensure that the negative (-) pin is connected to GND.
-
Use a 5V adapter that can output at least 3A and connect it to the DC female adapter.
-
Connect the Portenta board to your computer using a USB-C cable.
-
Install the
Arduino_Cellular
library and its dependencies -
Obtain the APN (Access Point Name) settings from your network operator and add them to the
arduino_secrets.h
file for each sketch. For example:#define SECRET_PINNUMBER "" // replace with your SIM card PIN #define SECRET_GPRS_APN "services.telenor.se" // replace with your GPRS APN #define SECRET_GPRS_LOGIN "" // replace with your GPRS login #define SECRET_GPRS_PASSWORD "" // replace with your GPRS password
-
Upload sketch to the Portenta board. Enjoy!
- This library is designed to be used with the the official Arduino 4G Modules EMEA and Global Versions
- GPS/GNSS functionality is only supported on the Global Version
- This library compiles on the Portenta C33, Portenta H7, H7 Lite, and H7 Lite Connected used in conjunction with the Portenta Mid Carrier. Any other configuration is not supported by this library.
- Even though these Modules are PCIE devices and would physically fit on the Portenta Max Carrier, we do not support this configuration with the Arduino_Cellular library. But the Portenta Max Carrier has a SARA-R412M-02B cellular modem already.
- None of the library examples compile with the Portenta X8. The X8 handles the cellular connectivity in the Yocto Linux layer.
For more information about this library please read the documentation here.