vshymanskyy / TinyGSM

A small Arduino library for GSM modules, that just works
GNU Lesser General Public License v3.0
1.91k stars 713 forks source link

MQTT not connected- MQTT example #318

Closed martibc16 closed 4 years ago

martibc16 commented 4 years ago

What type of issues is this?

I'm trying to get the MQTT example working. Before attempting that I ran the diagnostics example. No problem there as you can see:

Wait...
Initializing modem...[11076] ### TinyGSM Version: 0.7.9
[11131] ### Modem: AT+GMM

SIMCOM SIM808
[11132] ### Modem: AT+GMM

SIMCOM SIM808
 [OK]
Modem: ATI  SIM808 R14.18
Waiting for network... [OK]
Connecting to telefonica.es [OK]
Local IP: _deleted for security_
Connecting to vsh.pp.ua [OK]
[25035] ### Available: 0 on 1
.....[25631] ### Available: 1 on 1

[25665] ### READ: 1 from 1
[25964] ### READ: 511 from 1
[27044] ### Available: 121 on 1
[27142] ### READ: 121 from 1
[27663] ### Available: 0 on 1
Server disconnected
GPRS disconnected

************************
 Received: 121 bytes
 Test:     PASSED
************************

What are you working with?

Main processor board: Arduino Mega Modem: SIM808 TinyGSM version: 0.9.7 Code:

/**************************************************************
 *
 * For this example, you need to install PubSubClient library:
 *   https://github.com/knolleary/pubsubclient
 *   or from http://librarymanager/all#PubSubClient
 *
 * TinyGSM Getting Started guide:
 *   https://tiny.cc/tinygsm-readme
 *
 * For more MQTT examples, see PubSubClient library
 *
 **************************************************************
 * Use Mosquitto client tools to work with MQTT
 *   Ubuntu/Linux: sudo apt-get install mosquitto-clients
 *   Windows:      https://mosquitto.org/download/
 *
 * Subscribe for messages:
 *   mosquitto_sub -h test.mosquitto.org -t GsmClientTest/init -t GsmClientTest/ledStatus -q 1
 * Toggle led:
 *   mosquitto_pub -h test.mosquitto.org -t GsmClientTest/led -q 1 -m "toggle"
 *
 * You can use Node-RED for wiring together MQTT-enabled devices
 *   https://nodered.org/
 * Also, take a look at these additional Node-RED modules:
 *   node-red-contrib-blynk-ws
 *   node-red-dashboard
 *
 **************************************************************/

// Select your modem:
//#define TINY_GSM_MODEM_SIM800
 #define TINY_GSM_MODEM_SIM808
// #define TINY_GSM_MODEM_SIM868
// #define TINY_GSM_MODEM_SIM900
// #define TINY_GSM_MODEM_SIM7000
// #define TINY_GSM_MODEM_UBLOX
// #define TINY_GSM_MODEM_SARAR4
// #define TINY_GSM_MODEM_M95
// #define TINY_GSM_MODEM_BG96
// #define TINY_GSM_MODEM_A6
// #define TINY_GSM_MODEM_A7
// #define TINY_GSM_MODEM_M590
// #define TINY_GSM_MODEM_MC60
// #define TINY_GSM_MODEM_MC60E
// #define TINY_GSM_MODEM_ESP8266
// #define TINY_GSM_MODEM_XBEE
// #define TINY_GSM_MODEM_SEQUANS_MONARCH

// See all AT commands, if wanted
 //#define DUMP_AT_COMMANDS

// Define the serial console for debug prints, if needed
#define TINY_GSM_DEBUG SerialMon

// Range to attempt to autobaud
#define GSM_AUTOBAUD_MIN 9600
#define GSM_AUTOBAUD_MAX 38400

// Add a reception delay, if needed
#define TINY_GSM_YIELD() { delay(2); }

// Set serial for debug console (to the Serial Monitor, default speed 115200)
#define SerialMon Serial

// Set serial for AT commands (to the module)
// Use Hardware Serial on Mega, Leonardo, Micro
#define SerialAT Serial1

// or Software Serial on Uno, Nano
//#include <SoftwareSerial.h>
//SoftwareSerial SerialAT(7, 8); // RX, TX

// Your GPRS credentials
// Leave empty, if missing user or pass
const char apn[]  = "telefonica.es";
const char user[] = "telefonica";
const char pass[] = "telefonica";

// MQTT details
const char* broker = "test.mosquitto.org";

