1

Topic: Error Board did not connected to the cloud server

I have an Arduino mega with ESP8266 integrate in the same board
the same problem appears with another board Arduino UNO+ESP8266
When upload the code from RemoteXY the APP on Iphone works perfectly
but when add my own code appear the error "Board did not connected to the cloud server"
i don´t have problems for uploading all code(remotext+Own)
I don´t use delay()
Thanks you very much


[bcode from RemoteXY
// RemoteXY select connection mode and include library
#define REMOTEXY_MODE__ESP8266_HARDSERIAL_CLOUD
#include <RemoteXY.h>
// RemoteXY connection settings
#define REMOTEXY_SERIAL Serial
#define REMOTEXY_SERIAL_SPEED 115200
#define REMOTEXY_WIFI_SSID "DIGIFIBRA-kN73"
#define REMOTEXY_WIFI_PASSWORD "9xQGcg7uEz"
#define REMOTEXY_CLOUD_SERVER "cloud.remotexy.com"
#define REMOTEXY_CLOUD_PORT 6376
#define REMOTEXY_CLOUD_TOKEN "fe33b556a76662c782ac07bd7b6b6879"

// RemoteXY configurate 
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =   // 129 bytes
  { 255,2,0,6,0,122,0,17,0,0,0,166,1,200,126,1,1,6,0,2,
  26,15,44,22,0,2,26,31,31,79,78,0,79,70,70,0,70,174,8,18,
  18,21,1,135,2,129,26,4,36,12,17,65,80,65,71,65,82,0,71,8,
  50,84,84,56,0,2,24,75,0,0,32,193,0,0,72,66,0,0,160,65,
  0,0,32,65,0,0,0,64,24,0,10,78,12,30,30,48,4,26,31,79,
  78,0,31,79,70,70,0,72,114,38,76,76,12,2,26,140,38,0,0,0,
  0,0,0,200,66,0,0,0,0 };
 
// this structure defines all the variables and events of your control interface
struct {

    // input variables
  uint8_t switch_1; // =1 if switch ON and =0 if OFF
  uint8_t pushSwitch_1; // =1 if state is ON, else =0

    // output variables
  uint8_t led_1; // led state
  float instrument_1; // from -10 to 50
  int8_t circularbar_1; // from 0 to 100
    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0
} RemoteXY;
#pragma pack(pop)
#define PIN_SWITCH_1 13
void setup()
{
  RemoteXY_Init ();
  pinMode (PIN_SWITCH_1, OUTPUT);
}
void loop()
{
  RemoteXY_Handler ();
 
  digitalWrite(PIN_SWITCH_1, (RemoteXY.switch_1==0)?LOW:HIGH);
 
  // TODO you loop code
  // use the RemoteXY structure for data transfer
  // do not call delay(), use instead RemoteXY_delay()


}
my code:
// you can enable debug logging to Serial at 115200
//#define REMOTEXY__DEBUGLOG   

// RemoteXY select connection mode and include library
#define REMOTEXY_MODE__ESP8266_HARDSERIAL_CLOUD

#include <RemoteXY.h>

// RemoteXY connection settings
#define REMOTEXY_SERIAL Serial
#define REMOTEXY_SERIAL_SPEED 115200
#define REMOTEXY_WIFI_SSID "DIGIFIBRA-kN73"
#define REMOTEXY_WIFI_PASSWORD "9xQGcg7uEz"
#define REMOTEXY_CLOUD_SERVER "cloud.remotexy.com"
#define REMOTEXY_CLOUD_PORT 6376
#define REMOTEXY_CLOUD_TOKEN "5ba6888f6f17cee8d015cd76965dd4d3"

// RemoteXY configurate 
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =   // 367 bytes
  { 255,7,0,4,0,104,1,17,0,0,0,19,2,200,126,106,200,1,1,16,
  0,71,2,1,75,75,6,255,95,95,56,0,36,24,135,0,0,32,193,0,
  0,72,66,0,0,160,65,0,0,32,65,0,0,0,64,24,0,2,104,26,
  32,12,2,95,46,16,0,2,26,31,31,79,78,0,79,70,70,0,2,150,
  26,33,13,1,125,47,18,0,2,26,31,31,79,78,0,79,70,70,0,2,
  104,44,32,12,57,95,45,15,0,2,26,31,31,79,78,0,79,70,70,0,
  2,150,62,34,13,57,74,45,15,0,2,26,31,31,79,78,0,79,70,70,
  0,2,105,62,32,14,2,74,46,14,0,2,26,31,31,79,78,0,79,70,
  70,0,129,20,52,36,5,36,58,35,5,8,84,69,77,80,69,82,65,84,
  85,82,65,0,2,104,89,90,34,3,174,100,25,0,2,26,31,31,79,78,
  0,79,70,70,0,129,130,82,40,6,26,165,54,8,8,84,79,68,79,83,
  32,70,79,67,79,83,0,129,106,22,25,4,8,90,37,6,8,69,115,113,
  117,105,110,97,32,67,97,115,97,0,129,153,22,26,4,31,117,40,6,8,
  70,79,67,79,32,67,65,83,69,84,65,0,129,153,40,29,4,64,90,28,
  6,24,86,101,110,116,105,108,97,100,111,114,0,129,154,58,28,4,59,69,
  41,6,8,69,110,116,114,97,100,97,32,67,97,115,101,116,97,0,129,107,
  58,26,4,6,68,39,6,8,76,97,116,101,114,97,108,32,67,97,115,101,
  116,97,0,4,153,75,8,23,55,128,43,14,128,93,26,129,160,70,20,8,
  96,130,7,9,8,37,0 };
 
// this structure defines all the variables and events of your control interface
struct {

    // input variables
  uint8_t EsquinaCasa; // =1 if switch ON and =0 if OFF
  uint8_t FocoInterno; // =1 if switch ON and =0 if OFF
  uint8_t Ventilador; // =1 if switch ON and =0 if OFF
  uint8_t EntradaCaseta; // =1 if switch ON and =0 if OFF
  uint8_t LateralCaseta; // =1 if switch ON and =0 if OFF
  uint8_t TodosFocos; // =1 if switch ON and =0 if OFF
  int8_t NivelLuz; // =0..100 slider position

    // output variables
  float TemperaturaInterior; // from -10 to 50

    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0

} RemoteXY;
#pragma pack(pop)

// Sensores de Temperatura y Humedad
  #include <DHT.h>
  #include <DHT_U.h>
  #define SensorTemperaturaHumedad1 5 // Digital pin connected to the DHT sensor1
    DHT dht1(SensorTemperaturaHumedad1,DHT22);
    float TemperaturaInterior;
// Reloj
  //Pin 21 a SCL y pin 20 a SDA de arduino MEGA
  # include <Wire.h> // incluir libreria de 2 hilos
  # include <RTClib.h> // incluir libreria del reloj
  RTC_DS3231 rtc; // Definir variable rtc
  boolean Alarma =false;
  //DateTime fecha=rtc.now();
  int Ano,Mes,Dia,Hora,Minuto,Segundo;// Variables para acceder desde todos los modulos
// Entradas y Salidas
  boolean E_FocoPiscina=22,E_FocoLateralCaseta=24,E_FocoFrontalCaseta=26,
  E_FocoEsquinaCasa=28,E_FocoFachadaCasa=30,E_FocoCasaArbol=32,E_ConsumoAlto=34,E_TimbreArbol=36;//Entradas
  boolean E_PulsadorEntrada=38,E_CelulaLuminosidad=40,E_ParoBomba=42;//Entradas
  //int entradas[]={22,24,26,28,30,32}
  boolean S_ConsumoAlto=23,S_FocoEntradaFinca=25,S_PulsadorEntrada=27,S_LuzPorton=29,S_FocoEsquinaCasa=31,
  S_FocoFachadaCasa=33,S_FocoCuadroIberdrola=35,S_FocoEsquinaArboles=37;//Salidas
  boolean S_FocoColorPiscina=39,S_FocoEntradaCaseta=41,S_FocoLateralCaseta=43,S_Ventilador=45,
  S_FocoCasaArbol=47,S_TimbreCasaArbol=49,S_BombaPiscina=51;//Salidas
  boolean TodosFocosCuadro=0;// Variable que recoge cuando se encienden todos los focos
// Salida analogica de Foco Caseta
  int S_FocoCasetaPWN=3;

void setup()
{
  RemoteXY_Init ();
   
// Abrir puerto serie
  Serial.begin(115200);
// Sensores de Temperatura y Humedad 
  dht1.begin();
// Reloj 
  if(!rtc.begin()){
    Serial.println("Modulo RTC no encongtrado !");
    while (1);
  }
  rtc.adjust(DateTime(__DATE__,__TIME__));// ajuste de hora automatico el el ordenador
  //rtc.adjust(DateTime(2024,2,9,15,10,0));// ajuste de hora manual
// Entradas Salidas
  pinMode(E_FocoPiscina,INPUT);
  pinMode(E_FocoLateralCaseta,INPUT);
  pinMode(E_FocoFrontalCaseta,INPUT);
  pinMode(E_FocoEsquinaCasa,INPUT);
  pinMode(E_FocoFachadaCasa,INPUT);
  pinMode(E_FocoCasaArbol,INPUT);
  pinMode(E_ConsumoAlto,INPUT);
  pinMode(E_TimbreArbol,INPUT);
  pinMode(E_PulsadorEntrada,INPUT);
  pinMode(E_CelulaLuminosidad,INPUT);
  pinMode(E_ParoBomba,INPUT);
 
  pinMode(S_ConsumoAlto,OUTPUT);
  pinMode(S_FocoEntradaFinca,OUTPUT);
  pinMode(S_PulsadorEntrada,OUTPUT);
  pinMode(S_LuzPorton,OUTPUT);
  pinMode(S_FocoEsquinaCasa,OUTPUT);
  pinMode(S_FocoFachadaCasa,OUTPUT);
  pinMode(S_FocoCuadroIberdrola,OUTPUT);
  pinMode(S_FocoEsquinaArboles,OUTPUT);
  pinMode(S_FocoColorPiscina,OUTPUT);
  pinMode(S_FocoEntradaCaseta,OUTPUT);
  pinMode(S_FocoLateralCaseta,OUTPUT);
  pinMode(S_Ventilador,OUTPUT);
  pinMode(S_FocoCasaArbol,OUTPUT);
  pinMode(S_TimbreCasaArbol,OUTPUT);
  pinMode(S_BombaPiscina,OUTPUT);
}

void loop()
{
  RemoteXY_Handler ();
// Pasar a la APP el valor de temperatura
  RemoteXY.TemperaturaInterior=TemperaturaInterior;
// Temperatura y Humedad
    TemperaturaInterior=dht1.readTemperature();
// Reloj
  DateTime fecha=rtc.now();
  //Ano=fecha.year();
  Mes=fecha.month();
  Dia=fecha.day();
  Hora=fecha.hour();
  Minuto=fecha.minute();
  //Segundo=fecha.second();
// Variable Encender Todos Focos
  if(digitalRead(S_FocoEntradaCaseta)==1 && digitalRead(S_FocoLateralCaseta)==1
   && digitalRead(S_FocoFachadaCasa)==1 && digitalRead(S_FocoEsquinaCasa)==1){TodosFocosCuadro=1;}
  else {TodosFocosCuadro=0;}
//  SALIDAS
/*
// piscina Bomba
  // Parar bomba de piscina desde pozo por arranque de BOMBA PISCINA o desde casa por consumo electrico alto
  if (digitalRead(E_ParoBomba)==1 || digitalRead(S_ConsumoAlto)==1)
  {digitalWrite(S_BombaPiscina,HIGH);}
  else {digitalWrite(S_BombaPiscina,LOW);}
// Foco de piscina
  if (digitalRead(E_FocoPiscina)==1){digitalWrite(S_FocoColorPiscina,HIGH);}
  else {digitalWrite(S_FocoColorPiscina,LOW);}
//Timbre de pulsador entrada a Finca en Casa
    if (digitalRead(E_PulsadorEntrada)==1){digitalWrite(S_PulsadorEntrada,HIGH);}
    else{digitalWrite(S_PulsadorEntrada,LOW);}
// Foco de fachada Casa
  if((Hora==2 && Minuto==12) || digitalRead(E_FocoFachadaCasa)==1
   || RemoteXY.TodosFocos==11){digitalWrite(S_FocoFachadaCasa,HIGH);}
  else {digitalWrite(S_FocoFachadaCasa,LOW);}
// Foco Casa Arbol
  if((Hora==3 && Minuto==33) || digitalRead(E_FocoCasaArbol)==1)
  {digitalWrite(S_FocoCasaArbol,HIGH);}
  else {digitalWrite(S_FocoCasaArbol,LOW);}
// Foco esquina de los Arboles
  if((Hora==3 && Minuto==22) || TodosFocosCuadro==1 ||RemoteXY.TodosFocos==1)
  {digitalWrite(S_FocoEsquinaCasa,HIGH);}
  else {digitalWrite(S_FocoEsquinaCasa,LOW);}
// Timbre casa arbol
  if(digitalRead(E_TimbreArbol)==1){digitalWrite(S_TimbreCasaArbol,HIGH);}
  else{digitalWrite(S_TimbreCasaArbol,LOW);}
//Foco del cuadro de contadores de IBERDROLA
  if((Hora==2 && Minuto==44) || TodosFocosCuadro==1 ||RemoteXY.TodosFocos==1)
  {digitalWrite(S_FocoCuadroIberdrola,HIGH);}
  else {digitalWrite(S_FocoCuadroIberdrola,LOW);}
//Parar bomba de pozo por consumo electrico alto en casa
  if(digitalRead(E_ConsumoAlto)==1){digitalWrite(S_ConsumoAlto,HIGH);}
  else{digitalWrite(S_ConsumoAlto,LOW);}
// Salida de Foco entrada Caseta
  if ((Hora==3 && Minuto>=1) || digitalRead(E_FocoFrontalCaseta)==1 ||
  TodosFocosCuadro==1 || RemoteXY.EntradaCaseta==1 || RemoteXY.TodosFocos==1)
  {digitalWrite(S_FocoEntradaCaseta,HIGH);}
  else {digitalWrite(S_FocoEntradaCaseta,LOW);}
// Salida foco lateral mirando a Piscina
  if ((Hora==3 && Minuto>=1) || digitalRead(E_FocoLateralCaseta)==1 ||
  TodosFocosCuadro==1 || RemoteXY.LateralCaseta==1 || RemoteXY.TodosFocos==1)
  {digitalWrite(S_FocoLateralCaseta,HIGH);}
  else {digitalWrite(S_FocoLateralCaseta,LOW);}
// Salida Ventilador
  if(TemperaturaInterior<=22 && TemperaturaInterior>=10 && RemoteXY.Ventilador)
  {digitalWrite(S_Ventilador,HIGH);}
  else{digitalWrite(S_Ventilador,LOW);}
// Foco del interior encima de cuadro
    int y;
    y=map(RemoteXY.NivelLuz ,0,100,0,255);
    if(RemoteXY.FocoInterno==1){
    analogWrite(S_FocoCasetaPWN,y);}
    else{analogWrite(S_FocoCasetaPWN,0);}
// foco esquina casa
  if((Hora==4 && Minuto==22) || digitalRead(E_FocoEsquinaCasa)==1 ||TodosFocosCuadro==1
  || RemoteXY.EsquinaCasa==1 || RemoteXY.TodosFocos==1)
  {digitalWrite(S_FocoEsquinaCasa,HIGH);}
  else{digitalWrite(S_FocoEsquinaCasa,LOW);}
//Impresion(); //Esto bloquea la conexion RemoteXY
/*
  Serial.print(Ano);
  Serial.print("/");
  Serial.print(Mes);
  Serial.print("/");
  Serial.print(Dia);
  Serial.print("/");
  Serial.print(Hora);
  Serial.print("/");
  Serial.print(Minuto);
  Serial.print("/");
  Serial.print(Segundo);
  Serial.print("       ");
  Serial.print("/");
  Serial.print(TemperaturaInterior);
  Serial.println();
// Variable Encender Todos Focos
  if(digitalRead(S_FocoEntradaCaseta)==1 && digitalRead(S_FocoLateralCaseta)==1
   && digitalRead(S_FocoFachadaCasa)==1 && digitalRead(S_FocoEsquinaCasa)==1){TodosFocosCuadro=1;}
  else {TodosFocosCuadro=0;}
*/
}

2

Re: Error Board did not connected to the cloud server

You are using the Serial port for RemoteXY. However, I also see that you are also using this port for your task.

3

Re: Error Board did not connected to the cloud server

Thanks for your reply
Sorry but I'm just getting started with Arduino and RemoteXy.
Can't the serial port be used for my tasks and RemoteXY tasks?
If so, what do I have to do, remove the serial for my Tasks?
Thank you and if you have any more suggestions, don't hesitate to ask me.

4

Re: Error Board did not connected to the cloud server

You should not use the port you assigned to RemoteXY. This port is exclusively used by RemoteXY.
If you have a Mega, then connect the ESP module to any other free port (Serial1-3) and assign it to RemoteXY.
If you have a UNO, then there is only one Serial port and you cannot divide it. You can use the SoftwareSerial for ESP and RemoteXY. But the ESP runs at 115200 by default, and the SoftwareSerial maximum is 38400. You must program the ESP to run at 38400 by default.

5

Re: Error Board did not connected to the cloud server

Hello, tanks you por your previous answer
I have the arduino Mega and ESP8266 (atmega328p mcu) on the same card, therefore I do not use external connections

I have deleted all the Serial instructions from my own code and it still gives me the same error when I put my own code
When I change the speed to 38400 in the settings the same error appears even only with the RemoteXY code
The program only works well with
-115200 baud
-only remotexy code