firebase-arduino icon indicating copy to clipboard operation
firebase-arduino copied to clipboard

Not able to compile FirebaseHttpClient_Esp8266.cpp

Open ashish-solankar opened this issue 4 years ago • 9 comments
trafficstars

`Arduino: 1.8.1 (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"

WARNING: Category 'Network' in library lwIP_PPP is not valid. Setting to 'Uncategorized' WARNING: Category 'Network' in library lwIP_enc28j60 is not valid. Setting to 'Uncategorized' WARNING: Category 'Network' in library lwIP_w5500 is not valid. Setting to 'Uncategorized' WARNING: Category 'Network' in library lwIP_w5500 is not valid. Setting to 'Uncategorized' C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp: In member function 'virtual void FirebaseHttpClientEsp8266::begin(const string&)': C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:47:50: error: no matching function for call to 'begin(const char*, const char [60])' 47 | http_.begin(url.c_str(), kFirebaseFingerprint); | ^ In file included from C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:9: C:\Users\HP\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:166:10: note: candidate: 'bool HTTPClient::begin(String, uint16_t, String)' (near match) 166 | bool begin(String host, uint16_t port, String uri = "/") attribute ((error("obsolete API, use ::begin(WiFiClient, host, port, uri)"))); | ^~~~~ C:\Users\HP\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:166:10: note: conversion of argument 2 would be ill-formed: C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:47:30: error: invalid conversion from 'const char*' to 'uint16_t' {aka 'short unsigned int'} [-fpermissive] 47 | http_.begin(url.c_str(), kFirebaseFingerprint); | ^~~~~~~~~~~~~~~~~~~~ | | | const char* In file included from C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:9: C:\Users\HP\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:167:10: note: candidate: 'bool HTTPClient::begin(String, const uint8_t*)' (near match) 167 | bool begin(String url, const uint8_t httpsFingerprint[20]) attribute ((error("obsolete API, use ::begin(WiFiClientSecure, ...)"))); | ^~~~~ C:\Users\HP\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:167:10: note: conversion of argument 2 would be ill-formed: C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:47:30: error: invalid conversion from 'const char*' to 'const uint8_t*' {aka 'const unsigned char*'} [-fpermissive] 47 | http_.begin(url.c_str(), kFirebaseFingerprint); | ^~~~~~~~~~~~~~~~~~~~ | | | const char* C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp: In member function 'virtual void FirebaseHttpClientEsp8266::begin(const string&, const string&)': C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:51:60: error: invalid conversion from 'const char*' to 'const uint8_t*' {aka 'const unsigned char*'} [-fpermissive] 51 | http_.begin(host.c_str(), kFirebasePort, path.c_str(), kFirebaseFingerprint); | ^~~~~~~~~~~~~~~~~~~~ | | | const char* In file included from C:\Users\HP\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:9: C:\Users\HP\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:168:70: note: initializing argument 4 of 'bool HTTPClient::begin(String, uint16_t, String, const uint8_t*)' 168 | bool begin(String host, uint16_t port, String uri, const uint8_t httpsFingerprint[20]) attribute ((error("obsolete API, use ::begin(WiFiClientSecure, ...)"))); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ exit status 1 Error compiling for board NodeMCU 1.0 (ESP-12E Module).

This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences. `

ashish-solankar avatar May 23 '21 16:05 ashish-solankar

It was working till yesterday i have updated fingerprint.

ashish-solankar avatar May 23 '21 16:05 ashish-solankar

same for me, this is the error messages