const char* topicLed = "GsmClientTest/led";
const char* topicInit = "GsmClientTest/init";
const char* topicLedStatus = "GsmClientTest/ledStatus";

#include <TinyGsmClient.h>
#include <PubSubClient.h>

#ifdef DUMP_AT_COMMANDS
  #include <StreamDebugger.h>
  StreamDebugger debugger(SerialAT, SerialMon);
  TinyGsm modem(debugger);
#else

TinyGsm modem(SerialAT);
#endif
TinyGsmClient client(modem);
PubSubClient mqtt(client);

#define LED_PIN 13
int ledStatus = LOW;

long lastReconnectAttempt = 0;

void setup() {

  // Set console baud rate
  SerialMon.begin(115200);
  delay(10);

  // Set your reset, enable, power pins here
  pinMode(LED_PIN, OUTPUT);

  SerialMon.println("Wait...");

  // Set GSM module baud rate
  SerialAT.begin(19200);
  delay(3000);

  // Restart takes quite some time
  // To skip it, call init() instead of restart()
  SerialMon.println("Initializing modem...");
  modem.restart();
  // modem.init();

  String modemInfo = modem.getModemInfo();
  SerialMon.print("Modem: ");
  SerialMon.println(modemInfo);

  // Unlock your SIM card with a PIN
  //modem.simUnlock("1234");

#if TINY_GSM_USE_WIFI
  SerialMon.print(F("Setting SSID/password..."));
  if (!modem.networkConnect(wifiSSID, wifiPass)) {
    SerialMon.println(" fail");
    delay(10000);
    return;
  }
  SerialMon.println(" OK");
#endif

#if TINY_GSM_USE_GPRS && defined TINY_GSM_MODEM_XBEE
  // The XBee must run the gprsConnect function BEFORE waiting for network!
  modem.gprsConnect(apn, gprsUser, gprsPass);
#endif

  SerialMon.print("Waiting for network...");
  if (!modem.waitForNetwork(240000L)) {
    SerialMon.println(" fail");
    delay(10000);
    return;
  }
  SerialMon.println(" OK");

  if (modem.isNetworkConnected()) {
    SerialMon.println("Network connected");
  }

#if TINY_GSM_USE_GPRS && defined TINY_GSM_MODEM_HAS_GPRS
    SerialMon.print(F("Connecting to "));
  SerialMon.print(apn);
    if (!modem.gprsConnect(apn, gprsUser, gprsPass)) {
    SerialMon.println(" fail");
      delay(10000);
      return;
  }
  SerialMon.println(" OK");
#endif

  // MQTT Broker setup
  mqtt.setServer(broker, 1883);
  mqtt.setCallback(mqttCallback);
}

boolean mqttConnect() {
  SerialMon.print("Connecting to ");
  SerialMon.print(broker);

  // Connect to MQTT Broker
  boolean status = mqtt.connect("GsmClientTest");

  // Or, if you want to authenticate MQTT:
  //boolean status = mqtt.connect("GsmClientName", "mqtt_user", "mqtt_pass");

  if (status == false) {
    SerialMon.println(" fail");
    return false;
  }
  SerialMon.println(" OK");
  mqtt.publish(topicInit, "GsmClientTest started");
  mqtt.subscribe(topicLed);
  return mqtt.connected();
}

void loop() {

  if (!mqtt.connected()) {
    SerialMon.println("=== MQTT NOT CONNECTED ===");
    // Reconnect every 10 seconds
    unsigned long t = millis();
    if (t - lastReconnectAttempt > 10000L) {
      lastReconnectAttempt = t;
      if (mqttConnect()) {
        lastReconnectAttempt = 0;
      }
    }
    delay(100);
    return;
  }

  mqtt.loop();
}

void mqttCallback(char* topic, byte* payload, unsigned int len) {
  SerialMon.print("Message arrived [");
  SerialMon.print(topic);
  SerialMon.print("]: ");
  SerialMon.write(payload, len);
  SerialMon.println();

  // Only proceed if incoming message's topic matches
  if (String(topic) == topicLed) {
    ledStatus = !ledStatus;
    digitalWrite(LED_PIN, ledStatus);
    mqtt.publish(topicLedStatus, ledStatus ? "1" : "0");
  }
}

Scenario, steps to reproduce

Impossible to establish a connection with the MQTT server

Expected result

Actual result

This is the output of the serial with the MQTT example:

