# Usage of the esp8266boilerplate project in your own Arduino ESP8266 projects Wolfgang Hottgenroth * Create an Arduino ESP8266 project in Sloeber * Add esp8266boilerplate as submodule to your project: ``` git submodule init git submodule add git@gitlab.com:wolutator/esp8266boilerplate.git ``` * Copy `ConfigGenerator/ConfigDataStructure.py-example` into your project directory, rename it to `ConfigDataStructure.py` * Edit `ConfigDataStructure.py` according to your requirements * Change into directory ConfigGenerator and run `configGen.sh`, it generates the configuration code for your projects into your project directory (files `configuration.cpp` and `configuration.h`, do not edit these files) * Copy `defines.h-example` into your project directory, rename it to `defines.h` and edit it according to your requirements * In to main cpp file of your project you have the functions `setup()` and `loop()`. Edit this file and call `mainSetup()` from the `setup()` function and `mainLoop()` from the `loop()` function. Do not change anything else in this file. * Add the directory `esp8266boilerplate` as an include and a source location in the properties of your project. * Create all the code you need for you application. Call your own main setup function `setupApplication()` and your own main loop function `loopApplication()`. These functions will be called via mainSetup and mainLoop when the system is running in production (in contrast to configuration) mode.