Motivation - denis-stepanov/esp-ds-system GitHub Wiki

Motivation

After having written a few relatively complex ESP8266 programs, I realized that, in spite of relying heavily on external libraries, a good amount of "glue" code was still needed. This "glue" code was doing external library integration, and was not much dependent on what the program was doing. One early example was WiFiManager integration and launching with a button long press. Thus, when a new project was created, successful pieces of code were copied from older sketches, sometimes modified on the way. Not all programs needed the same functionality. This lead to a situation where useful functions were getting scattered across multiple sketches, which made maintenance of such code difficult. So I started to put it together in some reusable form.

This "glue" code can be done in many ways; the version of mine, of course, reflects a lot my personal preferences. Nevertheless, I decided to publish it, hoping it could be useful to someone else.