SparkFun Thing Plus - Sending Sensor Data Over WiFi Issues

I’ve been trying to work with one of SparkFun’s tutorials:

Sending Sensor Data Over WiFi

Using the SparkFun Thing Plus - ESP32 WROOM (USB-C)

Located at:

https://learn.sparkfun.com/tutorials/se … -over-wifi

With Arduino IDE 2.3.2, and working with ‘Full Receiver Code’ in the tutorial, I get the following error:

129 | esp_now_register_recv_cb(OnDataRecv);

| ^~~~~~~~~~

| |

| void ()(const uint8_t, const uint8_t*, int) {aka void ()(const unsigned char, const unsigned char*, int)}

156 | esp_err_t esp_now_register_recv_cb(esp_now_recv_cb_t cb);

| ~~~~~~~~~~~~~~~~~~^~

Compilation error: invalid conversion from ‘void ()(const uint8_t, const uint8_t*, int)’ {aka ‘void ()(const unsigned char, const unsigned char*, int)’} to ‘esp_now_recv_cb_t’ {aka ‘void ()(const esp_now_recv_info, const unsigned char*, int)’} [-fpermissive]

The error appears to be associated with line 77 in the program:

esp_now_register_recv_cb(OnDataRecv);

The issue occus when esp32, version 3.0.0-a, is installed in the Boards Manager.

When reverting back to esp32, version 2.0.14, everything works just fine.

Using:

Arduino IDE: 2.3.2

Board: SparkFun Thing Plus - ESP32 WROOM (USB-C)

Any suggestions on how to correct this?

Thank you

use the ESP32 2.0.14 library. I found that it is much more up-to-date and supports the Sparkfun boards.

Thank you for the response, Paul,

Yes, i’m using ESP32 2.0.14 library. The only SparkFun board it doesn’t support is the ESP32 Pocket Development Board.

I do have another question on a SparkFun tutorial:

https://learn.sparkfun.com/tutorials/di … -bluetooth

Using Arduino 2.3.2 and the SparkFun ESP32 Thing Plus C, I get the following error:

Compilation error: ‘BLEUUID’ does not name a type

in the ‘Client ESP32’ section.

And in the same tutorial, I get the following error:

Compilation error: ‘init’ is not a member of ‘BLEDevice’

in the ‘Server ESP32’ section.

Any thoughts?

I have just compiled the client and server. There are NO problems on both Arduino IDe version 1.8.16 and 2.3.2

I selected the ESP32 2.0.14 / SparkFun ESP32 Thing Plus C. I removed/commented out the “OLED” code from the client as I didn’t want to install that library.

The ONLY issue I always run into with ESP32 BLE code is when the ArduinoBLE library is also installed on the system. It will try to use that ArduinoBLE library and cause all kinds of errors. That is because they use same-named header files. I must remove the ArduinoBLE library from the libraries folder and then the ESP32 BLE-code compiles without problems. Maybe you have something similar.

Hi Paul,

That was the problem, I removed the ArduinoBLE library from the libraries folder, and everything worked fine.

Thank you so much for your help!