You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm struggling to get the lib working for a simple modbus master. I can't even connect to the server.
Wireshark shows a remarkable log:
Even though the ESP is already connected, it resends SYN. Also, it takes about 3 seconds before the ESP knows it has connected (wireshark show it about 3 secs sooner).
From time to time, I experience stranger errors like [E][AsyncTCP.cpp:571] _recv(): 0x3ffbb578 != 0x3ffbb120
Behaviour is the same for the main branch as the idf-update branch. The _recv() only appears at the idf-update branch.
Edit: when the _recv() error appears, there's no callback called, so my app also doesn't know it can move on. As a workaround I need to implement a timer myself.
The text was updated successfully, but these errors were encountered:
I call client.connect() again, assuming it would just return because it is already connecting. However, as my Wireshark analysis shows, it is creating a new connection.
AsyncClient connects, but it calls my onConnected several times: for each call I made to connect().
After being connected, I start with regular communication.
Because I only use the "lastest" connection, the other ones get idle and get disconnected by the server.
AsyncClient treats the disconnect from the first connections as a disconnect for the active connection in the middle of active communication.
I thought solving this by
if (!client.connected() && !client.connecting()) {
client.connect();
}
But AsyncClient takes a few seconds before being aware that it is connecting. Setting the priority of the asynctask higher improves, but is still not aware of it's state directly after calling connect(). Surely it is a issue with FreeRTOS's task switching latency.
So basically:
Is this intended behaviour and should I deal with this myself?
Or is it an issue that has to be solved in AsyncClient?
I'm struggling to get the lib working for a simple modbus master. I can't even connect to the server.
Wireshark shows a remarkable log:
Even though the ESP is already connected, it resends SYN. Also, it takes about 3 seconds before the ESP knows it has connected (wireshark show it about 3 secs sooner).
From time to time, I experience stranger errors like
[E][AsyncTCP.cpp:571] _recv(): 0x3ffbb578 != 0x3ffbb120
Behaviour is the same for the main branch as the idf-update branch. The _recv() only appears at the idf-update branch.
Edit: when the
_recv()
error appears, there's no callback called, so my app also doesn't know it can move on. As a workaround I need to implement a timer myself.The text was updated successfully, but these errors were encountered: