SensESP 2.7.2
Universal Signal K sensor toolkit ESP32
Loading...
Searching...
No Matches
sensesp::AnalogVoltage Class Reference

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...

#include <sensesp/transforms/analogvoltage.h>

Inheritance diagram for sensesp::AnalogVoltage:
[legend]

Public Member Functions

 AnalogVoltage (float max_voltage=3.3, float multiplier=1.0, float offset=0.0, String config_path="")
 
virtual void set_input (float input, uint8_t inputChannel=0) override
 
virtual void get_configuration (JsonObject &doc) override
 
virtual bool set_configuration (const JsonObject &config) override
 
virtual String get_config_schema () override
 
- Public Member Functions inherited from sensesp::SymmetricTransform< float >
 SymmetricTransform (String config_path="")
 
- Public Member Functions inherited from sensesp::Transform< C, P >
 Transform (String config_path="")
 
Transform< C, P > * connect_from (ValueProducer< P > *producer0, ValueProducer< P > *producer1=NULL, ValueProducer< P > *producer2=NULL, ValueProducer< P > *producer3=NULL, ValueProducer< P > *producer4=NULL)
 
- Public Member Functions inherited from sensesp::TransformBase
 TransformBase (String config_path="")
 
- Public Member Functions inherited from sensesp::Configurable
 Configurable (String config_path="", String description="", int sort_order=1000)
 
String get_description ()
 
void set_description (String description)
 Set the description of the Configurable.
 
int get_sort_order ()
 
void set_sort_order (int sort_order)
 
virtual void save_configuration ()
 
- Public Member Functions inherited from sensesp::Startable
 Startable (int priority=0)
 
virtual void start ()
 
const int get_start_priority ()
 
void set_start_priority (int priority)
 
- Public Member Functions inherited from sensesp::ValueConsumer< C >
virtual void set_input (C new_value, uint8_t input_channel=0)
 
void connect_from (ValueProducer< C > *producer, uint8_t input_channel=0)
 
- Public Member Functions inherited from sensesp::ValueProducer< P >
 ValueProducer ()
 
virtual const Pget () const
 
void connect_to (ValueConsumer< P > *consumer, uint8_t input_channel=0)
 
void connect_to (ValueConsumer< CT > *consumer, uint8_t input_channel=0)
 Connect a producer to a consumer of a different type.
 
Transform< P, T2 > * connect_to (Transform< P, T2 > *consumer_producer, uint8_t input_channel=0)
 
Transform< TT, T2 > * connect_to (Transform< TT, T2 > *consumer_producer, uint8_t input_channel=0)
 Connect a producer to a transform with a different input type.
 
void emit (P new_value)
 
- Public Member Functions inherited from sensesp::Observable
 Observable ()
 
 Observable (Observable &&other)
 Move constructor.
 
void notify ()
 
void attach (std::function< void()> observer)
 

Additional Inherited Members

- Static Public Member Functions inherited from sensesp::TransformBase
static const std::set< TransformBase * > & get_transforms ()
 
- Static Public Member Functions inherited from sensesp::Startable
static void start_all ()
 
- Public Attributes inherited from sensesp::Configurable
const String config_path_
 
- Protected Member Functions inherited from sensesp::Configurable
virtual void load_configuration ()
 
- Protected Attributes inherited from sensesp::Configurable
String description_ = ""
 
int sort_order_ = 1000
 
- Protected Attributes inherited from sensesp::ValueProducer< P >
P output
 

Detailed Description

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.)

It can also be used like the Linear transport since it has a multiplier and an offset.

If you don't need to use the mulitplier or offset, you probably don't need this transform, because the AnalogInput sensor now has the ability to output the original voltage that came into it, using its output_scale parameter.

Parameters
max_voltageis the maximum voltage allowable on the Analog Input pin of the microcontroller, which is 3.3V on most ESP's, but only 1.0V on some.
multiplierThe raw output of the transform is multiplied by multiplier. Default value is 1.0, so it does nothing if you don't change it.
offsetAdded to (or subtracted from, if it's negative) the value after multiplier has been applied. Default value is 0.0, so it does nothing if you don't change it.
config_pathThe path in the Config UI to configure this transform.

Definition at line 41 of file analogvoltage.h.

Constructor & Destructor Documentation

◆ AnalogVoltage()

sensesp::AnalogVoltage::AnalogVoltage ( float  max_voltage = 3.3,
float  multiplier = 1.0,
float  offset = 0.0,
String  config_path = "" 
)

Definition at line 5 of file analogvoltage.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ get_config_schema()

String sensesp::AnalogVoltage::get_config_schema ( )
overridevirtual

Returns a configuration schema that specifies the key/value pairs that can be expected when calling get_configuration(), or are expected by set_configuration(). The schema will be in JSON Schema format

See also
https://json-schema.org

Reimplemented from sensesp::Configurable.

Definition at line 34 of file analogvoltage.cpp.

◆ get_configuration()

void sensesp::AnalogVoltage::get_configuration ( JsonObject configObject)
overridevirtual

Returns the current configuration data as a JsonObject. In general, the current state of local member variables are saved to a new object created with JsonDocument::as<JsonObject>() and returned.

Reimplemented from sensesp::Configurable.

Definition at line 19 of file analogvoltage.cpp.

◆ set_configuration()

bool sensesp::AnalogVoltage::set_configuration ( const JsonObject config)
overridevirtual

Sets the current state of local member variables using the data stored in config.

Reimplemented from sensesp::Configurable.

Definition at line 36 of file analogvoltage.cpp.

◆ set_input()

void sensesp::AnalogVoltage::set_input ( float  input,
uint8_t  inputChannel = 0 
)
overridevirtual

Definition at line 14 of file analogvoltage.cpp.

Here is the call graph for this function:

The documentation for this class was generated from the following files: