B4R Question Problem building project with rESP8266Wifi

MathiasM

Member
Licensed User
Hello

I just bought a Wemos D1 Mini to do some ESP8266 testing.
I just use the default code:

B4X:
#Region Project Attributes
    #AutoFlushLogs: True
    #CheckArrayBounds: True
    #StackBufferSize: 300
#End Region

Sub Process_Globals
    'These global variables will be declared once when the application starts.
    'Public variables can be accessed from all modules.
    Public Serial1 As Serial
End Sub

Private Sub AppStart
    Serial1.Initialize(115200)
    Log("AppStart")
End Sub
The result in de log is:


A bit odd, but ok.

But when I check the rESP8266Wifi library, without changing any code at all:

B4R Version: 2.51
Parsing code. (0.00s)
Compiling code. (0.01s)
Building project (0.04s)
Compiling & deploying Ino project (LOLIN(WEMOS) D1 R2 & mini - COM11) Error
Configuratie inladen...
Laden van de packages...
Boards voorbereiden...
Verifiëren...
In file included from C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\B4RDefines.h:25:0,
from C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\B4RArduino.cpp:1:
rESP8266WiFi.h:89: error: cannot declare field 'B4R::WiFiSocket::client' to be of abstract type 'B4R::BufferedWiFiClient'
BufferedWiFiClient client;
^
C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\rESP8266WiFi.h:56:8: note: because the following virtual functions are pure within 'B4R::BufferedWiFiClient':
class BufferedWiFiClient : public Client {
^
In file included from C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\B4RDefines.h:11:0,
from C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\B4RArduino.cpp:1:
C:\Users\Mathias\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266/Client.h:29:21: note: virtual int Client::connect(const IPAddress&, uint16_t)
virtual int connect(CONST IPAddress& ip, uint16_t port) =0;
^
C:\Users\Mathias\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266/Client.h:37:22: note: virtual bool Client::flush(unsigned int)
virtual bool flush(unsigned int maxWaitMs = 0) = 0;
^
C:\Users\Mathias\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\cores\esp8266/Client.h:38:22: note: virtual bool Client::stop(unsigned int)
virtual bool stop(unsigned int maxWaitMs = 0) = 0;
^
In file included from C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\B4RDefines.h:25:0,
from C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\B4RArduino.cpp:1:
rESP8266WiFi.h:125: error: cannot declare field 'B4R::WiFiSSLSocket::client' to be of abstract type 'B4R::BufferedWiFiClient'
BufferedWiFiClient client;
^
C:\Users\Mathias\DOCUME~1\Objects\bin\sketch\rESP8266WiFi.h:56:8: note: since type 'B4R::BufferedWiFiClient' has pure virtual functions
class BufferedWiFiClient : public Client {
^
exit status 1
Is there something I'm doing wrong?

Thanks a bunch!
 

thetahsk

Active Member
Licensed User
Hello

I just bought a Wemos D1 Mini to do some ESP8266 testing.
I just use the default code:
....
You should use latest esp8266 SDK. Select Boardmanager in the Arduino IDE and install latest SDK for your ESP8266.
 
Top