ESP8266wifi icon indicating copy to clipboard operation
ESP8266wifi copied to clipboard

Compatibility Issues with Ethernet library

Open geoffrey2312 opened this issue 8 years ago • 1 comments

Basically I want to convert the Settimino (arduino Snap7 library) across to WiFi using the nodeMCU as an arduino. I have edited the Settimino library to #include ESP8266WiFi and changed the class from ethernet to WiFi, however I get compiler errors from Arduino IDE that I dont quite know how to fix.

Has anyone else had experience with porting an ethernet based library to wifi or how to fix these errors.

Thank you.

In file included from \Documents\Arduino\libraries\Settimino\Settimino.h:42:0,

from \Documents\Arduino\libraries\Settimino\Settimino.cpp:26:

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h: In instantiation of 'size_t WiFiClient::write(T&, size_t) [with T = unsigned char [22]; size_t = unsigned int]':

\Documents\Arduino\libraries\Settimino\Settimino.cpp:426:41: required from here

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:123:36: error: request for member 'available' in 'source', which is of non-class type 'unsigned char [22]'

size_t left = source.available();

^

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:127:5: error: request for member 'read' in 'source', which is of non-class type 'unsigned char [22]'

source.read(buffer.get(), will_send);

^

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h: In instantiation of 'size_t WiFiClient::write(T&, size_t) [with T = unsigned char [25]; size_t = unsigned int]':

\Documents\Arduino\libraries\Settimino\Settimino.cpp:446:39: required from here

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:123:36: error: request for member 'available' in 'source', which is of non-class type 'unsigned char [25]'

size_t left = source.available();

^

C:\Users\Geoff-Work\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:127:5: error: request for member 'read' in 'source', which is of non-class type 'unsigned char [25]'

source.read(buffer.get(), will_send);

^

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h: In instantiation of 'size_t WiFiClient::write(T&, size_t) [with T = unsigned char [35]; size_t = unsigned int]':

\Arduino\libraries\Settimino\Settimino.cpp:543:34: required from here

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:123:36: error: request for member 'available' in 'source', which is of non-class type 'unsigned char [35]'

size_t left = source.available();

^

\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi\src/WiFiClient.h:127:5: error: request for member 'read' in 'source', which is of non-class type 'unsigned char [35]'

source.read(buffer.get(), will_send);

^

exit status 1 Error compiling. - See more at: http://www.esp8266.com/viewtopic.php?f=6&t=11109&e=0#sthash.kz6iclMu.dpuf

geoffrey2312 avatar Aug 04 '16 07:08 geoffrey2312

Just in case somebody runs into this issue. The following post solved this error. http://www.esp8266.com/viewtopic.php?f=29&t=7525

renu285 avatar Sep 14 '16 15:09 renu285