How can I say this...
You are a mechanic that has built your own aeroplane, I'm a mechanic that has built my own mini-sub - you cannot know from your own experiences what my specific requirements and restrictions are without taking a deep breath and diving in to give mine a try yourself, cos it aint nothing like what you've been used to. Same goes for me and your stuff.
Don't be frightened that it's big, cos it won't bite, and it doesn't require any special hardware to run or to demo the networking features... and as explained in the the self-contained docs, most network features can be invoked locally by specifying name as LOCAL in the broadcast msg window. If you ever have any intention of seeing what the recent udp networking is capable of - and it's easy simplicity - then why not download cicciocb's ideal free little udp_debugger utility and interact with my script as a network node. It's easy-peasy, and you would probably never look back, cos with so many power features available now, networking ESP_Basic modules is going to be the future - trust me - even if just to take best advantage of the most recent IR functionality.
It's pointless me trying to explain everything if you haven't run it and therefore can't relate to what I am going on about ... but having committed to respond, I must continue and complete.
On the browser edit page there are the top [ VARS ] [ EDIT ] [ RUN ] [ SETTINGS ] [ FILE MANAGER ] option links.
On my home page the node description is able to list the nodes various built-in instructions, ie: MP3Player [Play] [Pause] [Next] [Previous] [Vup] [Vdown], so it would have been a nice touch to have those commands clickable similar to the browsers option links. It's only creating a text hyperlink branch instead of a button branch so I don't think it's likely to be difficult, and I suspect it may already be possible but undocumented... cos of the fact that it is already being used in the browser window and may have been one of the very first features created!
It's not currently possible to have a scroll_window to display incoming udp msg history in the same way that ciccciocb's udb_debug util can do.
Bearing in mind what the udp network demonstrator is trying to demonstrate (use multiple dhcp nodes on a wifi subnet) it would be very convenient for each newly added node to be able to locally flash out (blink) it's allocated dhcp node address at bootup. And the script is capable of doing that - but not if I wish the node to send a 'be patient' confidence msg back to the browser first, while still doing it's local flashing.
Same if doing a shutdown or reboot, I don't think it is possible to acknowledge the request AND then instigate the event.
It could ease the initial networking situation if it was possible to have two AP nodes at specified addresses for testing interconnectivity without needing to worry about routers and dhcp servers etc, but I fear your comments may have prevented chances of that ever happening. You raised a potential objection because of the possibility of cross-connection problems due to having multiple wifi interfaces on one computer. Really? I must be missing something... cos that just seems to be pouring on muddy water to obscure a relatively clear situation - surely it's a more realistic scenario to have one computer with one wifi interface able to connect to multiple AP's, than to have one computer with multiple wifi interfaces connecting to only one possible AP just to ensure no chance of a cock-up! I hope I've missed something relevent with that objection, else it may have pointlessly obscured a potentially useful idea from ever seeing the light of day.
Anyway, none of the above are show-stoppers, but all could offer some useful enhanced functionality if they were possible.
Some of the following are more subversive - first and foremost being the zombie parser getting it's nickers in a twist and then confusing it's vars and branches.
Maybe it's a script bug that brings on the madness, but in this case I don't think so - the web buttons work fine by themselves to toggle the relay (led) and flash the last digits of the ip address on the blue led etc, and all of the doc pages work fine and reliably, but if you flick back and forth between buttons and docs, then quickly the function buttons exhibit branch errors and incorrectly branch to doc pages.
Every html text word and button and other web component on every line has only 1 space character between each, because all other spaces and tab characters are ignored, eg: html "X " & chr(9) & " " & chr(9) & " X" results in "X X", preventing adding any white space or neat tabulations.
Everything still works ok, but it can look like a pigs ear, and doesn't offer professional presentation.
[branch] ' is one of the most useful places for having explanatory comments, but adding comments after a branch declaration causes a branch error.
Interrupt is an unhelpful jobs-worth... onboard gpio00 buttons and links that worked perfectly well for entering flashing mode and preventing autorun are later snubbed and ignored cos of not wearing the previously unnecessary pullup resistor 'tie' that custom now dictates, and which now causes a precarious mess out of any neat self-contained dev modules that must accept the unnecessary clutter forced on them.
The ip() function has a history of mental illness and still requires a bit more treatment before it's safe to let loose on an unsuspecting public. I can deal with it, and you can deal with it, but something that returns 192.168.0.39 when you are connected to 192.168.4.1 on a newly reformatted and reflashed ESP just aint right in the head, and it doesn't do other peoples heads much good either.
I'd hope the two wizards know by now that I'm not a negative complainer trying to find fixes for personal problems... it's simply the best and only way I know for an ordinary 'muggle' to try to help progress ESP_Basic - by spotlighting areas that perhaps the wizards may be able to improve upon but which they may otherwise not have looked at. That's the main reason for the 'bloatware' script being still like it is, and is likely to remain so until things like the zombie parser are under control and offer sufficient stability for things to be progressed.
So thanks for taking the time and effort to offer your help and suggestions for getting round the script problems, but hopefully you can now see that it's currently more of an imperfect testbed and yardstick for assessing improvements and benefits of new releases. A21 is still not quite there yet, but almost, and as soon as that stable threshold of functionality is reached then I intend to concentrate on doing some smaller practical individual network projects from it, which I hope will soon be added to by the more experienced people such as yourself.
At the moment my own interests lay more towards security and control, but I am really looking forward to seeing things like a mix 'n' match weather station evolve (I'm sure it's inevitable) with various add-on network nodes offering all sorts of increased functionality, and who knows what other things people will dream up and be able to achieve with the comprehensive ESP_Basic toolkit that is now becoming available to them.
Robin.