Over the weekend engolling and me made some tests, like he said in the previous post.
I am trying to simulate a WD right now: with 2 raspberry pis and one with an online subdomain of my website.
--> Than I have "4 wireless displays" --> 1real+3fakes. But I did not get the simulated ones to work until now.
Although I want to provide my results:
At first Werk_AG you did a very nice job! All functions are on a clever, cleaned up place and everything is working!
Here are some things in addition to engollings post, that came up:
- The port 80. Could we change that with another part in the WIFIunit_address variable, so for each IP/hostname, the port can be changed? This will affect:
- -->if (wifi.createTCP(mux_id, WIFIunit_address [0] [i], 80, 0))
- -->const char* postfix =" host:80\r\nConnection: close\r\n\r\n";
- a very big disadvantage of all this solution is, if a (i call a WD a sensor) sensor does not respond --> then we have a lot of timeout
- another thing is misconfiguration: If a WD unit is configured in extra sensors, but has 0.0.0.0, than the routine times get worse also
- and having an empty string "" instead of "0.0.0.0" increases also routine time
I think at me hostnames are working because of my fritz box router has some dns and nameserver resolving services.
Here are some mean value figures of our tests:
- Wireless Display alone (24 data points):
- 603,667 ms
- Wireless Display + www Wireless Display of engolling over the web (121 data points)
- 1460,16 ms
- 1 time www (engollings Wireless Display) configured (30 data points):
- 855,967 ms
- 2 times www (engollings Wireless Display) configured (13 data points):
- 1561,54 ms
- 3 times www (engollings Wireless Display) configured (30 data points):
- 2188,8 ms
- 4 times www (engollings Wireless Display) configured (7 data points):
- 2753,14 ms
now we come to failures or a not responding WD:
- 1 time www (engollings Wireless Display) configured (65 data points):
- 8755,46 ms
- 3 times www (engollings Wireless Display) configured (167 data points):
- 26092,2 ms
and now some special ones:
- 1 configured as www sensor the other 3 sensors are configured with "" instead of "0.0.0.0" --> (3 data points) and 7186 ms
- 2 have correct IPs and altogether 3 extra WDs are configured --> (5 data points) and 1831,4 ms
So altogether this must become more robust and stable! We can play with timeout times and probably we need sth. like a ping, to detect if we could expect an answer?!?
I did not have a feeling for these bad times in the beginning... :/
I think engollings idea could be a nice thing to let the ESP do more data processing.
Probably we achieve the ESP to get, process and store the JSON data for the RX Mega to get the data later on with no (or a very little) loss of speed.
As an attachement I have a plot of routine times it takes to have 1...4 www sensors (like all the rest emprical data). --> routine ms over number of devices
best regards
t3gathome