SensESP 3.0.1
Universal Signal K sensor toolkit ESP32
Loading...
Searching...
No Matches
sensesp Namespace Reference

Classes

class  AccessPointSettings
 Storage object for WiFi access point settings. More...
 
class  AirDensity
 Transforms temperature, relative humidity and pressure in air density. More...
 
class  AnalogInput
 Sensor for reading the MCU analog input pins. More...
 
class  AnalogVoltage
 A transform that takes the output of an analog-to-digital converter and outputs the voltage that went into it. (This can be the built-in ADC on the ESP, or it can be an external ADC like the ADS1015/1115.) More...
 
class  AngleCorrection
 Add a value to an angle input (in radians). The output value is wrapped to a range between [0, 2*pi]. This transform is useful for correcting e.g. a heading or a wind direction reading. More...
 
class  AsyncResponseHandler
 Handle async command responses from remote systems. More...
 
struct  AttitudeVector
 Container for attitude data. More...
 
class  BaseAnalogReader
 Used by AnalogInput as a hardware abstraction layer. More...
 
class  BaseBlinker
 A base class for LED blinker classes. More...
 
class  BaseButtonHandler
 Base class for button handlers. More...
 
class  ButtonHandler
 Default Button Handler for SensESPApp applications. More...
 
class  ChangeFilter
 A float passthrough transform that will only pass that value through if it is "sufficiently different" from the last value passed through. More...
 
class  CheckboxConfig
 
class  ClickType
 ClickType is a transform that consumes button clicks and translates them as events of type ClickTypes. Use AceButton instead. More...
 
class  ClientSSIDConfig
 Storage object for WiFi client settings. More...
 
class  ConfigItemBase
 
class  ConfigItemT
 Class providing sufficient data for rendering a config card in the frontend. More...
 
class  ConstantSensor
 ConstantSensor is the base class for virtual sensors that periodically emit a constant value. More...
 
class  CurveInterpolator
 Implement a piecewise linear interpolation transform. More...
 
class  Debounce
 Implements debounce code for a button or switch. More...
 
class  DewPoint
 Transforms temperature and relative humidity in dew point temperature. More...
 
class  DigitalInput
 DigitalInput is the base class for reading a digital GPIO pin. More...
 
class  DigitalInputChange
 DigitalInputChange provides output whenever a digital pin changes its state. More...
 
class  DigitalInputCounter
 DigitalInputCounter counts interrupts and reports the count every read_delay ms. More...
 
class  DigitalInputDebounceCounter
 DigitalInputDebounceCounter counts interrupts and reports the count every read_delay ms, but ignores events that happen within ignore_interval_ms. More...
 
class  DigitalInputState
 DigitalInputState polls the state of an input pin every read_delay ms. More...
 
class  DigitalOutput
 Sets a GPIO pin to whatever the input is (true = HIGH, false = LOW), and passes the value on to the next ValueConsumer. More...
 
class  Enable
 On/off switch for signals: input is emitted as-is if the enable flag is set in the web UI. More...
 
struct  ENUVector
 Container for local tangent plane coordinates. More...
 
class  ESP32AnalogReader
 
class  EvenBlinker
 An LED blinker class that blinks the LED 50% off, 50% on, at a given period. More...
 
class  ExpiringValue
 Value container that keeps track of its expiration time. More...
 
class  Filesystem
 
class  FileSystemSaveable
 
class  Filter
 Transform that only emits the output if the filter condition returns true. More...
 
class  FreeMem
 Reports the current amount of unused memory of the ESP. More...
 
class  Frequency
 Transforms its input into frequency (Hz: cycles per second) More...
 
class  HeatIndexEffect
 Transforms heat index temperature to heat index effect. More...
 
class  HeatIndexTemperature
 Transforms temperature and relative humidity in heat index temperature. More...
 
class  HTTPAuthenticator
 HTTP Authenticator base class. More...
 
class  HTTPDigestAuthenticator
 HTTP Digest Authenticator class. More...
 
class  HTTPRequestHandler
 HTTP request handler storage class. More...
 
class  HTTPServer
 HTTP server class wrapping the esp-idf http server. More...
 
class  Hysteresis
 Hysteresis function. More...
 
class  Integrator
 Integrator integrates (accumulates) the incoming values. More...
 
class  IPAddrDev
 Reports the IP address of the ESP once it's connected to wifi. More...
 
class  Join
 Join two producer values into a tuple. More...
 
class  Join3
 Merge three producer values into a tuple. More...
 
class  Join4
 Merge four producer values into a tuple. More...
 
class  Join5
 Merge five producer values into a tuple. More...
 
class  JoinBase
 
class  LambdaConsumer
 Provides an easy way of calling a function based on the output of any ValueProducer. More...
 
class  LambdaTransform
 Construct a new transform based on a single function. More...
 
class  Linear
 Performs a linear transform on the input value: output_ = (input * multiplier) + offset. More...
 
class  LocalDebug
 
class  MDNSDiscovery
 
class  Median
 Outputs the median value of sample_size inputs. More...
 
class  MinimalButtonHandler
 Minimal Button Handler. More...
 
class  MovingAverage
 Outputs the moving average of the last sample_size inputs. More...
 
class  Networking
 Manages the ESP's connection to the Wifi network. More...
 
struct  NonceData
 
class  Nullable
 Template class that supports a special invalid magic value for a type. More...
 
class  NumberConfig
 
class  Observable
 A base class which allow observers to attach callbacks to themselves. The callbacks will be called when the observable needs to notify the observers about some state change. More...
 
class  ObservableValue
 A value container that notifies its observers if it gets changed. More...
 
class  OTA
 
struct  ParamInfo
 
class  PatternBlinker
 A blinker that blinks the LED according to a defined repeating pattern. More...
 
class  PeriodicBlinker
 A base class for periodic blinkers. More...
 
class  PersistingObservableValue
 An ObservableValue that saves its value to the configuration. More...
 
struct  Position
 Position data container. More...
 
class  PressRepeater
 A transform that takes boolean inputs and adds button behaviors familiar to many device end users. DEPRECATED: use AceButton for button inputs. More...
 
class  PWMOutput
 Provides a cross platform mechanism for generating Pulse Width Modulation signals over one or more GPIO pins on the MCU. More...
 
class  RatioBlinker
 A periodic blinker that defines both the on-ratio and the period length. More...
 
class  Repeat
 Repeat the input at specific intervals. More...
 
class  RepeatConstantRate
 Repeat transform that emits the last value at a constant interval. More...
 
class  RepeatExpiring
 Repeat transform that emits an expired value if the value age exceeds max_age. More...
 
class  RepeatReport
 
class  RepeatSensor
 
class  RepeatStopping
 Repeat transform that stops emitting if the value age exceeds max_age. More...
 
class  Resettable
 Automatic calling of the reset() method when the device needs to be reset. More...
 
class  ResettableCompare
 