Arduino: 1.8.15 (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"

C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp: In member function 'virtual void FirebaseHttpClientEsp8266::begin(const string&)':

C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:47:50: error: no matching function for call to 'begin(const char*, const char [60])'

47 | http_.begin(url.c_str(), kFirebaseFingerprint);

  |                                                  ^

In file included from C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:9:

C:\Users\user\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:166:10: note: candidate: 'bool HTTPClient::begin(String, uint16_t, String)' (near match)

166 | bool begin(String host, uint16_t port, String uri = "/") attribute ((error("obsolete API, use ::begin(WiFiClient, host, port, uri)")));

  |          ^~~~~

C:\Users\user\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:166:10: note: conversion of argument 2 would be ill-formed:

C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:47:30: error: invalid conversion from 'const char*' to 'uint16_t' {aka 'short unsigned int'} [-fpermissive]

47 | http_.begin(url.c_str(), kFirebaseFingerprint);

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

  |                              |

  |                              const char*

In file included from C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:9:

C:\Users\user\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:167:10: note: candidate: 'bool HTTPClient::begin(String, const uint8_t*)' (near match)

167 | bool begin(String url, const uint8_t httpsFingerprint[20]) attribute ((error("obsolete API, use ::begin(WiFiClientSecure, ...)")));

  |          ^~~~~

C:\Users\user\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:167:10: note: conversion of argument 2 would be ill-formed:

C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:47:30: error: invalid conversion from 'const char*' to 'const uint8_t*' {aka 'const unsigned char*'} [-fpermissive]

47 | http_.begin(url.c_str(), kFirebaseFingerprint);

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

  |                              |

  |                              const char*

C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp: In member function 'virtual void FirebaseHttpClientEsp8266::begin(const string&, const string&)':

C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:51:60: error: invalid conversion from 'const char*' to 'const uint8_t*' {aka 'const unsigned char*'} [-fpermissive]

51 | http_.begin(host.c_str(), kFirebasePort, path.c_str(), kFirebaseFingerprint);

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

  |                                                            |

  |                                                            const char*

In file included from C:\Users\user\Documents\Arduino\libraries\firebase-arduino-master\src\FirebaseHttpClient_Esp8266.cpp:9:

C:\Users\user\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.0\libraries\ESP8266HTTPClient\src/ESP8266HTTPClient.h:168:70: note: initializing argument 4 of 'bool HTTPClient::begin(String, uint16_t, String, const uint8_t*)'

168 | bool begin(String host, uint16_t port, String uri, const uint8_t httpsFingerprint[20]) attribute ((error("obsolete API, use ::begin(WiFiClientSecure, ...)")));

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

exit status 1

Error compiling for board NodeMCU 1.0 (ESP-12E Module).

This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences.

Diere1 avatar May 28 '21 03:05 Diere1

Same problem here!

doublecookie avatar May 28 '21 19:05 doublecookie

Solved it. Works if you change esp8266 board manager from 3.0.0 back to 2.7.4 seems like this library hasnt been adapted to the new ESP8266HTTPClient version

doublecookie avatar May 28 '21 19:05 doublecookie

@doublecookie thank you, got the job run succesfully.

Diere1 avatar May 28 '21 22:05 Diere1

I got some new problem, after uploading, this lines appear in serial monitor.

[HTTP-Client][begin] host: "blabla.firebase.io" port: 443 url: /Lamp_Status.json?auth=aXwW4fLhGEVR4rtq5....... httpsFingerprint: 03 9E 4F E6 83 FC 40 EF FC B2 C5 EF 36 0E 7C 3C 42 20 1B 8F [HTTP-Client][sendRequest] type: 'GET' redirCount: 0 [HTTP-Client] failed connect to blabla.firebaseio.com:443 [HTTP-Client][returnError] error(-1): connection failed [HTTP-Client][end] tcp is closed

hope someone can help

Diere1 avatar May 29 '21 23:05 Diere1

A new fingerprint as by 2021-07 is: "50:89:50:57:90:1F:37:E3:B8:F3:5B:02:ED:3A:65:6E:6A:34:DB:93"

mussacharles60 avatar Sep 13 '21 00:09 mussacharles60

i have this error : In file included from C:\Users\ASUS\Documents\Arduino\libraries\Firebase_ESP8266_Client\src/FirebaseESP8266.h:47:0, from C:\Users\ASUS\Desktop\PS2 codes\finaaaale\finaaaale.ino:8: C:\Users\ASUS\Documents\Arduino\libraries\Firebase_ESP8266_Client\src/Firebase.h: In instantiation of 'void FIREBASE_CLASS::begin(T1, T2, T3, float) [with T1 = const char*; T2 = const char*; T3 = WiFiClient]': C:\Users\ASUS\Desktop\PS2 codes\finaaaale\finaaaale.ino:58:58: required from here C:\Users\ASUS\Documents\Arduino\libraries\Firebase_ESP8266_Client\src/Firebase.h:502:22: error: cannot convert 'WiFiClient' to 'const char*' in assignment cfg->cert.data = caCert; ^ exit status 1 Erreur de compilation pour la carte NodeMCU 1.0 (ESP-12E Module)

ammarirafik avatar Mar 13 '23 20:03 ammarirafik

i have this problem please help me : In file included from C:\Users\ASUS\Documents\Arduino\libraries\firebase-arduino-master\src/Firebase.h:30:0, from C:\Users\ASUS\Documents\Arduino\libraries\firebase-arduino-master\src/FirebaseArduino.h:22, from C:\Users\ASUS\Desktop\PS2 codes\finaaaale\finaaaale.ino:6: C:\Users\ASUS\Documents\Arduino\libraries\firebase-arduino-master\src/FirebaseObject.h:109:11: error: StaticJsonBuffer is a class from ArduinoJson 5. Please see https://arduinojson.org/upgrade to learn how to upgrade your program to ArduinoJson version 6 std::shared_ptr<StaticJsonBuffer<FIREBASE_JSONBUFFER_SIZE>> buffer_; ^ In file included from C:\Users\ASUS\Documents\Arduino\libraries\firebase-arduino-master\src/FirebaseArduino.h:22:0, from C:\Users\ASUS\Desktop\PS2 codes\finaaaale\finaaaale.ino:6: C:\Users\ASUS\Documents\Arduino\libraries\firebase-arduino-master\src/Firebase.h:86:11: error: StaticJsonBuffer is a class from ArduinoJson 5. Please see https://arduinojson.org/upgrade to learn how to upgrade your program to ArduinoJson version 6 std::shared_ptr<StaticJsonBuffer<FIREBASE_JSONBUFFER_SIZE>> buffer_; ^ exit status 1 Erreur de compilation pour la carte NodeMCU 1.0 (ESP-12E Module)

ammarirafik avatar Mar 13 '23 20:03 ammarirafik