akajes / asyncping Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU Lesser General Public License v3.0
License: GNU Lesser General Public License v3.0
Hello,
i really like this library, but i now want to test the new lwip v2 that comes with esp8266 core. The Problem is, that i get two errors that i am not able to solve by myself. It would be nice if somone can take a look at this.
Here is the error log from the Arduino IDE:
C:\Program Files (x86)\Arduino\libraries\AsyncPing\src\AsyncPing.cpp: In member function 'bool AsyncPing::begin(const IPAddress&, uint8_t, uint32_t)':
C:\Program Files (x86)\Arduino\libraries\AsyncPing\src\AsyncPing.cpp:45:67: error: invalid conversion from 'uint8_t (*)(void*, raw_pcb*, pbuf*, ip_addr*) {aka unsigned char (*)(void*, raw_pcb*, pbuf*, ip_addr*)}' to 'raw_recv_fn {aka unsigned char (*)(void*, raw_pcb*, pbuf*, const ip4_addr*)}' [-fpermissive]
raw_recv(ping_pcb, _s_ping_recv, reinterpret_cast<void*>(this));
In file included from C:\Program Files (x86)\Arduino\libraries\AsyncPing\src\AsyncPing.h:5:0,
from C:\Program Files (x86)\Arduino\libraries\AsyncPing\src\AsyncPing.cpp:2:
C:\Program Files (x86)\Arduino\hardware\esp8266com\esp8266/tools/sdk/lwip2/include/lwip/raw.h:101:18: error: initializing argument 2 of 'void raw_recv(raw_pcb*, raw_recv_fn, void*)' [-fpermissive]
void raw_recv (struct raw_pcb *pcb, raw_recv_fn recv, void *recv_arg);
C:\Program Files (x86)\Arduino\libraries\AsyncPing\src\AsyncPing.cpp: In member function 'uint8_t AsyncPing::ping_recv(raw_pcb*, pbuf*, ip_addr*)':
C:\Program Files (x86)\Arduino\libraries\AsyncPing\src\AsyncPing.cpp:151:69: error: cannot convert 'ip_addr**' to 'const ip4_addr_t* {aka const ip4_addr*}' for argument '2' to 's8_t etharp_find_addr(netif*, const ip4_addr_t*, eth_addr**, const ip4_addr_t**)'
etharp_find_addr(NULL, &addr, &_response.mac, &unused_ipaddr);
hi.after upgrading esp8266 core to 2..4.1 AsyncPing library crashes.but with 2.3.0 works perfectly.how to solve this problem.thanks
Hello,
with Arduino IDE, IwIP 1.4 higher bandwidth, I have the following error.
While with Arduino IDE, IwIP 2 higher bandwidth my code is compiled without any errors.
What's the problem?
C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp: In member function 'bool AsyncPing::begin(const IPAddress&, u8_t, u32_t)': C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp:45:67: error: invalid conversion from 'u8_t (*)(void*, raw_pcb*, pbuf*, const ip_addr_t*) {aka unsigned char (*)(void*, raw_pcb*, pbuf*, const ip_addr*)}' to 'raw_recv_fn {aka unsigned char (*)(void*, raw_pcb*, pbuf*, ip_addr*)}' [-fpermissive] raw_recv(ping_pcb, _s_ping_recv, reinterpret_cast<void*>(this)); ^ In file included from C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.h:6:0, from C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp:2: C:\Users\ronco\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.7.4/tools/sdk/lwip/include/lwip/raw.h:84:18: error: initializing argument 2 of 'void raw_recv(raw_pcb*, raw_recv_fn, void*)' [-fpermissive] void raw_recv (struct raw_pcb *pcb, raw_recv_fn recv, void *recv_arg)ICACHE_FLASH_ATTR; ^ C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp: In member function 'u8_t AsyncPing::ping_recv(raw_pcb*, pbuf*, const ip_addr_t*)': C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp:151:68: error: invalid conversion from 'const ip_addr_t* {aka const ip_addr*}' to 'ip_addr_t* {aka ip_addr*}' [-fpermissive] etharp_find_addr(NULL, addr, &_response.mac, &unused_ipaddr); ^ In file included from C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.h:7:0, from C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp:2: C:\Users\ronco\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.7.4/tools/sdk/lwip/include/netif/etharp.h:186:6: error: initializing argument 2 of 's8_t etharp_find_addr(netif*, ip_addr_t*, eth_addr**, ip_addr_t**)' [-fpermissive] s8_t etharp_find_addr(struct netif *netif, ip_addr_t *ipaddr, ^ C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp:151:68: error: invalid conversion from 'const ip_addr_t** {aka const ip_addr**}' to 'ip_addr_t** {aka ip_addr**}' [-fpermissive] etharp_find_addr(NULL, addr, &_response.mac, &unused_ipaddr); ^ In file included from C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.h:7:0, from C:\Users\ronco\Documents\Arduino\libraries\AsyncPing-master\src\AsyncPing.cpp:2: C:\Users\ronco\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.7.4/tools/sdk/lwip/include/netif/etharp.h:186:6: error: initializing argument 4 of 's8_t etharp_find_addr(netif*, ip_addr_t*, eth_addr**, ip_addr_t**)' [-fpermissive] s8_t etharp_find_addr(struct netif *netif, ip_addr_t *ipaddr, ^
exit status 1 Error compiling for Generic ESP8266 Module card.
PlatformIO has the library tagged with ESP32 Platform support: https://platformio.org/lib/show/5697/AsyncPing(esp8266)/installation
Compiling against this platform results in a missing header file:
Compiling .pioenvs/esp32dev/src/main.cpp.o In file included from src/main.cpp:3:0: /Users/mmichon/.platformio/lib/AsyncPing_esp8266__ID5697/src/AsyncPing.h:3:26: fatal error: core_version.h: No such file or directory
So I think it's mistagged.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.