can you try changing the channel and adding the graph again.
this must be solved now mostly.
can you try changing the channel and adding the graph again.
this must be solved now mostly.
The disconnects was a Cayenne server problem and should be fixed now.
Thank you. Changing the channel helped.
But unfortunately, it looks like the Cayenne connection is still an issue. Moreover, itâs taking more time to reconnect. I need to either reset the setup I have or restart the serial monitor, where it begins to connect.
@adam
This time connecting is taking more time than expected. I donât know if Cayenne is undergoing maintenance or something, I am still facing the problem.
Here is what it looks like
glad to hear this.
sorry for the inconvenience caused. currently there are some bugs and will be sorted out soon.
Just to addâŚ
this is re-occurring after it failed to connect
seems all fine at my end. try rebooting the device.
Tried doing that. Still the same. Itâs not working out.
Noticed one more thing. I have got three analog sensorâs dataâŚI can see one Gauge for displaying analog values. but.when I am adding additional âanalogâ value widgets,⌠just after adding, the widget disappear and resets (to be added again)âŚlooks like, i canât use âGaugeâ widget again.
channel 9 and channel 10 have analog dataâŚthey WERE added first, but disappeared when "like channel 6 " was done to themâŚso this time, they are just added unable to figure out, how to represent themâŚ
@adam and @shramik_salgaonkar and @others
Is there any TEXT widgetâŚto display some text ( for example, I would like to display that the data is coming from âXYZ nodeâ⌠if you can see in the code mentioned at one or more places above
something like
Dear All,
I keep getting the same messages. Any chance there is a stability issue at the moment?
can you be more specific on what is the issue?
Hello,
I keep getting the âMQTT connect failed, error -1â messages although my SIM card has acquired an IP address form the mobile operator.
I did reset the dashboard and managed to transport data to Cayenne for one time in 50+ efforts. Now it cannot connect again
Your network service provider might be blocking the connection to the cayenne server.
Well.
This SIM a SIM the telco provider use for their own systems and is completely unblocked. I do get an IP address and I see that the offline tab in Cayenne dashboard dissapears, showing a connection is being made.
I do not get any data across I am afraid.
I also see that I get two widget names although I have setup only one
can you add a new device add new --> device/widgets --> Arduino
and add the new client id.
I have an Arduino Mega connected to a SIM808. Which version of MEGA should I choose from the topdown menu please?
does not matter, just choose anyone.
UPDATE
Connected the SERIAL connection option, the board was created and a connection to the Dashboard was achieved for 1 time. After the that the connection is being refused and I keep getting the same failure messages
can you share the code.
//#define CAYENNE_DEBUG // Uncomment to show debug messages
#define CAYENNE_PRINT Serial // Comment this out to disable prints and save space
// Uncomment your modem type:
//#define TINY_GSM_MODEM_SIM800
#define TINY_GSM_MODEM_SIM808
// #define TINY_GSM_MODEM_SIM900
// #define TINY_GSM_MODEM_UBLOX
// #define TINY_GSM_MODEM_BG96
// #define TINY_GSM_MODEM_A6
// #define TINY_GSM_MODEM_A7
// #define TINY_GSM_MODEM_M590
// #define TINY_GSM_MODEM_ESP8266
// #define TINY_GSM_MODEM_XBEE
#include <CayenneMQTTGSM.h>
#include <MPU6050_tockn.h>
#include <Wire.h>
MPU6050 mpu6050(Wire);
#define VIRTUAL_CHANNEL 2
int deg = 33 ;
// This sketch uses a software serial connection.
//#include <SoftwareSerial.h>
//SoftwareSerial gsmSerial(2, 3); // RX, TX
// If you are using a device that supports a hardware serial (Mega, Leonardo, etc.) and prefer to use
// that you can comment out the above lines and uncomment the one below.
#define gsmSerial Serial1
// GSM connection info.
char apn = âzzzzzâ; // Access point name. Leave empty if it is not needed.
char gprsLogin = ââ; // GPRS username. Leave empty if it is not needed.
char gprsPassword = ââ; // GPRS password. Leave empty if it is not needed.
char pin = ââ; // SIM pin number. Leave empty if it is not needed.
// Cayenne authentication info. This should be obtained from the Cayenne Dashboard.
char username = âxxxxxâ;
char password = âxxxxxâ;
char clientID = âxxxxxâ;
void GSM_setup() {
//Serial.begin(9600);
// Auto-detect the GSM serial baud rate. You can manually set it instead if you want to save a bit of space.
TinyGsmAutoBaud(gsmSerial);
Cayenne.begin(username, password, clientID, gsmSerial, apn, gprsLogin, gprsPassword, pin);
}
void ANGLE_setup() {
Serial.begin(9600);
Wire.begin();
mpu6050.begin();
mpu6050.calcGyroOffsets(true);
}
void GSM_loop() {
//delay(3000);
Cayenne.loop();
delay(3000);
}
void ANGLE_loop() {
mpu6050.update();
//Serial.print("angleX : â);
//Serial.print(mpu6050.getAngleX());
//Serial.print(â\tangleY : â);
//Serial.println(mpu6050.getAngleY());
Serial.print(â\tangleZ : ");
Serial.println(mpu6050.getAngleZ());
}
void setup(){
ANGLE_setup();
//delay(10000);
GSM_setup();
}
void loop() {
ANGLE_loop();
//delay(10000);
GSM_loop();
}
// Default function for sending sensor data at intervals to Cayenne.
// You can also use functions for specific channels, e.g CAYENNE_OUT(1) for sending channel 1 data.
CAYENNE_OUT_DEFAULT()
{
//Cayenne.virtualWrite(VIRTUAL_CHANNEL, mpu6050.getAngleX());
Cayenne.virtualWrite(VIRTUAL_CHANNEL, mpu6050.getAngleZ());
delay(6000);
// Write data to Cayenne here. This example just sends the current uptime in milliseconds on virtual channel 0.
//Cayenne.virtualWrite(0, millis());
//delay(3000);
// Some examples of other functions you can use to send data.
//Cayenne.celsiusWrite(1, 22.0);
//Cayenne.luxWrite(2, 700);
//Cayenne.virtualWrite(3, 50, TYPE_PROXIMITY, UNIT_CENTIMETER);
}
// Default function for processing actuator commands from the Cayenne Dashboard.
// You can also use functions for specific channels, e.g CAYENNE_IN(1) for channel 1 commands.
//CAYENNE_IN_DEFAULT()
//{
// CAYENNE_LOG(âChannel %u, value %sâ, request.channel, getValue.asString());
//Process message here. If there is an error set an error message using getValue.setError(), e.g getValue.setError(âError messageâ);
//}
can you private message me your account email id.
also there is quite a long delay period used in the code. Infact you should not use delay anywhere in the code, you need to replace it with millis if needed.