These are chat archives for esp8266/Arduino

13th
Aug 2015
Neil Kolban
@nkolban
Aug 13 2015 02:08
Does the ESP limit the number of concurrent sockets open with it?
Me No Dev
@me-no-dev
Aug 13 2015 03:54
yes
5 concurent sockets
Neil Kolban
@nkolban
Aug 13 2015 03:55
Awesome ... thank you
Neil Kolban
@nkolban
Aug 13 2015 13:52
Can we increase the number of sockets using espconn_tcp_set_max_con?
Ivan Grokhotkov
@igrr
Aug 13 2015 14:17
last time I checked, valid argument values for espconn_tcp_set_max_con function were 1..5
Neil Kolban
@nkolban
Aug 13 2015 15:29
Looking at the SDK 1.3 docs, the especonn_tcp_set_max_con_allow doesn't seem to say there is a max ...?
Ahhh ... I see there are TWO settings espconn_tcp_set_max_con and espconn_tcp_set_max_con_allow ... and neither of them list out ranges.
I get the impression that one setting is number of clients allowed to connect to the ESP device and the other is the number of clients allowed to connect to a specific PORT at the ESP device.
Neil Kolban
@nkolban
Aug 13 2015 21:34
I posted a discussion topic on the forum about esp8266/Arduino philosophy and goals ... see http://www.esp8266.com/viewtopic.php?f=33&t=4512
Ivan Grokhotkov
@igrr
Aug 13 2015 21:47
Event-driven network APIs would be a very useful addition for advanced users, but honestly this is not at the top of my bucket list. Few weeks ago I have started a rewrite of ESP8266WebServer to do as much as possible asynchronously, because this is currently its' weakest point. But is still not finished as other tasks seem to have higher priority (someone has to do Filesystem and TLS...)
Ivan Grokhotkov
@igrr
Aug 13 2015 21:54
Adding some methods to register callbacks in WiFiClient/WiFiServer/WiFiUDP is actually quite trivial. What is not trivial is that the user is confronted with the concept of non-reentrant functions.
Due to the fact that sketch execution is wrapped inside a coroutine, it might happen that some callback will be called while execution of another function is suspended somewhere in the middle. This is not something unexpected if you are working in a multithreaded environment, but not really common with Arduino. Essentially these callback behave as "interrupt routines", so no blocking/lengthy stuff may be done there.
Neil Kolban
@nkolban
Aug 13 2015 22:04
What I guess would be useful would be an architecture direction ... I'm assuming that by making the project open on Github you'd entertain the notion of other contributors. As long as there is an acrhitectural direction, other contributors could start working on some work items that you yourself don't have time for. So for example, event drive network APIs could be added incrementally by other folks ... as long as you yourself as the project owner were ok with that from an architectural direction.
Ivan Grokhotkov
@igrr
Aug 13 2015 22:30
Replied on the forum to minimize discussion duplication :) Thanks for bringing up this topic.
Neil Kolban
@nkolban
Aug 13 2015 22:31
awesome ... reading it now my friend.
What is the acronym "asio"?
Ivan Grokhotkov
@igrr
Aug 13 2015 22:32
asynchronous IO, I suppose
Neil Kolban
@nkolban
Aug 13 2015 22:33
I gotcha ... that makes sense ... just hadn't heard the term before but the meaning is clear.
I'd like to contribute to your project in any way I can ... I think one of the most valuable things you could do is take some time and write up a design spec for some of the more core concepts. For example ... how you designer the setup()/loop(), what you mean by coroutine in the context of the project, how you handled watch dog timer handling etc etc ... I think if we wrote those up in more detail, then contributors would be more likely to understand how to contribute and also we'd stand a better chance of "not breaking" something.
I'll be happy to write it up for you ... if I can understand it myself :-)
Ivan Grokhotkov
@igrr
Aug 13 2015 22:37
usually takes me about an hour and a whiteboard (or a piece of paper) to explain this in person. might take a while to write this down :)
Neil Kolban
@nkolban
Aug 13 2015 22:38
To give you some background on me ... I'm 48 and work as a programmer. Have been working in that role since 1988. Before that I got a university degree in computer science ... and before that was a games programmer in the early 80s on 8bit micro computers. I say this not to brag or boast ... but simply to give you the knowledge that, by now, I should be a relatively competent programmer :-)
Ivan Grokhotkov
@igrr
Aug 13 2015 22:45
okay, my experience with software is nowhere near yours :)
i was actually joking about an hour, i think the core things would fit into 15 minutes.
Let's discuss this in the chat or on skype. Just need to pick the time, allowing for time zone difference ...
it's already 2am here so probably not today :)
Neil Kolban
@nkolban
Aug 13 2015 22:48
Perfect my friend ... my skype is neil.kolban ... and I am located in Texas in the USA. I am usually at my keyboard from 8:00am till late ... Mon-Fri I work from home but am still here for short calls ... weekends are perfect. My email is kolban1@kolban.com. I'll be delighted to either Skype chat or voice chat or exchange emails ... as I say, if you invest time with me to describe, I'll pay it back with Markdown content to the project describing the architecture (assuming that is ok to you).