Wait...
Initializing modem...
[6744] ### TinyGSM Version: 0.7.9
[6801] ### Modem: AT+GMM

SIMCOM SIM808
[6802] ### Modem: AT+GMM

SIMCOM SIM808
Modem: ATI  SIM808 R14.18
Waiting for network... OK
Network connected
[14365] ### Available: 0 on 1
[15381] ### Unhandled: =1

ERROR
=== MQTT NOT CONNECTED ===
Connecting to test.mosquitto.org[16405] ### Available: 0 on 1
[17420] ### Unhandled: =1

ERROR
 fail
[18625] ### Available: 0 on 1
[19641] ### Unhandled: =1

ERROR
=== MQTT NOT CONNECTED ===
[20763] ### Available: 0 on 1
[21779] ### Unhandled: =1

AT command log

This is the result of the MQTT example but with the DUMP_AT_COMMANDS enabled:

Wait...
Initializing modem...
AT
AT
AT

OK
AT+CLTS=1
AT+CLTS=1
AT+CLTS=1

OK
AT&W
AT&W
AT&W

OK
AT+CFUN=0
AT+CFUN=0
AT+CFUN=0

+CPIN: NOT READY

OK
AT+CFUN=1,1
AT+CFUN=1,1
AT+CFUN=1,1

OK
[6346] ### TinyGSM Version: 0.7.9
AT
AT
AT

OK
AT&FZ
AT&FZ
AT&FZ

OK
ATE0
ATE0
ATE0

OK
AT+GMM
AT+GMM

SIMCOM_SIM808

OK
[6405] ### Modem: AT+GMM

SIMCOM SIM808
[6406] ### Modem: AT+GMM

SIMCOM SIM808
AT+CPIN?
AT+CPIN?

ERROR
AT+CPIN?

RDY

+CFUN: 1

+CPIN: SIM PIN
AT+CPIN?

+CPIN: SIM PIN

OK
ATI
ATI

SIM808 R14.18

OK
Modem: ATI  SIM808 R14.18
AT+CPIN="1384"
AT+CPIN="1384"

OK
Waiting for network...AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?

+CPIN: READY
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?

Call Ready
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?

SMS Ready
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,1

OK
 OK
AT+CREG?
AT+CREG?

+CREG: 0,1

OK
Network connected
AT+CIPRXGET=4,1
AT+CIPRXGET=4,1

ERROR
[12794] ### Available: 0 on 1
AT+CIPSTATUS=1
AT+CIPSTATUS=1

ERROR
[13811] ### Unhandled: =1

ERROR
=== MQTT NOT CONNECTED ===
Connecting to test.mosquitto.orgAT+CIPRXGET=4,1
AT+CIPRXGET=4,1

ERROR
[14834] ### Available: 0 on 1
AT+CIPSTATUS=1
AT+CIPSTATUS=1

ERROR
[15852] ### Unhandled: =1

ERROR
AT+CIPCLOSE=1,1
AT+CIPCLOSE=1,1

ERROR
AT+CIPSSL=0
AT+CIPSSL=0

OK
AT+CIPSTART=1,"TCP","test.mosquitto.org",1883
AT+CIPSTART=1,"TCP","test.mosquitto.org",1883

ERROR
 fail
AT+CIPRXGET=4,1
AT+CIPRXGET=4,1

ERROR
[17058] ### Available: 0 on 1
AT+CIPSTATUS=1
AT+CIPSTATUS=1

ERROR
[18076] ### Unhandled: =1

ERROR
=== MQTT NOT CONNECTED ===
AT+CIPRXGET=4,1
AT+CIPRXGET=4,1

ERROR
[19196] ### Available: 0 on 1
AT+CIPSTATUS=1
AT+CIPSTATUS=1

ERROR
[20213] ### Unhandled: =1

ERROR
SRGDamia1 commented 4 years ago

You don't have any AT commands in your log. Did you maybe paste in the same thing twice? It's really hard to see what's happening without that.

martibc16 commented 4 years ago

You are totally right, I didn't pase correctly. I've edited my original message to avoid confussion, I think that all the AT commands are showed

martibc16 commented 4 years ago

Looking at the AT+CREG comand it seems like the first number of the response indicates the registration status. 0 is for not registered; could be this the problem?

martibc16 commented 4 years ago

To see if it was MQTT's faul I tested the HTTP test with similar results.

Wait...
Initializing modem...
AT
AT
AT

OK
AT+CLTS=1
AT+CLTS=1
AT+CLTS=1

OK
AT&W
AT&W
AT&W

OK
AT+CFUN=0
AT+CFUN=0
AT+CFUN=0

+CPIN: NOT READY

OK
AT+CFUN=1,1
AT+CFUN=1,1
AT+CFUN=1,1

OK
AT
AT
AT

OK
AT&FZ
AT&FZ
AT&FZ

OK
ATE0
ATE0
ATE0

OK
AT+CPIN?
AT+CPIN?

ERROR
AT+CPIN?

RDY

+CFUN: 1

+CPIN: SIM PIN
AT+CPIN?

+CPIN: SIM PIN

OK
ATI
ATI

SIM808 R14.18

OK
Modem: ATI  SIM808 R14.18
Waiting for network...AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,2

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
 fail
Waiting for network...AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

OK
AT+CREG?
AT+CREG?

+CREG: 0,0

Note that just before running this sketch I successfully ran the diagnostics test. And if I recall corretly this test uses an internet connection; so I don't understand why on the other tests it can't connect to the internet

SRGDamia1 commented 4 years ago

When you modified the MQTT example as you posted above, you removed the line #define TINY_GSM_USE_GPRS true (line 75ish in the example). Without that define, the code wasn't running the function to connect to GPRS, which is why your connection failed. It took me a few passes over your code to catch that.

In the most recent post, as you saw, you're not successfully registering on the network. That part should happen automatically even before connecting to GPRS. It did happen in the output you posted from the MQTT test (you got a CREG = 0,1 in that). I don't know why it would register on the network in one test and not in another. Are you in a poor service area? Are your power and antenna connections solid?

Your post from the HTTP example didn't look suspicious (other than not connecting) but the MQTT output you posted has something odd going on with your module. Even though the echo should be turned off, it was echoing all commands. Some of them are echoed multiple times.

martibc16 commented 4 years ago

When you modified the MQTT example as you posted above, you removed the line #define TINY_GSM_USE_GPRS true (line 75ish in the example). Without that define, the code wasn't running the function to connect to GPRS, which is why your connection failed. It took me a few passes over your code to catch that.

In the most recent post, as you saw, you're not successfully registering on the network. That part should happen automatically even before connecting to GPRS. It did happen in the output you posted from the MQTT test (you got a CREG = 0,1 in that). I don't know why it would register on the network in one test and not in another. Are you in a poor service area? Are your power and antenna connections solid?

Your post from the HTTP example didn't look suspicious (other than not connecting) but the MQTT output you posted has something odd going on with your module. Even though the echo should be turned off, it was echoing all commands. Some of them are echoed multiple times.

It's not that I deleted. This line doesn't appear on the MQTT example. In Arduino IDE I've openend that example sketch and using Control+F didn't show that line. Furthermore, adding this line to the code throws this error:

src\main.cpp:169:33: error: 'gprsUser' was not declared in this scope
src\main.cpp:169:43: error: 'gprsPass' was not declared in this scope

It's refering to this lines (which makes sense now that GPRS is set to true):

#if TINY_GSM_USE_GPRS && defined TINY_GSM_MODEM_HAS_GPRS
    SerialMon.print(F("Connecting to "));
  SerialMon.print(apn);
    if (!modem.gprsConnect(apn, gprsUser, gprsPass)) {
    SerialMon.println(" fail");
      delay(10000);
      return;
  }
  SerialMon.println(" OK");
#endif

As for the signal I'm trying this in a populated area. Running the all_functions.ino gives a signal quality of 7

The antena is attached via a SMA connector and I'm using a 5V 2A power supply (the module I'm using has voltage regulator).

By the way, the all_functions example does say I'm connected via GPRS and gives me an IP. However, the CCID and IMEI are not provided by the serial (don't know if it's normal)

martibc16 commented 4 years ago

It's working. The error was simply corrected by changing the variable names of user to gprsUser and pass to gprsPass in the declaration of variables (line 81ish)

