|
ESPixelStick Firmware
Firmware for the ESPixelStick
|
#include <Arduino.h>#include <Ticker.h>#include <ArduinoJson.h>#include "memdebug.h"#include "ConstNames.hpp"#include "GPIO_Defs.hpp"#include "FastTimer.hpp"Go to the source code of this file.
Classes | |
| struct | config_t |
| Core configuration structure. More... | |
Macros | |
| #define | ARDUINOJSON_USE_LONG_LONG 1 |
| #define | ARDUINOJSON_DEFAULT_NESTING_LIMIT 15 |
| #define | REBOOT_DELAY 100 |
| Delay for rebooting once reboot flag is set. | |
| #define | LOG_PORT Serial |
| Serial port for console logging. | |
| #define | CLIENT_TIMEOUT 15 |
| In station/client mode try to connection for 15 seconds. | |
| #define | AP_TIMEOUT 120 |
| In AP mode, wait 120 seconds for a connection or reboot. | |
| #define | MilliSecondsInASecond 1000 |
| #define | MicroSecondsInAmilliSecond 1000 |
| #define | MicroSecondsInASecond (MicroSecondsInAmilliSecond * MilliSecondsInASecond) |
| #define | NanoSecondsInAMicroSecond 1000 |
| #define | NanoSecondsInASecond (MicroSecondsInASecond * NanoSecondsInAMicroSecond) |
| #define | NanoSecondsInAMilliSecond (NanoSecondsInAMicroSecond * MicroSecondsInAmilliSecond) |
| #define | CPU_ClockTimeNS ((1.0 / float(F_CPU)) * float(NanoSecondsInASecond)) |
| #define | STRINGIFY(X) |
| #define | STRING(X) |
| #define | JsonWrite(j, n, v) |
| #define | logcon(msg) |
| #define | LOAD_CONFIG_DELAY 4 |
Functions | |
| void | RequestReboot (String &Reason, uint32_t LoopDelay, bool SkipDisable=false) |
| bool | RebootInProgress () |
| void | DelayReboot (uint32_t MinDelay) |
| String | serializeCore (bool pretty=false) |
| void | deserializeCoreHandler (JsonDocument &jsonDoc) |
| bool | deserializeCore (JsonObject &json) |
| bool | dsDevice (JsonObject &json) |
| Deserialize device configuration JSON to config structure - returns true if config change detected. | |
| bool | dsNetwork (JsonObject &json) |
| struct | __attribute__ ((packed)) ConstConfig_t |
| void | FeedWDT () |
| void | PrettyPrint (JsonObject &jsonStuff, String Name) |
| void | PrettyPrint (JsonArray &jsonStuff, String Name) |
| void | PrettyPrint (JsonDocument &jsonStuff, String Name) |
| template<typename T , typename N > | |
| bool | setFromJSON (T &OutValue, JsonObject &Json, N Name) |
| template<typename N , size_t S> | |
| bool | setFromJSON (char(&OutValue)[S], JsonObject &Json, N Name) |
| template<typename T , typename N > | |
| bool | setFromJSON (T &OutValue, JsonVariant &Json, N Name) |
| void | ResetGpio (const gpio_num_t pinId) |
Variables | |
| ConstConfig_t | ConstConfig |
| bool | IsBooting |
| bool | ResetWiFi |
| uint32_t | DiscardedRxData |
| bool | ConsoleUartIsActive |
| config_t | config |
| bool | ConfigSaveNeeded |
| #define AP_TIMEOUT 120 |
In AP mode, wait 120 seconds for a connection or reboot.
| #define ARDUINOJSON_DEFAULT_NESTING_LIMIT 15 |
| #define ARDUINOJSON_USE_LONG_LONG 1 |
| #define CLIENT_TIMEOUT 15 |
In station/client mode try to connection for 15 seconds.
| #define CPU_ClockTimeNS ((1.0 / float(F_CPU)) * float(NanoSecondsInASecond)) |
| #define JsonWrite | ( | j, | |
| n, | |||
| v ) |
| #define LOAD_CONFIG_DELAY 4 |
| #define LOG_PORT Serial |
Serial port for console logging.
| #define logcon | ( | msg | ) |
| #define MicroSecondsInAmilliSecond 1000 |
| #define MicroSecondsInASecond (MicroSecondsInAmilliSecond * MilliSecondsInASecond) |
| #define MilliSecondsInASecond 1000 |
| #define NanoSecondsInAMicroSecond 1000 |
| #define NanoSecondsInAMilliSecond (NanoSecondsInAMicroSecond * MicroSecondsInAmilliSecond) |
| #define NanoSecondsInASecond (MicroSecondsInASecond * NanoSecondsInAMicroSecond) |
| #define REBOOT_DELAY 100 |
Delay for rebooting once reboot flag is set.
| #define STRINGIFY | ( | X | ) |
| struct __attribute__ | ( | (packed) | ) |
|
extern |
| bool deserializeCore | ( | JsonObject & | json | ) |
| void deserializeCoreHandler | ( | JsonDocument & | jsonDoc | ) |
| bool dsDevice | ( | JsonObject & | json | ) |
Deserialize device configuration JSON to config structure - returns true if config change detected.
| bool dsNetwork | ( | JsonObject & | json | ) |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
inline |
| String serializeCore | ( | bool | pretty = false | ) |
| bool setFromJSON | ( | char(&) | OutValue[S], |
| JsonObject & | Json, | ||
| N | Name ) |
| bool setFromJSON | ( | T & | OutValue, |
| JsonObject & | Json, | ||
| N | Name ) |
| bool setFromJSON | ( | T & | OutValue, |
| JsonVariant & | Json, | ||
| N | Name ) |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |