[solved] Trying the Testcode ESP32 Website stays at message Waiting for board to connect re-logged in and it worked

Hi Everybody,

I followed this tutorial

https://developers.mydevices.com/cayenne/docs/supported-hardware/#supported-hardware-microcontrollers-esp32

I have chosen ESP8266 hardware as the ESP8266 is the only one that is shown on in the choose hardwae-section

I have filled in all the credentials by careful copy & paste from the the according setup-website
- Cayenne

I uploaded this code below

/*
This example shows how to connect to Cayenne using an ESP32 and send/receive sample data.

The CayenneMQTT Library is required to run this sketch. If you have not already done so you can install it from the Arduino IDE Library Manager.

Steps:
1. If you have not already installed the ESP32 Board Package install it using the instructions here: https://github.com/espressif/arduino-esp32/blob/master/README.md#installation-instructions.
2. Select your ESP32 board from the Tools menu.
3. Set the Cayenne authentication info to match the authentication info from the Dashboard.
4. Set the network name and password.
5. Compile and upload the sketch.
6. A temporary widget will be automatically generated in the Cayenne Dashboard. To make the widget permanent click the plus sign on the widget.
*/

//#define CAYENNE_DEBUG
#define CAYENNE_PRINT Serial
#include <CayenneMQTTESP32.h>
//#include <F:\MyPortable-PRgs\arduino1.8.13\portable\sketchbook\libraries\Cayenne-MQTT-ESP-master\src\CayenneMQTTESP32.h>;

// WiFi network info.
char ssid[] = "";
char wifiPassword[] = "";

// Cayenne authentication info. This should be obtained from the Cayenne Dashboard.
char username[] = "";
char password[] = "";
char clientID[] = "";


void setup() {
  Serial.begin(115200);
  Cayenne.begin(username, password, clientID, ssid, wifiPassword);
}

void loop() {
  Cayenne.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()
{
  // Write data to Cayenne here. This example just sends the current uptime in milliseconds on virtual channel 0.
  Cayenne.virtualWrite(0, millis());
  // 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");
}

of course with all the carefully copy & pasted credentials
but the message stays at “Waiting for board to connect
As you can see here

The tutorial shows a last point:

Step 9

Once uploaded, temporary widgets for the channel 0 should now show up in the Cayenne Dashboard. You can make them permanent by clicking the plus sign.

But there is no screenshot or description how to a reach the Cayenne Dashboard.

So what additional steps do I have to make or what have I done wrong that it is not working yet?

best regards Stefan

can you add the above line in the code and share the serial monitor output.

OK here is the output of the serial monitor

15:07:27.357 -> rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
15:07:27.357 -> configsip: 0, SPIWP:0xee
15:07:27.357 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
15:07:27.357 -> mode:DIO, clock div:1
15:07:27.357 -> load:0x3fff0018,len:4
15:07:27.357 -> load:0x3fff001c,len:1216
15:07:27.357 -> ho 0 tail 12 room 4
15:07:27.357 -> load:0x40078000,len:9720
15:07:27.357 -> ho 0 tail 12 room 4
15:07:27.357 -> load:0x40080400,len:6352
15:07:27.357 -> entry 0x400806b8
15:07:28.202 -> [617] Connecting to FRITZ!Box 7490
15:07:28.715 -> [1118] Connected to WiFi
15:07:28.715 -> [1118] IP: 192.168.178.136
15:07:28.715 -> [1118] Connecting to mqtt.mydevices.com:1883
15:07:29.232 -> [1660] Connected
15:07:29.467 -> [1871] Publish: topic 4, channel 65534, value ESP32, subkey , key 
15:07:29.467 -> [1872] Publish: topic 6, channel 65534, value XtensaLX6, subkey , key 
15:07:29.467 -> [1873] Publish: topic 7, channel 65534, value 240000000, subkey , key 
15:07:29.467 -> [1879] Publish: topic 5, channel 65534, value 1.3.0, subkey , key 
15:07:29.467 -> [1885] Publish: topic 8, channel 65534, value ESP32, subkey , key 
15:07:31.480 -> [3890] Publish: topic 1, channel 0, value 3890, subkey , key 
15:07:40.475 -> [12892] Connection ok
15:07:46.459 -> [18892] Publish: topic 1, channel 0, value 18892, subkey , key 
15:07:50.481 -> [22894] Connection ok
15:08:01.492 -> [33894] Publish: topic 1, channel 0, value 33894, subkey , key 
15:08:01.492 -> [33895] Connection ok
15:08:12.473 -> [44895] Connection ok
15:08:16.459 -> [48895] Publish: topic 1, channel 0, value 48895, subkey , key 
15:08:22.467 -> [54897] Connection ok
15:08:31.482 -> [63899] Publish: topic 1, channel 0, value 63899, subkey , key 
15:08:32.470 -> [64901] Connection ok

My ESP32 seems to connect. But the question is where do I see the data-transmission in my browser?

best regards Stefan

you will see a temporary widget on channel 0 in the dashboard. you need to add it by clicking on the “+” on the top right corner.

OK I needed to login new and now it is showing the dashboard.

So as a feedback to the website-development-Team:

1.

Uh How aaawesome faaaancyyy this website is looking!!

But the most important part is missing:

the name

D A S H B O A R D

IoT is not so much about fancy looking.
It is about functionality. self-explaining functionality

2.

The tutorial should have some additional screenshots and hints if it might does not work (as in my case)
Something like:
"If you do not see a website similar to this (screenshot)
try to login new if the website showing the dashboard then appears.

3.

As this is a tutorial that demonstrates the basic functionlity
IMHO it would be good the de-comment the

#define CAYENNE_DEBUG

to give the user feedback what might be wrong.

best regards Stefan

the name of the device is shown on the right top corner.

Once connected, the dashboard shows automatically. It must be an device connection issue at your end.

Check the memory usage with and without the line. Hence we have commented it.

It is a Demo-Code so IMHO fo demonstration purposes it is OK to activate it

With debug:
Sketch uses 644182 bytes (49%) of program storage space. Maximum is 1310720 bytes.
Global variables use 39464 bytes (12%) of dynamic memory, leaving 288216 bytes for local variables. Maximum is 327680 bytes.

without debug :
Sketch uses 643794 bytes (49%) of program storage space. Maximum is 1310720 bytes.
Global variables use 39448 bytes (12%) of dynamic memory, leaving 288232 bytes for local variables. Maximum is

644182 - 643794 = 388 bytes

OK problem solved. Feedback given. I move on to the next question
best regards Stefan

A device like esp32 is okay. for other devices with less memory like Arduino Uno, the difference is huge.