This is the output now (supose now it's working?)

Wait...
Initializing modem...
[6343] ### TinyGSM Version: 0.9.7
[6401] ### Modem: AT+GMM

SIMCOM SIM808
[6402] ### Modem: AT+GMM

SIMCOM SIM808
Modem: ATI  SIM808 R14.18
Waiting for network... OK
Network connected
Connecting to telefonica.es OK
[19953] ### Available: 0 on 1
=== MQTT NOT CONNECTED ===
Connecting to broker.hivemq.com[20758] ### Available: 0 on 1
[21128] ### Got Data: 1
[21166] ### Available: 4 on 1
[21199] ### READ: 4 from 1
 OK
[21311] ### Available: 0 on 1
[21664] ### Got Data: 1
[21701] ### Available: 5 on 1
[21737] ### READ: 5 from 1
[21812] ### Available: 0 on 1
[22313] ### Available: 0 on 1
[22815] ### Available: 0 on 1
[23317] ### Available: 0 on 1
[23818] ### Available: 0 on 1
[24320] ### Available: 0 on 1
[24821] ### Available: 0 on 1
[25323] ### Available: 0 on 1
[25824] ### Available: 0 on 1
[26326] ### Available: 0 on 1
[26827] ### Available: 0 on 1
[27328] ### Available: 0 on 1
[27830] ### Available: 0 on 1
[28332] ### Available: 0 on 1
[28833] ### Available: 0 on 1
[29334] ### Available: 0 on 1
[29836] ### Available: 0 on 1
[30338] ### Available: 0 on 1
[30836] ### Available: 0 on 1
[31340] ### Available: 0 on 1
[31842] ### Available: 0 on 1
[32343] ### Available: 0 on 1
[32844] ### Available: 0 on 1
[33346] ### Available: 0 on 1
[33847] ### Available: 0 on 1
[34347] ### Available: 0 on 1
[34850] ### Available: 0 on 1
[35351] ### Available: 0 on 1
[35853] ### Available: 0 on 1
[36353] ### Available: 0 on 1
[36856] ### Available: 0 on 1
[37089] ### Got Data: 1
[37127] ### Available: 2 on 1
[37159] ### READ: 2 from 1
[37359] ### Available: 0 on 1
[37859] ### Available: 0 on 1
[38362] ### Available: 0 on 1
[38861] ### Available: 0 on 1
[39362] ### Available: 0 on 1
[39864] ### Available: 0 on 1
[40366] ### Available: 0 on 1
[40867] ### Available: 0 on 1
[41368] ### Available: 0 on 1
[41870] ### Available: 0 on 1
[42372] ### Available: 0 on 1
[42873] ### Available: 0 on 1
[43372] ### Available: 0 on 1
[43876] ### Available: 0 on 1
[44378] ### Available: 0 on 1
[44878] ### Available: 0 on 1
[45382] ### Available: 0 on 1
[45884] ### Available: 0 on 1
[46386] ### Available: 0 on 1
[46886] ### Available: 0 on 1
[47388] ### Available: 0 on 1
[47889] ### Available: 0 on 1
[48389] ### Available: 0 on 1
[48891] ### Available: 0 on 1
[49395] ### Available: 0 on 1
[49897] ### Available: 0 on 1
[50397] ### Available: 0 on 1
[50899] ### Available: 0 on 1
[51401] ### Available: 0 on 1
[51903] ### Available: 0 on 1
[52098] ### Got Data: 1
[52136] ### Available: 2 on 1
[52174] ### READ: 2 from 1
[52405] ### Available: 0 on 1
[52904] ### Available: 0 on 1
[53408] ### Available: 0 on 1
[53909] ### Available: 0 on 1
[54408] ### Available: 0 on 1
[54909] ### Available: 0 on 1
[55412] ### Available: 0 on 1
[55913] ### Available: 0 on 1
[56415] ### Available: 0 on 1
[56916] ### Available: 0 on 1
[57415] ### Available: 0 on 1
[57921] ### Available: 0 on 1
[58423] ### Available: 0 on 1
[58924] ### Available: 0 on 1
[59423] ### Available: 0 on 1
[59927] ### Available: 0 on 1
[60428] ### Available: 0 on 1
[60928] ### Available: 0 on 1
[61431] ### Available: 0 on 1
[61932] ### Available: 0 on 1
[62434] ### Available: 0 on 1
[62935] ### Available: 0 on 1
[63436] ### Available: 0 on 1
[63938] ### Available: 0 on 1
[64437] ### Available: 0 on 1
[64941] ### Available: 0 on 1
[65442] ### Available: 0 on 1
[65943] ### Available: 0 on 1
[66443] ### Available: 0 on 1
[66947] ### Available: 0 on 1
[67172] ### Got Data: 1
[67211] ### Available: 2 on 1
[67248] ### READ: 2 from 1
[67448] ### Available: 0 on 1
[67950] ### Available: 0 on 1
[68452] ### Available: 0 on 1
[68954] ### Available: 0 on 1
[69455] ### Available: 0 on 1
[69956] ### Available: 0 on 1
[70458] ### Available: 0 on 1
[70960] ### Available: 0 on 1
[71461] ### Available: 0 on 1
[71962] ### Available: 0 on 1
[72464] ### Available: 0 on 1
[72966] ### Available: 0 on 1
[73464] ### Available: 0 on 1
[73970] ### Available: 0 on 1
[74471] ### Available: 0 on 1
[74973] ### Available: 0 on 1
[75474] ### Available: 0 on 1
[75975] ### Available: 0 on 1
[76479] ### Available: 0 on 1
[76981] ### Available: 0 on 1
[77481] ### Available: 0 on 1
[77983] ### Available: 0 on 1
[78483] ### Available: 0 on 1
[78986] ### Available: 0 on 1
[79488] ### Available: 0 on 1
[79989] ### Available: 0 on 1
[80488] ### Available: 0 on 1
[80992] ### Available: 0 on 1
[81494] ### Available: 0 on 1
[81994] ### Available: 0 on 1
[82222] ### Got Data: 1
[82262] ### Available: 2 on 1
[82294] ### READ: 2 from 1
[82498] ### Available: 0 on 1
[83000] ### Available: 0 on 1
[83502] ### Available: 0 on 1
[84003] ### Available: 0 on 1
[84505] ### Available: 0 on 1
[85007] ### Available: 0 on 1
[85509] ### Available: 0 on 1
[86009] ### Available: 0 on 1
[86513] ### Available: 0 on 1
[87015] ### Available: 0 on 1
[87514] ### Available: 0 on 1
[88017] ### Available: 0 on 1
[88518] ### Available: 0 on 1
[89022] ### Available: 0 on 1
[89522] ### Available: 0 on 1
[90024] ### Available: 0 on 1
[90526] ### Available: 0 on 1
[91028] ### Available: 0 on 1
[91529] ### Available: 0 on 1
[92030] ### Available: 0 on 1
[92532] ### Available: 0 on 1
[93031] ### Available: 0 on 1
[93535] ### Available: 0 on 1
[94036] ### Available: 0 on 1
[94535] ### Available: 0 on 1
[95039] ### Available: 0 on 1
[95541] ### Available: 0 on 1
[96043] ### Available: 0 on 1
[96542] ### Available: 0 on 1
[97045] ### Available: 0 on 1
[97250] ### Got Data: 1
[97291] ### Available: 2 on 1
[97327] ### READ: 2 from 1
[97548] ### Available: 0 on 1
[98051] ### Available: 0 on 1
[98550] ### Available: 0 on 1
[99052] ### Available: 0 on 1
[99554] ### Available: 0 on 1
[100056] ### Available: 0 on 1
[100556] ### Available: 0 on 1
[101060] ### Available: 0 on 1
[101562] ### Available: 0 on 1
[102064] ### Available: 0 on 1
[102565] ### Available: 0 on 1
[103066] ### Available: 0 on 1
[103566] ### Available: 0 on 1
[104070] ### Available: 0 on 1
[104570] ### Available: 0 on 1
[105072] ### Available: 0 on 1
[105574] ### Available: 0 on 1
[106075] ### Available: 0 on 1
[106576] ### Available: 0 on 1
[107078] ### Available: 0 on 1
[107579] ### Available: 0 on 1
[108081] ### Available: 0 on 1
[108580] ### Available: 0 on 1
[109083] ### Available: 0 on 1
[109587] ### Available: 0 on 1
[110089] ### Available: 0 on 1
[110588] ### Available: 0 on 1
[111091] ### Available: 0 on 1
[111595] ### Available: 0 on 1
[112097] ### Available: 0 on 1
[112399] ### Got Data: 1
[112440] ### Available: 2 on 1
[112477] ### READ: 2 from 1
[112601] ### Available: 0 on 1
[113100] ### Available: 0 on 1
[113602] ### Available: 0 on 1
[114105] ### Available: 0 on 1
[114605] ### Available: 0 on 1
[115106] ### Available: 0 on 1
[115608] ### Available: 0 on 1
[116110] ### Available: 0 on 1
[116611] ### Available: 0 on 1
[117112] ### Available: 0 on 1
[117612] ### Available: 0 on 1
[118116] ### Available: 0 on 1
[118617] ### Available: 0 on 1
[119120] ### Available: 0 on 1
[119617] ### Available: 0 on 1
[120121] ### Available: 0 on 1
[120623] ### Available: 0 on 1
[121123] ### Available: 0 on 1
[121625] ### Available: 0 on 1
[122127] ### Available: 0 on 1
[122629] ### Available: 0 on 1
[123130] ### Available: 0 on 1
[123632] ### Available: 0 on 1
[124133] ### Available: 0 on 1
[124633] ### Available: 0 on 1
[125136] ### Available: 0 on 1
[125637] ### Available: 0 on 1
[126139] ### Available: 0 on 1
[126639] ### Available: 0 on 1
[127142] ### Available: 0 on 1
[127372] ### Got Data: 1
[127411] ### Available: 2 on 1
[127450] ### READ: 2 from 1
[127647] ### Available: 0 on 1
[128147] ### Available: 0 on 1
[128649] ### Available: 0 on 1
[129152] ### Available: 0 on 1
[129650] ### Available: 0 on 1
[130154] ### Available: 0 on 1
[130657] ### Available: 0 on 1
[131155] ### Available: 0 on 1
[131657] ### Available: 0 on 1
[132159] ### Available: 0 on 1
[132661] ### Available: 0 on 1
[133161] ### Available: 0 on 1
[133661] ### Available: 0 on 1
[134165] ### Available: 0 on 1
[134666] ### Available: 0 on 1
[135168] ### Available: 0 on 1
[135669] ### Available: 0 on 1
[136170] ### Available: 0 on 1
[136672] ### Available: 0 on 1
[137171] ### Available: 0 on 1
[137674] ### Available: 0 on 1
[138178] ### Available: 0 on 1
[138678] ### Available: 0 on 1
[139181] ### Available: 0 on 1
[139682] ### Available: 0 on 1
[140186] ### Available: 0 on 1
[140685] ### Available: 0 on 1
[141189] ### Available: 0 on 1
[141690] ### Available: 0 on 1
[142191] ### Available: 0 on 1
[142660] ### Got Data: 1
[142700] ### Available: 2 on 1
[142733] ### READ: 2 from 1
[143202] ### Available: 0 on 1
[143704] ### Available: 0 on 1
[144207] ### Available: 0 on 1
[144707] ### Available: 0 on 1
[145209] ### Available: 0 on 1
[145711] ### Available: 0 on 1
[146211] ### Available: 0 on 1
[146716] ### Available: 0 on 1
[147215] ### Available: 0 on 1
[147717] ### Available: 0 on 1
[148218] ### Available: 0 on 1
[148719] ### Available: 0 on 1
[149221] ### Available: 0 on 1
[149721] ### Available: 0 on 1
[150223] ### Available: 0 on 1
[150727] ### Available: 0 on 1
[151229] ### Available: 0 on 1
[151730] ### Available: 0 on 1
[152231] ### Available: 0 on 1
[152733] ### Available: 0 on 1
[153235] ### Available: 0 on 1
[153737] ### Available: 0 on 1
[154237] ### Available: 0 on 1
[154737] ### Available: 0 on 1
[155241] ### Available: 0 on 1
[155743] ### Available: 0 on 1
[156243] ### Available: 0 on 1
[156743] ### Available: 0 on 1
[157248] ### Available: 0 on 1
[157473] ### Got Data: 1
[157513] ### Available: 2 on 1
[157546] ### READ: 2 from 1
[157752] ### Available: 0 on 1
[158252] ### Available: 0 on 1
[158754] ### Available: 0 on 1
[159255] ### Available: 0 on 1
[159757] ### Available: 0 on 1
[160259] ### Available: 0 on 1
[160761] ### Available: 0 on 1
[161263] ### Available: 0 on 1
[161765] ### Available: 0 on 1
[162267] ### Available: 0 on 1
[162768] ### Available: 0 on 1
[163269] ### Available: 0 on 1
[163769] ### Available: 0 on 1
[164273] ### Available: 0 on 1

However, I didn't change that so I supose the example is incorrect because it lacks the line #define TINY_GSM_USE_GPRS true and because there is a little mess with the variable names for the user and password

SRGDamia1 commented 4 years ago

What?

But that line is there: https://github.com/vshymanskyy/TinyGSM/blob/f0dd33ffe32ae46b9378efa02112e7d75e0739d1/examples/MqttClient/MqttClient.ino#L75

And the variable names are correct: https://github.com/vshymanskyy/TinyGSM/blob/f0dd33ffe32ae46b9378efa02112e7d75e0739d1/examples/MqttClient/MqttClient.ino#L84

martibc16 commented 4 years ago

What?

But that line is there:

https://github.com/vshymanskyy/TinyGSM/blob/f0dd33ffe32ae46b9378efa02112e7d75e0739d1/examples/MqttClient/MqttClient.ino#L75

And the variable names are correct:

https://github.com/vshymanskyy/TinyGSM/blob/f0dd33ffe32ae46b9378efa02112e7d75e0739d1/examples/MqttClient/MqttClient.ino#L84

Wow, sorry. My library isn't like that but I supose (as it was updated 13 days ago) that I don't have the library updated.

Edit: yes, I can confirm that my library wasn't updated.

Thank you very much

SRGDamia1 commented 4 years ago

Your print out shows you have TinyGSM version 0.9.7. When did you download the examples?

SRGDamia1 commented 4 years ago

You know.. I think the Arduino IDE pulls from the "Releases" and there hasn't been a release in a while. The example was wrong in the last release. I seems like the IDE pulled the most recent library version, but not the most current examples. I will put out a new release so hopefully this doesn't happen again.

martibc16 commented 4 years ago

Your print out shows you have TinyGSM version 0.9.7. When did you download the examples?

I would say a month ago. But I downloaded from the Arduino IDE. For the next time I will always download libraries from github directly just in case :)