class  RgbLed
 A special device object that can be used to control a multi-channel color rgb LED light using up to 3 digital output channels. A "color" is defined using the standard 24 bit color depth numbers composed of three 8 bit channels for Red, Green, and Blue (see https://techterms.com/definition/rgb) More...
 
class  RoundToInt
 Takes as its input a float, rounds it to the nearest whole number, then outputs it as an int. More...
 
class  RouteDefinition
 
class  SafeQueue
 Thread-safe queue for inter-task communication. Works like std::queue. More...
 
class  Saveable
 Interface for saveable objects. More...
 
class  SelectConfig
 
class  SemaphoreValue
 A value container wrapped in a semaphore. More...
 
class  SensESPApp
 
class  SensESPAppBuilder
 A class for quickly configuring a SensESP application object before wiring up your sensors. More...
 
class  SensESPBaseApp
 The base class for SensESP applications. More...
 
class  SensESPBaseAppBuilder
 Abstract base class for other SensESP*AppBuilder classes. More...
 
class  SensESPMinimalApp
 
class  SensESPMinimalAppBuilder
 
class  Sensor
 Sensor template class for any sensor producing actual values. More...
 
class  SensorConfig
 The base class for all sensors. Used only as a base class - never instantiated directly in a project. More...
 
class  Serializable
 Interface for serializable objects. More...
 
class  SKDeltaQueue
 Signal K delta queue. More...
 
class  SKEmitter
 A class that produces Signal K output to be forwarded to the Signal K server (if the system is connected to one). Signal K is reported via the as_signalK() method. More...
 
class  SKListener
 An Obervable class that listens for Signal K stream deltas and notifies any observers of value changes. This serves as a base class for code that needs to listen to the stream, with the most common descendant being SKValueListener More...
 
class  SKMetadata
 Holds Signal K meta data that is associated with the sk_path an SKEmitter class may optionally send to the server. According to the official Signal K specification: "All keys in the Signal K specification must have a <tt>description</tt>, and where the key is a numeric value it must have <tt>units</tt>". Thus, any paths that you output that are not already part of the official Signal K specification should have these two fields defined as metadata. More...
 
class  SKOutput
 A specialized transform whose primary purpose is to output Signal K data on the Signal K network. More...
 
class  SKOutputNumeric
 A special class for sending numeric values to the Signal K server on a specific Signal K path. More...
 
class  SKOutputRawJson
 Class for sending raw Json strings on a specific Signal K path. More...
 
class  SKOutputTime
 
class  SKPutListener
 An Obervable class that listens for Signal K PUT requests coming over the websocket connection and notifies observers of the change. More...
 
class  SKPutRequest
 Used to send requests to the server to change the value of the specified path to a specific value according to the specification at https://signalk.org/specification/1.5.0/doc/put.html. More...
 
class  SKPutRequestBase
 A base class for all template variations of the PUT request class SKPutRequest. This base class keeps the compiler from generating reduntant object code for common functionality of each template version. More...
 
class  SKPutRequestListener
 An object that listens for PUT requests to come in for the specified SignalK path. The value is then emitted for further processing. More...
 
class  SKRequest
 A base class for all objects that are capable of sending "requests" to the SignalK server (and optionally receiving the responses) according to the specification located at https://signalk.org/specification/1.5.0/doc/request_response.html. More...
 
class  SKValueListener
 An ValueProducer that listens to specific Signal K paths and emits its value whenever it changes. More...
 
class  SKWSClient
 The websocket connection to the Signal K server. More...
 
class  SmartSwitchController
 A high level transform designed to control a digital output (such as a relay) via manual button presses or programatic commands. More...
 
class  Startable
 Dummy Startable class for backward compatibility. More...
 
struct  StaticFileData
 
class  StatusPageItem
 Item that renders its own value on the web UI status page. More...
 
class  StatusPageItemBase
 
class  StreamCharProducer
 ValueProducer that reads from a Stream and produces each character. More...
 
class  StreamLineProducer
 ValueProducer that reads from a Stream and produces a full line. More...
 
class  StringConfig
 
class  SymmetricTransform
 A common type of transform that consumes, transforms, then outputs values of the same data type. More...
 
class  SystemHz
 Reports the current clock speed of the ESP. More...
 
class  SystemStatusController
 Base class for a controller that can react to system status events. More...
 
class  SystemStatusLed
 Consumes the networking and websocket states and delta counts and updates the device LED accordingly. Inherit this class and override the methods to customize the behavior. More...
 
class  TaskQueueProducer
 Producer class that works across task boundaries. More...
 
class  TextToTruth
 Consumes a string and outputs boolean "true" if the text represents a human readable version of "true". More...
 
class  ThresholdTransform
 A Transform base class that translates the value of type C into boolean. Base class for classes FloatThreshold and IntThreshold. More...
 
class  Throttle
 Throttle the input rate. More...
 
class  TimeCounter
 A transform that outputs the duration of the input value being true or non-null. More...
 
class  TimeString
 Consumes a time_t time object and produces a human readable string of the time for UTC in ISO 8601 format. More...
 
class  Transform
 The main Transform class. A transform is identified primarily by the type of value that is produces (i.e. a Transform<float> is a ValueProducer<float> that generates float values) More...
 
class  TransformBase
 The base class for all transforms. A transforms takes a value in, transforms it in some way, and outputs the transformed value. More...
 
class  TruthToText
 Consumes a boolean value and outputs one the appropriate truth string specified in the constructor. This is the inverse of TextToTruth. More...
 
class  Typecast
 Converts input from one data type to another, then outputs the new type. More...
 
class  UIButton
 UIButton implements a button interface on the web UI. More...
 
class  Uptime
 Reports the number of seconds since the last restart of the ESP. More...
 
class  ValueConsumer
 A base class for piece of code (like a transform) that accepts data for input. ValueConsumers can accept one or more input values via the set() method. They are connected to ValueProducers via the connect_to() method. More...
 
class  ValueProducer
 A base class for any sensor or piece of code that outputs a value for consumption elsewhere. More...
 
class  VoltageDividerR1
 Uses the voltage divider formula to calculate (and output) the resistance of R1 in the circuit. More...
 
class  VoltageDividerR2
 Uses the voltage divider formula to calculate (and output) the resistance of R2 in the circuit. More...
 
class  VoltageMultiplier
 OBSOLETE: Since you can now apply an "output_scale" to the AnalogInput sensor, you don't need this transform anymore. See the description of "output_scale" in analog_input.h. More...
 
class  WiFiNetworkInfo
 WiFi Network Information storage class. More...
 
class  WiFiSignal
 Reports the current strength of the wifi signal that the ESP is connected to. More...
 
class  WiFiStateProducer
 Provide information about the current WiFi state. More...
 
class  Zip
 Zip two producer values into a tuple. More...
 
class  Zip3
 Zip three producer values into a tuple. More...
 
class  Zip4
 Zip four producer values into a tuple. More...
 
class  Zip5
 Zip five producer values into a tuple. More...
 
class  ZipBase
 

Typedefs

typedef std::function< void()> void_cb_func
 
using WifiState = WiFiState
 
typedef ESP32AnalogReader AnalogReader
 
typedef ConstantSensor< float > FloatConstantSensor
 
typedef ConstantSensor< int > IntConstantSensor
 
typedef ConstantSensor< bool > BoolConstantSensor
 
typedef ConstantSensor< String > StringConstantSensor
 
typedef Sensor< float > FloatSensor
 
typedef Sensor< int > IntSensor
 
typedef Sensor< bool > BoolSensor
 
typedef Sensor< String > StringSensor
 
typedef SKOutputNumeric< float > SKOutputFloat
 
typedef SKOutputNumeric< int > SKOutputInt
 
typedef SKOutput< bool > SKOutputBool
 
typedef SKOutput< String > SKOutputString
 
typedef SKPutRequest< float > FloatSKPutRequest
 
typedef SKPutRequest< int > IntSKPutRequest
 
typedef SKPutRequest< bool > BoolSKPutRequest
 
typedef SKPutRequest< String > StringSKPutRequest
 
typedef SKPutRequestListener< float > FloatSKPutRequestListener
 
typedef SKPutRequestListener< int > IntSKPutRequestListener
 
typedef SKPutRequestListener< bool > BoolSKPutRequestListener
 
typedef SKPutRequestListener< String > StringSKPutRequestListener
 
typedef SKOutput< PositionSKOutputPosition
 
typedef SKOutput< ENUVectorSKOutputENUVector
 
typedef SKOutput< AttitudeVectorSKOutputAttitudeVector
 
typedef SKValueListener< float > FloatSKListener
 
typedef SKValueListener< int > IntSKListener
 
typedef SKValueListener< bool > BoolSKListener
 
typedef SKValueListener< String > StringSKListener
 
typedef ValueConsumer< float > FloatConsumer
 
typedef ValueConsumer< int > IntConsumer
 
typedef ValueConsumer< bool > BoolConsumer
 
typedef ValueConsumer< String > StringConsumer
 
typedef ValueProducer< float > FloatProducer
 
typedef ValueProducer< int > IntProducer
 
typedef ValueProducer< bool > BoolProducer
 
typedef ValueProducer< String > StringProducer
 
typedef Debounce< bool > DebounceBool
 
typedef Debounce< int > DebounceInt
 
typedef Debounce< float > DebounceFloat
 
typedef Integrator< float, float > FloatIntegrator
 
typedef Integrator< int, int > Accumulator
 
typedef ThresholdTransform< float > FloatThreshold
 
typedef ThresholdTransform< int > IntThreshold
 
typedef SymmetricTransform< float > FloatTransform
 
typedef SymmetricTransform< int > IntegerTransform
 
typedef SymmetricTransform< bool > BooleanTransform
 
typedef SymmetricTransform< String > StringTransform
 
typedef Typecast< int, bool > IntToBool
 
typedef Typecast< bool, int > BoolToInt
 
typedef Typecast< int, float > IntToFloat
 
typedef Typecast< float, int > FloatToInt
 
typedef Nullable< int > NullableInt
 
typedef Nullable< float > NullableFloat
 
typedef Nullable< double > NullableDouble
 
typedef Nullable< bool > NullableBool
 

Enumerations

enum class  SystemStatus {
  kWifiNoAP = 100 , kWifiDisconnected , kWifiManagerActivated , kSKWSDisconnected ,
  kSKWSAuthorizing , kSKWSConnecting , kSKWSConnected
}
 
enum class  WiFiState {
  kWifiNoAP = 0 , kWifiDisconnected , kWifiConnectedToAP , kWifiManagerActivated ,
  kWifiAPModeActivated
}
 
enum class  SKWSConnectionState { kSKWSDisconnected , kSKWSAuthorizing , kSKWSConnecting , kSKWSConnected }
 
enum class  AsyncResponseStatus {
  kReady , kPending , kSuccess , kFailure ,
  kTimeout
}
 
enum class  ClickTypes {
  ButtonPress , ButtonRelease , SingleClick , LongSingleClick ,
  UltraLongSingleClick , DoubleClick
}
 
enum class  SelectType { kUndefined , kCheckbox , kSelect }
 

Functions

std::shared_ptr< reactesp::EventLoop > event_loop ()
 
const String ConfigSchema (const SmartSwitchController &obj)
 
String get_random_hex_string ()
 
void urldecode2 (char *dst, const char *src)
 
esp_err_t call_request_dispatcher (httpd_req_t *req)
 
String get_content_type (httpd_req_t *req)
 
const String ConfigSchema (const HTTPServer &obj)
 
bool ConfigRequiresRestart (const HTTPServer &obj)
 
const String ConfigSchema (const Networking &obj)
 
bool ConfigRequiresRestart (const Networking &obj)
 
void add_scan_wifi_networks_handlers (std::shared_ptr< HTTPServer > &server)
 
void add_app_http_command_handlers (std::shared_ptr< HTTPServer > &server)
 
void add_http_reset_handler (std::shared_ptr< HTTPServer > &server)
 
void add_http_restart_handler (std::shared_ptr< HTTPServer > &server)
 
void add_http_info_handler (std::shared_ptr< HTTPServer > &server)
 
void add_routes_handlers (std::shared_ptr< HTTPServer > &server)
 
void add_base_app_http_command_handlers (std::shared_ptr< HTTPServer > &server)
 
bool get_item_data (JsonDocument &doc, const std::shared_ptr< ConfigItemBase > &item)
 
esp_err_t handle_config_item_list (httpd_req_t *req)
 
void add_config_list_handler (std::shared_ptr< HTTPServer > &server)
 
void add_config_get_handler (std::shared_ptr< HTTPServer > &server)
 
void add_config_put_handler (std::shared_ptr< HTTPServer > &server)
 
void add_config_handlers (std::shared_ptr< HTTPServer > &server)
 Handle HTTP requests to /config.
 
void add_static_file_handlers (std::shared_ptr< HTTPServer > server)
 Provide handlers for static web content.
 
const String ConfigSchema (AnalogInput &obj)
 
bool ConfigRequiresRestart (const AnalogInput &obj)
 
template<typename T >
const String ConfigSchemaSensorType (const T &obj)
 
template<>
const String ConfigSchemaSensorType< int > (const int &obj)
 
template<>
const String ConfigSchemaSensorType< float > (const float &obj)
 
template<>
const String ConfigSchemaSensorType< String > (const String &obj)
 
template<>
const String ConfigSchemaSensorType< bool > (const bool &obj)
 
template<typename T >
const String ConfigSchema (const ConstantSensor< T > &obj)
 
const String ConfigSchema (DigitalInputState &obj)
 
bool ConfigRequiresRestart (const DigitalInputState &obj)
 
const String ConfigSchema (const DigitalInputCounter &obj)
 
bool ConfigRequiresRestart (const DigitalInputCounter &obj)
 
const String ConfigSchema (const DigitalInputDebounceCounter &obj)
 
bool ConfigRequiresRestart (const DigitalInputDebounceCounter &obj)
 
const String ConfigSchema (const DigitalInputState &obj)
 
template<typename T >
void connect_system_info_sensor (std::shared_ptr< ValueProducer< T > > &sensor, const String &prefix, const String &name)
 Connect a system information sensor to SKOutput.
 
const String ConfigSchema (const SKListener &obj)
 
template<typename T >
const String ConfigSchema (const SKOutput< T > &obj)
 
template<typename T >
bool ConfigRequiresRestart (const SKOutput< T > &obj)
 
template<typename T >
const String ConfigSchema (const SKPutRequest< T > &obj)
 
const String ConfigSchema (const SKOutputTime &obj)
 
void ExecuteWebSocketTask (void *)
 
const String ConfigSchema (const SKWSClient &obj)
 
bool ConfigRequiresRestart (const SKWSClient &obj)
 
void Sha1 (const String &payload_str, uint8_t *hash_output)
 SHA-1 hash function.
 
String MD5 (const String &payload_str)
 MD5 hash function.
 
String Base64Sha1 (const String &payload_str)
 A base64-encoded SHA-1 hash function.
 
template<class T >
bool operator== (ObservableValue< T > const &lhs, T const &rhs)
 
template<class T >
bool operator!= (ObservableValue< T > const &lhs, T const &rhs)
 
template<class T >
const String ConfigSchema (const PersistingObservableValue< T > &obj)
 
const String ConfigSchema (const RgbLed &obj)
 
String generate_uuid4 ()
 Generate a random UUIDv4 string.
 
const String ConfigSchema (const AnalogVoltage &obj)
 
const String ConfigSchema (const AngleCorrection &obj)
 
const String ConfigSchema (ChangeFilter &obj)
 
const String ConfigSchema (const ClickType &obj)
 
const char * ConfigSchema (const CurveInterpolator &obj)
 
const String ConfigSchema (const Debounce< bool > &obj)
 
template<typename U >
const String ConfigSchema (const Enable< U > &obj)
 
const String ConfigSchema (const Frequency &obj)
 
template<typename T >
const String ConfigSchema (const Integrator< T, T > &obj)
 
template<class IN , class OUT >
const String ConfigSchema (const LambdaTransform< IN, OUT > &obj)
 
template<class IN , class OUT , class P1 >
const String ConfigSchema (const LambdaTransform< IN, OUT, P1 > &obj)
 
template<class IN , class OUT , class P1 , class P2 >
const String ConfigSchema (const LambdaTransform< IN, OUT, P1, P2 > &obj)
 
template<class IN , class OUT , class P1 , class P2 , class P3 >
const String ConfigSchema (const LambdaTransform< IN, OUT, P1, P2, P3 > &obj)
 
template<class IN , class OUT , class P1 , class P2 , class P3 , class P4 >
const String ConfigSchema (const LambdaTransform< IN, OUT, P1, P2, P3, P4 > &obj)
 
template<class IN , class OUT , class P1 , class P2 , class P3 , class P4 , class P5 >
const String ConfigSchema (const LambdaTransform< IN, OUT, P1, P2, P3, P4, P5 > *obj)
 
template<class IN , class OUT , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 >
const String ConfigSchema (const LambdaTransform< IN, OUT, P1, P2, P3, P4, P5, P6 > *obj)
 
const String ConfigSchema (const Median &obj)
 
bool ConfigRequiresRestart (const Median &obj)
 
const String ConfigSchema (const MovingAverage &obj)
 
bool ConfigRequiresRestart (const MovingAverage &obj)
 
const String ConfigSchema (const PressRepeater &obj)
 
const String ConfigSchema (const ThresholdTransform< float > &obj)
 
const String ConfigSchema (const ThresholdTransform< int > &obj)
 
uint64_t ARDUINO_ISR_ATTR millis64 ()
 
template<typename U >
const String ConfigSchema (TimeCounter< U > &obj)
 
const String ConfigSchema (const VoltageMultiplier &obj)
 
const String ConfigSchema (const VoltageDividerR1 &obj)
 
const String ConfigSchema (const VoltageDividerR2 &obj)
 
template<typename T >
void convertFromJson (JsonVariantConst src, Nullable< T > &dst)
 
template<typename T >
void convertToJson (const Nullable< T > &src, JsonVariant dst)
 
void convertFromJson (JsonVariantConst src, Position &dst)
 Adds support in ArduinoJson to deserialize Position type data.
 
void convertFromJson (JsonVariantConst src, ENUVector &dst)
 
void convertFromJson (JsonVariantConst src, AttitudeVector &dst)
 
bool canConvertFromJson (JsonVariantConst src, const Position &)
 Tells ArduinoJson whether the given JSON is a Position or not.
 
bool canConvertFromJson (JsonVariantConst src, const ENUVector &)
 
bool canConvertFromJson (JsonVariantConst src, const AttitudeVector &)
 
void convertToJson (const Position &src, JsonVariant dst)
 
void convertToJson (const ENUVector &src, JsonVariant dst)
 
void convertToJson (const AttitudeVector &src, JsonVariant dst)
 
template<>
const char * get_schema_type_string (const int)
 
template<>
const char * get_schema_type_string (const float)
 
template<>
const char * get_schema_type_string (const String &)
 
template<>
const char * get_schema_type_string (const bool)
 
template<class T >
const char * get_schema_type_string (const T dummy)
 
template<>
const char * get_schema_type_string (const int dummy)
 
template<>
const char * get_schema_type_string (const float dummy)
 
template<>
const char * get_schema_type_string (const String &dummy)
 
template<>
const char * get_schema_type_string (const bool dummy)
 
const String ConfigSchema (const std::nullptr_t &obj)
 Provide a configuration schema for a ConfigItemT<nullptr>.
 
template<typename T >
bool ConfigRequiresRestart (const T &obj)
 
template<typename T >
bool ConfigRequiresRestart (const std::shared_ptr< T > &obj)
 
template<typename T >
std::shared_ptr< ConfigItemT< T > > ConfigItem (std::shared_ptr< T > config_object)
 Register a ConfigItemT with the ConfigItemBase.
 
template<typename T >
std::shared_ptr< ConfigItemT< T > > ConfigItem (T *config_object)
 
const String ConfigSchema (const StringConfig &obj)
 
const String ConfigSchema (const NumberConfig &obj)
 
const String ConfigSchema (const CheckboxConfig &obj)
 
const String ConfigSchema (const SelectConfig &obj)
 
void SetupLogging (esp_log_level_t default_level=ESP_LOG_VERBOSE)
 
void SetupSerialDebug (uint32_t baudrate)
 

Variables

constexpr int kMaxNumClientConfigs = 3
 
const StaticFileData kFrontendFiles []
 
const char kContentType [] = "Content-Type"
 
const char kContentEncoding [] = "Content-Encoding"
 
const char *const kSensESPVersion = "3.0.1"
 
constexpr int kWsClientTaskStackSize = 8192
 
SKWSClientws_client
 
int no_ap_pattern [] = {50, 950, PATTERN_END}
 
int wifi_disconnected_pattern [] = {300, 700, PATTERN_END}
 
int wifi_connected_pattern [] = {700, 300, PATTERN_END}
 
int ws_connecting_pattern [] = {650, 50, 50, 50, 50, 50, 50, 50, PATTERN_END}
 
int wifimanager_pattern [] = {1000, 0, PATTERN_END}
 
int ws_connected_pattern [] = {900, 100, PATTERN_END}
 
int ws_disconnected_pattern [] = {50, 50, 50, 50, 50, 50, 50, 650, PATTERN_END}
 
int ws_authorizing_pattern [] = {200, 200, PATTERN_END}
 
constexpr double kPi = 3.14159265358979323846
 
const ParamInfo hysteresis_param_info [4]
 
constexpr double kInvalidDouble = std::numeric_limits<double>::lowest()
 Value used to indicate an invalid or missing altitude.
 
constexpr float kPositionInvalidAltitude = std::numeric_limits<float>::lowest()
 
constexpr char kUIOutputDefaultGroup [] = "Default"
 
constexpr int kUIOutputDefaultOrder = 1000
 
std::shared_ptr< SensESPAppsensesp_app
 
constexpr auto kDefaultHostname = "SensESP"
 

Typedef Documentation

◆ Accumulator

typedef Integrator<int, int> sensesp::Accumulator

Definition at line 64 of file integrator.h.

◆ AnalogReader

Definition at line 65 of file analog_reader.h.

◆ BoolConstantSensor

Definition at line 118 of file constant_sensor.h.

◆ BoolConsumer

Definition at line 49 of file valueconsumer.h.

◆ BooleanTransform

Definition at line 101 of file transform.h.

◆ BoolProducer

Definition at line 106 of file valueproducer.h.

◆ BoolSensor

typedef Sensor<bool> sensesp::BoolSensor

Definition at line 48 of file sensor.h.

◆ BoolSKListener

Definition at line 39 of file signalk_value_listener.h.

◆ BoolSKPutRequest

Definition at line 180 of file signalk_put_request.h.

◆ BoolSKPutRequestListener

◆ BoolToInt

typedef Typecast<bool, int> sensesp::BoolToInt

Definition at line 43 of file typecast.h.

◆ DebounceBool

Definition at line 83 of file debounce.h.

◆ DebounceFloat

Definition at line 85 of file debounce.h.

◆ DebounceInt

Definition at line 84 of file debounce.h.

◆ FloatConstantSensor

Definition at line 116 of file constant_sensor.h.

◆ FloatConsumer

Definition at line 47 of file valueconsumer.h.

◆ FloatIntegrator

typedef Integrator<float, float> sensesp::FloatIntegrator

Definition at line 63 of file integrator.h.

◆ FloatProducer

Definition at line 104 of file valueproducer.h.

◆ FloatSensor

typedef Sensor<float> sensesp::FloatSensor

Definition at line 46 of file sensor.h.

◆ FloatSKListener

Definition at line 37 of file signalk_value_listener.h.

◆ FloatSKPutRequest

Definition at line 178 of file signalk_put_request.h.

◆ FloatSKPutRequestListener

◆ FloatThreshold

Definition at line 74 of file threshold.h.

◆ FloatToInt

typedef Typecast<float, int> sensesp::FloatToInt

Definition at line 46 of file typecast.h.

◆ FloatTransform

Definition at line 99 of file transform.h.

◆ IntConstantSensor

Definition at line 117 of file constant_sensor.h.

◆ IntConsumer

Definition at line 48 of file valueconsumer.h.

◆ IntegerTransform

Definition at line 100 of file transform.h.

◆ IntProducer

Definition at line 105 of file valueproducer.h.

◆ IntSensor

typedef Sensor<int> sensesp::IntSensor

Definition at line 47 of file sensor.h.

◆ IntSKListener

Definition at line 38 of file signalk_value_listener.h.

◆ IntSKPutRequest

Definition at line 179 of file signalk_put_request.h.

◆ IntSKPutRequestListener

◆ IntThreshold

Definition at line 75 of file threshold.h.

◆ IntToBool

typedef Typecast<int, bool> sensesp::IntToBool

Definition at line 42 of file typecast.h.

◆ IntToFloat

typedef Typecast<int, float> sensesp::IntToFloat

Definition at line 45 of file typecast.h.

◆ NullableBool

Definition at line 55 of file nullable.h.

◆ NullableDouble

Definition at line 54 of file nullable.h.

◆ NullableFloat

Definition at line 53 of file nullable.h.

◆ NullableInt

Definition at line 52 of file nullable.h.

◆ SKOutputAttitudeVector

◆ SKOutputBool

Definition at line 135 of file signalk_output.h.

◆ SKOutputENUVector

Definition at line 21 of file signalk_types.h.

◆ SKOutputFloat

Definition at line 133 of file signalk_output.h.

◆ SKOutputInt

Definition at line 134 of file signalk_output.h.

◆ SKOutputPosition

Definition at line 20 of file signalk_types.h.

◆ SKOutputString

Definition at line 136 of file signalk_output.h.

◆ StringConstantSensor

Definition at line 119 of file constant_sensor.h.

◆ StringConsumer

Definition at line 50 of file valueconsumer.h.

◆ StringProducer

Definition at line 107 of file valueproducer.h.

◆ StringSensor

typedef Sensor<String> sensesp::StringSensor

Definition at line 49 of file sensor.h.

◆ StringSKListener

Definition at line 40 of file signalk_value_listener.h.

◆ StringSKPutRequest

Definition at line 181 of file signalk_put_request.h.

◆ StringSKPutRequestListener

◆ StringTransform

Definition at line 102 of file transform.h.

◆ void_cb_func

typedef std::function<void()> sensesp::void_cb_func

Definition at line 21 of file sensesp.h.

◆ WifiState

Definition at line 15 of file wifi_state.h.

Enumeration Type Documentation

◆ AsyncResponseStatus

enum class sensesp::AsyncResponseStatus
strong
Enumerator
kReady 
kPending 
kSuccess 
kFailure 
kTimeout 

Definition at line 14 of file async_response_handler.h.

◆ ClickTypes

enum class sensesp::ClickTypes
strong

ClickTypes defines the types of clicks and button presses a ClickType transform can detect

Enumerator
ButtonPress 
ButtonRelease 
SingleClick 
LongSingleClick 
UltraLongSingleClick 
DoubleClick 

Definition at line 15 of file click_type.h.

◆ SelectType

enum class sensesp::SelectType
strong
Enumerator
kUndefined 
kCheckbox 
kSelect 

Definition at line 80 of file ui_controls.h.

◆ SKWSConnectionState

enum class sensesp::SKWSConnectionState
strong
Enumerator
kSKWSDisconnected 
kSKWSAuthorizing 
kSKWSConnecting 
kSKWSConnected 

Definition at line 23 of file signalk_ws_client.h.

◆ SystemStatus

enum class sensesp::SystemStatus
strong
Enumerator
kWifiNoAP 
kWifiDisconnected 
kWifiManagerActivated 
kSKWSDisconnected 
kSKWSAuthorizing 
kSKWSConnecting 
kSKWSConnected 

Definition at line 11 of file system_status_controller.h.

◆ WiFiState

enum class sensesp::WiFiState
strong
Enumerator
kWifiNoAP 
kWifiDisconnected 
kWifiConnectedToAP 
kWifiManagerActivated 
kWifiAPModeActivated 

Definition at line 6 of file wifi_state.h.

Function Documentation

◆ add_app_http_command_handlers()

void sensesp::add_app_http_command_handlers ( std::shared_ptr< HTTPServer > & server)

Definition at line 56 of file app_command_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_base_app_http_command_handlers()

void sensesp::add_base_app_http_command_handlers ( std::shared_ptr< HTTPServer > & server)

Definition at line 117 of file base_command_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_config_get_handler()

void sensesp::add_config_get_handler ( std::shared_ptr< HTTPServer > & server)

Definition at line 88 of file config_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_config_handlers()

void sensesp::add_config_handlers ( std::shared_ptr< HTTPServer > & server)

Handle HTTP requests to /config.

This class handles HTTP requests to /config. It is used by the HTTPServer to provide a RESTful API for configuring Configurable objects.

Definition at line 207 of file config_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_config_list_handler()

void sensesp::add_config_list_handler ( std::shared_ptr< HTTPServer > & server)

Definition at line 82 of file config_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_config_put_handler()

void sensesp::add_config_put_handler ( std::shared_ptr< HTTPServer > & server)

Definition at line 131 of file config_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_http_info_handler()

void sensesp::add_http_info_handler ( std::shared_ptr< HTTPServer > & server)

Definition at line 31 of file base_command_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_http_reset_handler()

void sensesp::add_http_reset_handler ( std::shared_ptr< HTTPServer > & server)

Definition at line 8 of file base_command_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_http_restart_handler()

void sensesp::add_http_restart_handler ( std::shared_ptr< HTTPServer > & server)

Definition at line 21 of file base_command_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_routes_handlers()

void sensesp::add_routes_handlers ( std::shared_ptr< HTTPServer > & server)

Definition at line 53 of file base_command_handler.cpp.

Here is the caller graph for this function:

◆ add_scan_wifi_networks_handlers()

void sensesp::add_scan_wifi_networks_handlers ( std::shared_ptr< HTTPServer > & server)

Definition at line 10 of file app_command_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ add_static_file_handlers()

void sensesp::add_static_file_handlers ( std::shared_ptr< HTTPServer > server)

Provide handlers for static web content.

Definition at line 7 of file static_file_handler.cpp.

Here is the caller graph for this function:

◆ Base64Sha1()

String sensesp::Base64Sha1 ( const String & payload_str)

A base64-encoded SHA-1 hash function.

For filesystem compatibility, the output string is further scrubbed to replace "/" with "_".

Parameters
payload_str
Returns
String

Definition at line 72 of file hash.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ call_request_dispatcher()

esp_err_t sensesp::call_request_dispatcher ( httpd_req_t * req)

Definition at line 178 of file http_server.cpp.

◆ canConvertFromJson() [1/3]

bool sensesp::canConvertFromJson ( JsonVariantConst src,
const AttitudeVector &  )

Definition at line 39 of file position.cpp.

◆ canConvertFromJson() [2/3]

bool sensesp::canConvertFromJson ( JsonVariantConst src,
const ENUVector &  )

Definition at line 35 of file position.cpp.

◆ canConvertFromJson() [3/3]

bool sensesp::canConvertFromJson ( JsonVariantConst src,
const Position &  )

Tells ArduinoJson whether the given JSON is a Position or not.

This function is automatically called by ArduinoJson whenever it has to convert a JSON to a Position struct.

Parameters
srcA JSON document
Returns
true if the given JSON contains "latitude" and "longitude" keys
false if the given JSON doesn't contain "latitude" or "longitude" keys

Definition at line 31 of file position.cpp.

◆ ConfigItem() [1/2]

template<typename T >
std::shared_ptr< ConfigItemT< T > > sensesp::ConfigItem ( std::shared_ptr< T > config_object)

Register a ConfigItemT with the ConfigItemBase.

Note, this function only exists to avoid having to provide the template argument when creating a ConfigItemT. It should be possible to remove it once C++17 is supported.

Template Parameters
T
Parameters
config_object
title
description
sort_order
Returns
T*

Definition at line 289 of file config_item.h.

Here is the caller graph for this function:

◆ ConfigItem() [2/2]

template<typename T >
std::shared_ptr< ConfigItemT< T > > sensesp::ConfigItem ( T * config_object)

Definition at line 300 of file config_item.h.

Here is the call graph for this function:

◆ ConfigRequiresRestart() [1/12]

bool sensesp::ConfigRequiresRestart ( const AnalogInput & obj)
inline

Definition at line 61 of file analog_input.h.

◆ ConfigRequiresRestart() [2/12]

bool sensesp::ConfigRequiresRestart ( const DigitalInputCounter & obj)

Definition at line 85 of file digital_input.cpp.

◆ ConfigRequiresRestart() [3/12]

bool sensesp::ConfigRequiresRestart ( const DigitalInputDebounceCounter & obj)

Definition at line 93 of file digital_input.cpp.

◆ ConfigRequiresRestart() [4/12]

bool sensesp::ConfigRequiresRestart ( const DigitalInputState & obj)

Definition at line 77 of file digital_input.cpp.

◆ ConfigRequiresRestart() [5/12]

bool sensesp::ConfigRequiresRestart ( const HTTPServer & obj)
inline

Definition at line 186 of file http_server.h.

Here is the caller graph for this function:

◆ ConfigRequiresRestart() [6/12]

bool sensesp::ConfigRequiresRestart ( const Median & obj)
inline

Definition at line 35 of file median.h.

◆ ConfigRequiresRestart() [7/12]

bool sensesp::ConfigRequiresRestart ( const MovingAverage & obj)
inline

Definition at line 52 of file moving_average.h.

◆ ConfigRequiresRestart() [8/12]

bool sensesp::ConfigRequiresRestart ( const Networking & obj)
inline

Definition at line 290 of file networking.h.

◆ ConfigRequiresRestart() [9/12]

template<typename T >
bool sensesp::ConfigRequiresRestart ( const SKOutput< T > & obj)

Definition at line 88 of file signalk_output.h.

◆ ConfigRequiresRestart() [10/12]

bool sensesp::ConfigRequiresRestart ( const SKWSClient & obj)
inline

Definition at line 169 of file signalk_ws_client.h.

◆ ConfigRequiresRestart() [11/12]

template<typename T >
bool sensesp::ConfigRequiresRestart ( const std::shared_ptr< T > & obj)

Definition at line 57 of file config_item.h.

Here is the call graph for this function:

◆ ConfigRequiresRestart() [12/12]

template<typename T >
bool sensesp::ConfigRequiresRestart ( const T & obj)

Definition at line 52 of file config_item.h.

◆ ConfigSchema() [1/46]

const String sensesp::ConfigSchema ( AnalogInput & obj)

Definition at line 42 of file analog_input.cpp.

◆ ConfigSchema() [2/46]

const String sensesp::ConfigSchema ( ChangeFilter & obj)

Definition at line 53 of file change_filter.cpp.

◆ ConfigSchema() [3/46]

const String sensesp::ConfigSchema ( const AnalogVoltage & obj)

Definition at line 39 of file analogvoltage.cpp.

◆ ConfigSchema() [4/46]

const String sensesp::ConfigSchema ( const AngleCorrection & obj)

Definition at line 43 of file angle_correction.cpp.

◆ ConfigSchema() [5/46]

const String sensesp::ConfigSchema ( const CheckboxConfig & obj)
inline

Definition at line 74 of file ui_controls.h.

◆ ConfigSchema() [6/46]

const String sensesp::ConfigSchema ( const ClickType & obj)

Definition at line 174 of file click_type.cpp.

◆ ConfigSchema() [7/46]

template<typename T >
const String sensesp::ConfigSchema ( const ConstantSensor< T > & obj)

Definition at line 105 of file constant_sensor.h.

Here is the call graph for this function:

◆ ConfigSchema() [8/46]

const char * sensesp::ConfigSchema ( const CurveInterpolator & obj)
inline

Definition at line 91 of file curveinterpolator.h.

◆ ConfigSchema() [9/46]

const String sensesp::ConfigSchema ( const Debounce< bool > & obj)

Definition at line 5 of file debounce.cpp.

◆ ConfigSchema() [10/46]

const String sensesp::ConfigSchema ( const DigitalInputCounter & obj)

Definition at line 81 of file digital_input.cpp.

◆ ConfigSchema() [11/46]

const String sensesp::ConfigSchema ( const DigitalInputDebounceCounter & obj)

Definition at line 89 of file digital_input.cpp.

◆ ConfigSchema() [12/46]

const String sensesp::ConfigSchema ( const DigitalInputState & obj)

◆ ConfigSchema() [13/46]

template<typename U >
const String sensesp::ConfigSchema ( const Enable< U > & obj)

Definition at line 49 of file enable.h.

◆ ConfigSchema() [14/46]

const String sensesp::ConfigSchema ( const Frequency & obj)

Definition at line 37 of file frequency.cpp.

◆ ConfigSchema() [15/46]

const String sensesp::ConfigSchema ( const HTTPServer & obj)
inline

Definition at line 182 of file http_server.h.

◆ ConfigSchema() [16/46]

template<typename T >
const String sensesp::ConfigSchema ( const Integrator< T, T > & obj)

Definition at line 59 of file integrator.h.

◆ ConfigSchema() [17/46]

template<class IN , class OUT >
const String sensesp::ConfigSchema ( const LambdaTransform< IN, OUT > & obj)

Definition at line 281 of file lambda_transform.h.

◆ ConfigSchema() [18/46]

template<class IN , class OUT , class P1 >
const String sensesp::ConfigSchema ( const LambdaTransform< IN, OUT, P1 > & obj)

Definition at line 288 of file lambda_transform.h.

Here is the call graph for this function:

◆ ConfigSchema() [19/46]

template<class IN , class OUT , class P1 , class P2 >
const String sensesp::ConfigSchema ( const LambdaTransform< IN, OUT, P1, P2 > & obj)

Definition at line 300 of file lambda_transform.h.

Here is the call graph for this function:

◆ ConfigSchema() [20/46]

template<class IN , class OUT , class P1 , class P2 , class P3 >
const String sensesp::ConfigSchema ( const LambdaTransform< IN, OUT, P1, P2, P3 > & obj)

Definition at line 317 of file lambda_transform.h.

Here is the call graph for this function:

◆ ConfigSchema() [21/46]

template<class IN , class OUT , class P1 , class P2 , class P3 , class P4 >
const String sensesp::ConfigSchema ( const LambdaTransform< IN, OUT, P1, P2, P3, P4 > & obj)

Definition at line 339 of file lambda_transform.h.

Here is the call graph for this function:

◆ ConfigSchema() [22/46]

template<class IN , class OUT , class P1 , class P2 , class P3 , class P4 , class P5 >
const String sensesp::ConfigSchema ( const LambdaTransform< IN, OUT, P1, P2, P3, P4, P5 > * obj)

Definition at line 365 of file lambda_transform.h.

Here is the call graph for this function:

◆ ConfigSchema() [23/46]

template<class IN , class OUT , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 >
const String sensesp::ConfigSchema ( const LambdaTransform< IN, OUT, P1, P2, P3, P4, P5, P6 > * obj)

Definition at line 397 of file lambda_transform.h.

Here is the call graph for this function:

◆ ConfigSchema() [24/46]

const String sensesp::ConfigSchema ( const Median & obj)

Definition at line 45 of file median.cpp.

◆ ConfigSchema() [25/46]

const String sensesp::ConfigSchema ( const MovingAverage & obj)

Definition at line 62 of file moving_average.cpp.

◆ ConfigSchema() [26/46]

const String sensesp::ConfigSchema ( const Networking & obj)
inline

Definition at line 286 of file networking.h.

◆ ConfigSchema() [27/46]

const String sensesp::ConfigSchema ( const NumberConfig & obj)
inline

Definition at line 49 of file ui_controls.h.

◆ ConfigSchema() [28/46]

template<class T >
const String sensesp::ConfigSchema ( const PersistingObservableValue< T > & obj)

Definition at line 128 of file observablevalue.h.

Here is the call graph for this function:

◆ ConfigSchema() [29/46]

const String sensesp::ConfigSchema ( const PressRepeater & obj)

Definition at line 66 of file press_repeater.cpp.

◆ ConfigSchema() [30/46]

const String sensesp::ConfigSchema ( const RgbLed & obj)

Definition at line 62 of file rgb_led.cpp.

◆ ConfigSchema() [31/46]

const String sensesp::ConfigSchema ( const SelectConfig & obj)
inline

Definition at line 112 of file ui_controls.h.

◆ ConfigSchema() [32/46]

const String sensesp::ConfigSchema ( const SKListener & obj)

Definition at line 45 of file signalk_listener.cpp.

◆ ConfigSchema() [33/46]

template<typename T >
const String sensesp::ConfigSchema ( const SKOutput< T > & obj)

Definition at line 83 of file signalk_output.h.

◆ ConfigSchema() [34/46]

const String sensesp::ConfigSchema ( const SKOutputTime & obj)

Definition at line 32 of file signalk_time.cpp.

◆ ConfigSchema() [35/46]

template<typename T >
const String sensesp::ConfigSchema ( const SKPutRequest< T > & obj)

Definition at line 173 of file signalk_put_request.h.

◆ ConfigSchema() [36/46]

const String sensesp::ConfigSchema ( const SKWSClient & obj)
inline

Definition at line 165 of file signalk_ws_client.h.

◆ ConfigSchema() [37/46]

const String sensesp::ConfigSchema ( const SmartSwitchController & obj)
inline

Definition at line 133 of file smart_switch_controller.h.

Here is the caller graph for this function:

◆ ConfigSchema() [38/46]

const String sensesp::ConfigSchema ( const std::nullptr_t & obj)
inline

Provide a configuration schema for a ConfigItemT<nullptr>.

For this to work, an overload or a specialization of this function must be provided for each type T that is used in a ConfigItemT<T>.

Template Parameters
T
Parameters
obj
Returns
const char*

Definition at line 47 of file config_item.h.

◆ ConfigSchema() [39/46]

const String sensesp::ConfigSchema ( const StringConfig & obj)
inline

Definition at line 27 of file ui_controls.h.

◆ ConfigSchema() [40/46]

const String sensesp::ConfigSchema ( const ThresholdTransform< float > & obj)

Definition at line 8 of file threshold.cpp.

◆ ConfigSchema() [41/46]

const String sensesp::ConfigSchema ( const ThresholdTransform< int > & obj)

Definition at line 14 of file threshold.cpp.

◆ ConfigSchema() [42/46]

const String sensesp::ConfigSchema ( const VoltageDividerR1 & obj)

Definition at line 39 of file voltagedivider.cpp.

◆ ConfigSchema() [43/46]

const String sensesp::ConfigSchema ( const VoltageDividerR2 & obj)

Definition at line 77 of file voltagedivider.cpp.

◆ ConfigSchema() [44/46]

const String sensesp::ConfigSchema ( const VoltageMultiplier & obj)

Definition at line 32 of file voltage_multiplier.cpp.

◆ ConfigSchema() [45/46]

const String sensesp::ConfigSchema ( DigitalInputState & obj)

Definition at line 73 of file digital_input.cpp.

◆ ConfigSchema() [46/46]

template<typename U >
const String sensesp::ConfigSchema ( TimeCounter< U > & obj)

Definition at line 95 of file time_counter.h.

◆ ConfigSchemaSensorType()

template<typename T >
const String sensesp::ConfigSchemaSensorType ( const T & obj)

Definition at line 84 of file constant_sensor.h.

Here is the caller graph for this function:

◆ ConfigSchemaSensorType< bool >()

template<>
const String sensesp::ConfigSchemaSensorType< bool > ( const bool & obj)

Definition at line 100 of file constant_sensor.h.

◆ ConfigSchemaSensorType< float >()

template<>
const String sensesp::ConfigSchemaSensorType< float > ( const float & obj)

Definition at line 92 of file constant_sensor.h.

◆ ConfigSchemaSensorType< int >()

template<>
const String sensesp::ConfigSchemaSensorType< int > ( const int & obj)

Definition at line 88 of file constant_sensor.h.

◆ ConfigSchemaSensorType< String >()

template<>
const String sensesp::ConfigSchemaSensorType< String > ( const String & obj)

Definition at line 96 of file constant_sensor.h.

◆ connect_system_info_sensor()

template<typename T >
void sensesp::connect_system_info_sensor ( std::shared_ptr< ValueProducer< T > > & sensor,
const String & prefix,
const String & name )

Connect a system information sensor to SKOutput.

Definition at line 18 of file system_info.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ convertFromJson() [1/4]

void sensesp::convertFromJson ( JsonVariantConst src,
AttitudeVector & dst )

Definition at line 25 of file position.cpp.

◆ convertFromJson() [2/4]

void sensesp::convertFromJson ( JsonVariantConst src,
ENUVector & dst )

Definition at line 16 of file position.cpp.

◆ convertFromJson() [3/4]

template<typename T >
void sensesp::convertFromJson ( JsonVariantConst src,
Nullable< T > & dst )

Definition at line 58 of file nullable.h.

Here is the call graph for this function:

◆ convertFromJson() [4/4]

void sensesp::convertFromJson ( JsonVariantConst src,
Position & dst )

Adds support in ArduinoJson to deserialize Position type data.

This is an ArduinoJson custom converter to convert position type data from JSON into a Position struct. The JSON data must at least contain "latitude" and "longitude", "altitude" is optional. ArduinoJson will automatically call this function whenever it has to convert a JSON to a Position struct. More info here: https://arduinojson.org/news/2021/05/04/version-6-18-0/

Parameters
srcThe JSON document containing the position data
dstThe address to a Position struct to write the data to

Definition at line 7 of file position.cpp.

◆ convertToJson() [1/4]

void sensesp::convertToJson ( const AttitudeVector & src,
JsonVariant dst )

Definition at line 65 of file position.cpp.

◆ convertToJson() [2/4]

void sensesp::convertToJson ( const ENUVector & src,
JsonVariant dst )

Definition at line 55 of file position.cpp.

◆ convertToJson() [3/4]

template<typename T >
void sensesp::convertToJson ( const Nullable< T > & src,
JsonVariant dst )

Definition at line 67 of file nullable.h.

Here is the call graph for this function:

◆ convertToJson() [4/4]

void sensesp::convertToJson ( const Position & src,
JsonVariant dst )

Definition at line 45 of file position.cpp.

◆ event_loop()

std::shared_ptr< reactesp::EventLoop > sensesp::event_loop ( )

Definition at line 9 of file sensesp.cpp.

Here is the call graph for this function:

◆ ExecuteWebSocketTask()

void sensesp::ExecuteWebSocketTask ( void * )

Definition at line 26 of file signalk_ws_client.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ generate_uuid4()

String sensesp::generate_uuid4 ( )

Generate a random UUIDv4 string.

Returns
Formatted UUID string.

Definition at line 5 of file uuid.cpp.

Here is the caller graph for this function:

◆ get_content_type()

String sensesp::get_content_type ( httpd_req_t * req)

Definition at line 183 of file http_server.cpp.

Here is the caller graph for this function:

◆ get_item_data()

bool sensesp::get_item_data ( JsonDocument & doc,
const std::shared_ptr< ConfigItemBase > & item )

Definition at line 11 of file config_handler.cpp.

Here is the caller graph for this function:

◆ get_random_hex_string()

String sensesp::get_random_hex_string ( )

Definition at line 5 of file http_authenticator.cpp.

Here is the caller graph for this function:

◆ get_schema_type_string() [1/9]

template<>
const char * sensesp::get_schema_type_string ( const bool dummy)

Definition at line 23 of file config_item.cpp.

◆ get_schema_type_string() [2/9]

template<>
const char * sensesp::get_schema_type_string ( const bool dummy)

Definition at line 23 of file config_item.cpp.

◆ get_schema_type_string() [3/9]

template<>
const char * sensesp::get_schema_type_string ( const float dummy)

Definition at line 13 of file config_item.cpp.

◆ get_schema_type_string() [4/9]

template<>
const char * sensesp::get_schema_type_string ( const float dummy)

Definition at line 13 of file config_item.cpp.

◆ get_schema_type_string() [5/9]

template<>
const char * sensesp::get_schema_type_string ( const int dummy)

Definition at line 8 of file config_item.cpp.

Here is the caller graph for this function:

◆ get_schema_type_string() [6/9]

template<>
const char * sensesp::get_schema_type_string ( const int dummy)

Definition at line 8 of file config_item.cpp.

Here is the caller graph for this function:

◆ get_schema_type_string() [7/9]

template<>
const char * sensesp::get_schema_type_string ( const String & dummy)

Definition at line 18 of file config_item.cpp.

◆ get_schema_type_string() [8/9]

template<>
const char * sensesp::get_schema_type_string ( const String & dummy)

Definition at line 18 of file config_item.cpp.

◆ get_schema_type_string() [9/9]

template<class T >
const char * sensesp::get_schema_type_string ( const T dummy)

Convert the variable type to a string representation of the type using template specializations.

Definition at line 21 of file config_item.h.

◆ handle_config_item_list()

esp_err_t sensesp::handle_config_item_list ( httpd_req_t * req)

Definition at line 39 of file config_handler.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MD5()

String sensesp::MD5 ( const String & payload_str)

MD5 hash function.

Calculate an MD5 hash of the given payload.

Parameters
payload_str

Definition at line 43 of file hash.cpp.

Here is the caller graph for this function:

◆ millis64()

uint64_t ARDUINO_ISR_ATTR sensesp::millis64 ( )
inline

Definition at line 9 of file time_counter.h.

Here is the caller graph for this function:

◆ operator!=()

template<class T >
bool sensesp::operator!= ( ObservableValue< T > const & lhs,
T const & rhs )

Definition at line 21 of file observablevalue.h.

◆ operator==()

template<class T >
bool sensesp::operator== ( ObservableValue< T > const & lhs,
T const & rhs )

Definition at line 16 of file observablevalue.h.

◆ SetupLogging()

void sensesp::SetupLogging ( esp_log_level_t default_level = ESP_LOG_VERBOSE)
inline

Definition at line 21 of file sensesp_base_app.h.

Here is the caller graph for this function:

◆ SetupSerialDebug()

void sensesp::SetupSerialDebug ( uint32_t baudrate)
inline

Definition at line 25 of file sensesp_base_app.h.

Here is the call graph for this function:

◆ Sha1()

void sensesp::Sha1 ( const String & payload_str,
uint8_t * hash_output )

SHA-1 hash function.

Calculate a SHA-1 hash of the given payload.

Parameters
payload_str
hash_outputA 20-character binary output array

Definition at line 17 of file hash.cpp.

Here is the caller graph for this function:

◆ urldecode2()

void sensesp::urldecode2 ( char * dst,
const char * src )

Definition at line 13 of file http_server.cpp.

Here is the caller graph for this function:

Variable Documentation

◆ hysteresis_param_info

const ParamInfo sensesp::hysteresis_param_info[4]
Initial value:
= {
{"lower_threshold", "Lower threshold"},
{"upper_threshold", "Upper threshold"},
{"low_output", "Low output"},
{"high_output", "High output"}}

Definition at line 9 of file hysteresis.h.

◆ kContentEncoding

const char sensesp::kContentEncoding[] = "Content-Encoding"

Definition at line 7 of file static_file_data.h.

◆ kContentType

const char sensesp::kContentType[] = "Content-Type"

Definition at line 6 of file static_file_data.h.

◆ kDefaultHostname

auto sensesp::kDefaultHostname = "SensESP"
constexpr

Definition at line 19 of file sensesp_base_app.h.

◆ kFrontendFiles

const StaticFileData sensesp::kFrontendFiles[]

Definition at line 8 of file frontend_files.h.

◆ kInvalidDouble

double sensesp::kInvalidDouble = std::numeric_limits<double>::lowest()
constexpr

Value used to indicate an invalid or missing altitude.

Definition at line 10 of file position.h.

◆ kMaxNumClientConfigs

int sensesp::kMaxNumClientConfigs = 3
constexpr

Definition at line 18 of file networking.h.

◆ kPi

double sensesp::kPi = 3.14159265358979323846
constexpr

Definition at line 5 of file angle_correction.cpp.

◆ kPositionInvalidAltitude

float sensesp::kPositionInvalidAltitude = std::numeric_limits<float>::lowest()
constexpr

Definition at line 11 of file position.h.

◆ kSensESPVersion

const char* const sensesp::kSensESPVersion = "3.0.1"

Definition at line 6 of file sensesp_version.h.

◆ kUIOutputDefaultGroup

char sensesp::kUIOutputDefaultGroup[] = "Default"
constexpr

Definition at line 15 of file status_page_item.h.

◆ kUIOutputDefaultOrder

int sensesp::kUIOutputDefaultOrder = 1000
constexpr

Definition at line 16 of file status_page_item.h.

◆ kWsClientTaskStackSize

int sensesp::kWsClientTaskStackSize = 8192
constexpr

Definition at line 20 of file signalk_ws_client.cpp.

◆ no_ap_pattern

int sensesp::no_ap_pattern[] = {50, 950, PATTERN_END}

Definition at line 12 of file system_status_led.cpp.

◆ sensesp_app

std::shared_ptr< SensESPApp > sensesp::sensesp_app

Definition at line 7 of file sensesp_app.cpp.

◆ wifi_connected_pattern

int sensesp::wifi_connected_pattern[] = {700, 300, PATTERN_END}

Definition at line 18 of file system_status_led.cpp.

◆ wifi_disconnected_pattern

int sensesp::wifi_disconnected_pattern[] = {300, 700, PATTERN_END}

Definition at line 15 of file system_status_led.cpp.

◆ wifimanager_pattern

int sensesp::wifimanager_pattern[] = {1000, 0, PATTERN_END}

Definition at line 24 of file system_status_led.cpp.

◆ ws_authorizing_pattern

int sensesp::ws_authorizing_pattern[] = {200, 200, PATTERN_END}

Definition at line 33 of file system_status_led.cpp.

◆ ws_client

SKWSClient* sensesp::ws_client

Definition at line 22 of file signalk_ws_client.cpp.

◆ ws_connected_pattern

int sensesp::ws_connected_pattern[] = {900, 100, PATTERN_END}

Definition at line 27 of file system_status_led.cpp.

◆ ws_connecting_pattern

int sensesp::ws_connecting_pattern[] = {650, 50, 50, 50, 50, 50, 50, 50, PATTERN_END}

Definition at line 21 of file system_status_led.cpp.

◆ ws_disconnected_pattern

int sensesp::ws_disconnected_pattern[] = {50, 50, 50, 50, 50, 50, 50, 650, PATTERN_END}

Definition at line 30 of file system_status_led.cpp.