Sodaq2GBeeR6 class

The loggerModem subclass for the Sodaq 2GBee revisions 6 and higher based on the SIMCOM SIM800H.

Base classes

class SIMComSIM800
The loggerModem subclass for the Adafruit Fona 2G, the Sodaq GPRSBeeR4 and almost any other module based on the SIMCOM SIM800 or SIM900 modules andthier variants".

Constructors, destructors, conversion operators

Sodaq2GBeeR6(Stream* modemStream, int8_t powerPin, int8_t statusPin, const char* apn)
Construct a new Sodaq 2GBee R6 object.
Sodaq2GBeeR6(Stream* modemStream, int8_t vRefPin, int8_t statusPin, int8_t powerPin, const char* apn)
Construct a new Sodaq 2GBee R6 object.
~Sodaq2GBeeR6()
Destroy the Sodaq 2GBee R6 object - no action taken.

Public functions

void setVRefPin(int8_t vRefPin)
Sets the pin to use to control voltage reference on the GPRSBee.

Protected functions

bool modemSleepFxn(void) -> bool override
Perform the parts of the modem sleep process that are unique to a specific module, as opposed to the parts of setup that are common to all modem modules.
bool modemWakeFxn(void) -> bool override
Perform the parts of the modem wake up process that are unique to a specific module, as opposed to the parts of setup that are common to all modem modules.
bool extraModemSetup(void) -> bool override
Perform the parts of the modem set up process that are unique to a specific module, as opposed to the parts of setup that are common to all modem modules.

Function documentation

Sodaq2GBeeR6::Sodaq2GBeeR6(Stream* modemStream, int8_t powerPin, int8_t statusPin, const char* apn)

Construct a new Sodaq 2GBee R6 object.

Parameters
modemStream The Arduino stream instance for serial communication.
powerPin The digital pin number of the mcu pin controlling power to the modem (active HIGH).
statusPin The digital pin number of the mcu pin connected to the modem status output pin.
apn The Access Point Name (APN) for the SIM card.

The constuctor initializes all of the provided member variables, constructs a loggerModem parent class with the appropriate timing for the module, calls the constructor for a TinyGSM modem on the provided modemStream, and creates a TinyGSM Client linked to the modem.

Should be set to a negative number if the modem should be continuously powered or the power cannot be controlled by the MCU. Should be set to a negative number if the modem status pin cannot be read. This is the pin labeled STATUS in Sodaq (and SIMCom)'s documentation.


Sodaq2GBeeR6::Sodaq2GBeeR6(Stream* modemStream, int8_t vRefPin, int8_t statusPin, int8_t powerPin, const char* apn)

Construct a new Sodaq 2GBee R6 object.

Parameters
modemStream The Arduino stream instance for serial communication.
vRefPin The digital pin number of a pin on the mcu controlling the voltage reference (pin 1) for the GPRSBee
statusPin The digital pin number of the mcu pin connected to the modem status output pin.
powerPin The digital pin number of the mcu pin controlling power to the modem (active HIGH).
apn The Access Point Name (APN) for the SIM card.

The constuctor initializes all of the provided member variables, constructs a loggerModem parent class with the appropriate timing for the module, calls the constructor for a TinyGSM modem on the provided modemStream, and creates a TinyGSM Client linked to the modem.

Should be set to a negative number if the modem status pin cannot be read. This is the pin labeled STATUS in Sodaq (and SIMCom)'s documentation. Should be set to a negative number if the modem should be continuously powered or the power cannot be controlled by the MCU.


void Sodaq2GBeeR6::setVRefPin(int8_t vRefPin)

Sets the pin to use to control voltage reference on the GPRSBee.

Parameters
vRefPin The pin on the MCU controlling the VREF pin on the GPRSBee (bee pin 1).

bool Sodaq2GBeeR6::modemSleepFxn(void) override protected

Perform the parts of the modem sleep process that are unique to a specific module, as opposed to the parts of setup that are common to all modem modules.

Returns bool True if the unique part of the sleep function ran sucessfully.

bool Sodaq2GBeeR6::modemWakeFxn(void) override protected

Perform the parts of the modem wake up process that are unique to a specific module, as opposed to the parts of setup that are common to all modem modules.

Returns bool True if the unique part of the wake function ran sucessfully - does NOT indicate that the modem is now responsive.

bool Sodaq2GBeeR6::extraModemSetup(void) override protected

Perform the parts of the modem set up process that are unique to a specific module, as opposed to the parts of setup that are common to all modem modules.

Returns bool True if the extra setup succeeded.

For most modules, this function is created by the MS_MODEM_EXTRA_SETUP macro which runs the TinyGSM modem init() and client init() functions.