You know.. I think the Arduino IDE pulls from the "Releases" and there hasn't been a release in a while. The example was wrong in the last release. I seems like the IDE pulled the most recent library version, but not the most current examples. I will put out a new release so hopefully this doesn't happen again. Great!!

One last question to make sure it's working. Using the test.mosquitto.org broker should I expect callbacks? Bceause this is what I recieve over and over with the MQTT example:

Wait...
Initializing modem...
[6343] ### TinyGSM Version: 0.9.7
[6401] ### Modem: AT+GMM

SIMCOM SIM808
[6402] ### Modem: AT+GMM

SIMCOM SIM808
Modem: ATI  SIM808 R14.18
Waiting for network... OK
Network connected
Connecting to telefonica.es OK
[19704] ### Available: 0 on 1
=== MQTT NOT CONNECTED ===
Connecting to test.mosquitto.org[20515] ### Available: 0 on 1
[20719] ### Got Data: 1
[20756] ### Available: 4 on 1
[20789] ### READ: 4 from 1
 OK
[21056] ### Available: 0 on 1
[21154] ### Got Data: 1
[21193] ### Available: 5 on 1
[21230] ### READ: 5 from 1
[21556] ### Available: 0 on 1
[22057] ### Available: 0 on 1
[22560] ### Available: 0 on 1
[23062] ### Available: 0 on 1
[23564] ### Available: 0 on 1
[24065] ### Available: 0 on 1
[24566] ### Available: 0 on 1
[25068] ### Available: 0 on 1
[25570] ### Available: 0 on 1
[26072] ### Available: 0 on 1
[26572] ### Available: 0 on 1
[27078] ### Available: 0 on 1
[27578] ### Available: 0 on 1
[28077] ### Available: 0 on 1
[28580] ### Available: 0 on 1
[29082] ### Available: 0 on 1
[29584] ### Available: 0 on 1
[30083] ### Available: 0 on 1
[30586] ### Available: 0 on 1
[31088] ### Available: 0 on 1
[31589] ### Available: 0 on 1
[32091] ### Available: 0 on 1
[32591] ### Available: 0 on 1
[33095] ### Available: 0 on 1
[33597] ### Available: 0 on 1
[34098] ### Available: 0 on 1
[34599] ### Available: 0 on 1
[35099] ### Available: 0 on 1
[35602] ### Available: 0 on 1
[36104] ### Available: 0 on 1
[36581] ### Got Data: 1
[36622] ### Available: 2 on 1
[36658] ### READ: 2 from 1
[37121] ### Available: 0 on 1
SRGDamia1 commented 4 years ago

You'll only activate the call-back if you use another tool to publish a 0 or 1 to GsmClientTest/led, then you should see the LED change and the a new message published with the current status at GsmClientTest/ledStatus.

I've also had much better luck with broker.hivemq.com than with test.mosquitto.org. If you use broker.hivemq.com you can use their web tool http://www.hivemq.com/demos/websocket-client/ to send the messages to your board and see the call back.

SRGDamia1 commented 4 years ago

Also, if everything is working, could you close this issue?