In this section, we look at the source code for the ESP8266 firmware as used with the BMaC system.
The core of the firmware we already looked at in Chapter 5, Example - Soil Humidity Monitor with Wi-Fi, including the entry point, the OtaCore
class, and the BaseModule
class, which provide all of the functionality needed to make individual modules initialize and to allow them to be enabled and disabled using the MQTT interface.
Of the firmware modules, we already looked at the plant module inChapter 5, Example - Soil Humidity Monitor with Wi-Fi. Here we will look at the remaining modules, starting with the THP module:
#include "base_module.h" class THPModule { public: static bool initialize(); static bool start(); static bool shutdown(); }; #include "thp_module.h" #include "dht_module.h" #include "bme280_module.h" bool THPModule::initialize() { BaseModule::registerModule(MOD_IDX_TEMPERATURE_HUMIDITY, THPModule::start, THPModule::shutdown);...