ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
esphome::fusb302b::FUSB302B Class Reference

FUSB302B USB Type-C / Power Delivery sink controller. More...

#include <fusb302b.h>

Inheritance diagram for esphome::fusb302b::FUSB302B:
esphome::fusb302b::PowerDelivery esphome::Component esphome::i2c::I2CDevice

Public Member Functions

 FUSB302B (InternalGPIOPin *interrupt_pin)
 
void setup () override
 
void loop () override
 
void dump_config () override
 
void on_shutdown () override
 
float get_setup_priority () const override
 
void request_voltage (int voltage)
 Negotiate a new contract with the highest source voltage that does not exceed voltage.
 
template<typename F >
void add_on_state_callback (F &&callback)
 Callbacks receive each new state in order, with the state before it.
 
template<typename F >
void add_on_request_failed_callback (F &&callback)
 Called when a voltage request was rejected, got no answer, or was dropped because the component failed.
 
void set_voltage_sensor (sensor::Sensor *sensor)
 
void set_current_sensor (sensor::Sensor *sensor)
 
void set_contract_text_sensor (text_sensor::TextSensor *sensor)
 
- Public Member Functions inherited from esphome::fusb302b::PowerDelivery
void set_request_voltage (uint8_t voltage)
 
uint8_t get_request_voltage () const
 
PdState get_state () const
 
bool is_connected () const
 
- Public Member Functions inherited from esphome::Component
float get_actual_setup_priority () const
 
void set_setup_priority (float priority)
 
void call ()
 
virtual void on_safe_shutdown ()
 
virtual bool teardown ()
 Called during teardown to allow component to gracefully finish operations.
 
virtual void on_powerdown ()
 Called after teardown is complete to power down hardware.
 
uint8_t get_component_state () const
 
void reset_to_construction_state ()
 Reset this component back to the construction state to allow setup to run again.
 
bool is_in_loop_state () const
 Check if this component has completed setup and is in the loop state.
 
bool is_idle () const
 Check if this component is idle.
 
void mark_failed ()
 Mark this component as failed.
 
void mark_failed (const LogString *message)
 
void disable_loop ()
 Disable this component's loop.
 
void enable_loop ()
 Enable this component's loop.
 
void enable_loop_soon_any_context ()
 Thread and ISR-safe version of enable_loop() that can be called from any context.
 
bool is_failed () const
 
bool is_ready () const
 
virtual bool can_proceed ()
 
bool status_has_warning () const
 
bool status_has_error () const
 
void status_set_warning ()
 
void status_set_warning (const char *message)
 
void status_set_warning (const LogString *message)
 
void status_set_error ()
 
void status_set_error (const LogString *message)
 
void status_clear_warning ()
 
void status_clear_error ()
 
 ESPDEPRECATED ("Use status_momentary_warning() without a name. Removed in 2027.5.0", "2026.11.0") void status_momentary_warning(const char *name
 
void status_momentary_warning (uint32_t length=5000)
 Set warning status flag and clear it after length ms.
 
void status_momentary_warning (const LogString *message, uint32_t length=5000)
 
 ESPDEPRECATED ("Use status_momentary_error() without a name. Removed in 2027.5.0", "2026.11.0") void status_momentary_error(const char *name
 
void status_momentary_error (uint32_t length=5000)
 Set error status flag and clear it after length ms.
 
void status_momentary_error (const LogString *message, uint32_t length=5000)
 
bool has_overridden_loop () const
 
const LogString * get_component_log_str () const ESPHOME_ALWAYS_INLINE
 Get the integration where this component was declared as a LogString for logging.
 
bool should_warn_of_blocking (uint32_t blocking_time, uint32_t &threshold_ms_out)
 
- Public Member Functions inherited from esphome::i2c::I2CDevice
 I2CDevice ()=default
 we use the C++ default constructor
 
void set_i2c_address (uint8_t address)
 We store the address of the device on the bus.
 
uint8_t get_i2c_address () const
 Returns the I2C address of the object.
 
void set_i2c_bus (I2CBus *bus)
 we store the pointer to the I2CBus to use
 
I2CRegister reg (uint8_t a_register)
 calls the I2CRegister constructor
 
I2CRegister16 reg16 (uint16_t a_register)
 calls the I2CRegister16 constructor
 
ErrorCode read (uint8_t *data, size_t len) const
 reads an array of bytes from the device using an I2CBus
 
ErrorCode read_register (uint8_t a_register, uint8_t *data, size_t len)
 reads an array of bytes from a specific register in the I²C device
 
ErrorCode read_register16 (uint16_t a_register, uint8_t *data, size_t len)
 reads an array of bytes from a specific register in the I²C device
 
ErrorCode write (const uint8_t *data, size_t len) const
 writes an array of bytes to a device using an I2CBus
 
ErrorCode write_read (const uint8_t *write_data, size_t write_len, uint8_t *read_data, size_t read_len) const
 writes an array of bytes to a device, then reads an array, as a single transaction
 
ErrorCode write_register (uint8_t a_register, const uint8_t *data, size_t len) const
 writes an array of bytes to a specific register in the I²C device
 
ErrorCode write_register16 (uint16_t a_register, const uint8_t *data, size_t len) const
 write an array of bytes to a specific register in the I²C device
 
bool read_bytes (uint8_t a_register, uint8_t *data, uint8_t len)
 Compat APIs All methods below have been added for compatibility reasons.
 
bool read_bytes_raw (uint8_t *data, uint8_t len) const
 
template<size_t N>
optional< std::array< uint8_t, N > > read_bytes (uint8_t a_register)
 
template<size_t N>
optional< std::array< uint8_t, N > > read_bytes_raw ()
 
bool read_bytes_16 (uint8_t a_register, uint16_t *data, uint8_t len)
 
bool read_byte (uint8_t a_register, uint8_t *data)
 
optional< uint8_t > read_byte (uint8_t a_register)
 
bool read_byte_16 (uint8_t a_register, uint16_t *data)
 
bool write_bytes (uint8_t a_register, const uint8_t *data, uint8_t len) const
 
bool write_bytes (uint8_t a_register, const std::vector< uint8_t > &data) const
 
template<size_t N>
bool write_bytes (uint8_t a_register, const std::array< uint8_t, N > &data)
 
bool write_bytes_16 (uint8_t a_register, const uint16_t *data, uint8_t len) const
 
bool write_byte (uint8_t a_register, uint8_t data) const
 
bool write_byte_16 (uint8_t a_register, uint16_t data) const
 

Protected Types

enum class  SourceCapStep : uint8_t { SOURCE_CAP_STEP_WAIT , SOURCE_CAP_STEP_GET_SENT , SOURCE_CAP_STEP_SOFT_RESET_SENT }
 

Protected Member Functions

bool send_message (const PdMsg &msg) override
 
void on_state_changed () override
 
void on_soft_reset_received () override
 
void on_source_caps_received () override
 
void on_transition_timeout () override
 
void on_request_failed () override
 
void run_task_ ()
 
bool init_chip_ ()
 
bool reset_pd_ ()
 
bool enable_auto_crc_ ()
 
void handle_interrupt_ ()
 
bool read_message_ (PdMsg &msg, bool &is_sop)
 
void try_attach_ ()
 
bool measure_cc_ (uint8_t meas_switch, uint8_t &level)
 
void detach_ ()
 
void handle_hard_reset_ ()
 
void start_source_cap_wait_ (SourceCapStep step)
 
void start_negotiation_ ()
 
void send_soft_reset_ ()
 
void source_caps_failed_ ()
 
void check_source_caps_ ()
 
void enter_error_ ()
 
void publish_contract_ (PackedContract contract)
 
void publish_state_ (PdState state)
 
void queue_event_ (uint8_t event)
 
- Protected Member Functions inherited from esphome::fusb302b::PowerDelivery
void handle_message_ (const PdMsg &msg)
 
void handle_transmit_failed_ ()
 Called by the PHY when the chip gave up on a message after its retries without receiving a GoodCRC.
 
void reset_protocol_ ()
 
void set_state_ (PdState state)
 
void set_contract_ (const PdContract &contract)
 
void clear_contract_ ()
 
void set_state_and_contract_ (PdState state, const PdContract &contract)
 Stores both before calling on_state_changed() once, so the main loop never sees the new state with the old contract.
 
void set_ams_ (bool active)
 
bool check_ams_ ()
 Returns true while an atomic message sequence is in progress.
 
void check_transition_timeout_ ()
 Falls back to default power when the source accepted a request but did not report the new supply ready in time.
 
void check_request_retry_ ()
 Sends the last request again once tSinkRequest has passed after the source answered Wait.
 
PdMsg make_control_msg_ (PdControlMsgType type) const
 
PdMsg make_data_msg_ (PdDataMsgType type, const uint32_t *objects, uint8_t len) const
 
- Protected Member Functions inherited from esphome::Component
friend void::setup ()
 
friend void::original_setup ()
 
void set_component_source_ (uint8_t index)
 Set where this component was loaded from for some debug messages.
 
virtual void call_setup ()
 
void call_dump_config_ ()
 
void enable_loop_slow_path_ ()
 
void set_component_state_ (uint8_t state)
 Helper to set component state (clears state bits and sets new state)
 
bool set_status_flag_ (uint8_t flag)
 Helper to set a status LED flag on both this component and the app.
 
bool set_error_flag_ (const LogString *message)
 Set the error flag and log it; true when it was not set before.
 
void set_interval (const char *name, uint32_t interval, std::function< void()> &&f)
 Set an interval function with a const char* name.
 
void set_interval (uint32_t id, uint32_t interval, std::function< void()> &&f)
 Set an interval function with a numeric ID (zero heap allocation).
 
void set_interval (InternalSchedulerID id, uint32_t interval, std::function< void()> &&f)
 
void set_interval (uint32_t interval, std::function< void()> &&f)
 
bool cancel_interval (const char *name)
 Cancel an interval function.
 
bool cancel_interval (uint32_t id)
 
bool cancel_interval (InternalSchedulerID id)
 
void set_timeout (const char *name, uint32_t timeout, std::function< void()> &&f)
 Set a timeout function with a const char* name.
 
void set_timeout (uint32_t id, uint32_t timeout, std::function< void()> &&f)
 Set a timeout function with a numeric ID (zero heap allocation).
 
void set_timeout (InternalSchedulerID id, uint32_t timeout, std::function< void()> &&f)
 
void set_timeout (uint32_t timeout, std::function< void()> &&f)
 
bool cancel_timeout (const char *name)
 Cancel a timeout function.
 
bool cancel_timeout (uint32_t id)
 
bool cancel_timeout (InternalSchedulerID id)
 
void defer (const char *name, std::function< void()> &&f)
 Defer a callback to the next loop() call with a const char* name.
 
void defer (std::function< void()> &&f)
 Defer a callback to the next loop() call.
 
void defer (uint32_t id, std::function< void()> &&f)
 Defer a callback with a numeric ID (zero heap allocation)
 
bool cancel_defer (const char *name)
 Cancel a defer callback using the specified name, name must not be empty.
 
bool cancel_defer (uint32_t id)
 
void status_clear_warning_slow_path_ ()
 
void status_clear_error_slow_path_ ()
 

Static Protected Member Functions

static void gpio_intr (FUSB302B *arg)
 
static void task_func (void *arg)
 

Protected Attributes

InternalGPIOPin * interrupt_pin_
 
StaticTask task_
 
uint32_t source_cap_step_start_ {0}
 
SourceCapStep source_cap_step_ {SourceCapStep::SOURCE_CAP_STEP_WAIT}
 
bool attached_ {false}
 
bool waiting_for_source_caps_ {false}
 
bool cc_ambiguous_logged_ {false}
 
bool request_pending_ {false}
 
PdState queued_state_ {PdState::PD_STATE_DISCONNECTED}
 
std::array< uint8_t, EVENT_QUEUE_SIZE > event_queue_ {}
 
std::atomic< uint8_t > event_queue_head_ {0}
 
std::atomic< uint8_t > event_queue_tail_ {0}
 
std::atomic< bool > event_queue_overflow_ {false}
 
std::atomic< uint8_t > dropped_request_failures_ {0}
 
PdState published_state_ {PdState::PD_STATE_DISCONNECTED}
 
uint32_t published_contract_ {UINT32_MAX}
 
LazyCallbackManager< void(PdState, PdState)> state_callback_
 
LazyCallbackManager< void()> request_failed_callback_
 
sensor::Sensor * voltage_sensor_ {nullptr}
 
sensor::Sensor * current_sensor_ {nullptr}
 
text_sensor::TextSensor * contract_text_sensor_ {nullptr}
 
- Protected Attributes inherited from esphome::fusb302b::PowerDelivery
std::atomic< PdState > state_ {PdState::PD_STATE_DISCONNECTED}
 
std::atomic< uint32_t > contract_ {0}
 
std::atomic< uint8_t > request_voltage_ {5}
 
uint32_t ams_start_ {0}
 
uint32_t wait_received_ms_ {0}
 
bool retry_request_pending_ {false}
 
- Protected Attributes inherited from esphome::Component
uint8_t component_source_index_ {0}
 Index into component source PROGMEM lookup table (0 = not set)
 
uint8_t warn_if_blocking_over_ {WARN_IF_BLOCKING_OVER_CS}
 Warn threshold in centiseconds (max 2550ms)
 
uint8_t component_state_ {0x00}
 State of this component - each bit has a purpose: Bits 0-2: Component state (0x00=CONSTRUCTION, 0x01=SETUP, 0x02=LOOP, 0x03=FAILED, 0x04=LOOP_DONE) Bit 3: STATUS_LED_WARNING Bit 4: STATUS_LED_ERROR Bit 5: Has overridden loop() (set at registration time) Bits 6-7: Unused - reserved for future expansion.
 
volatile bool pending_enable_loop_ {false}
 ISR-safe flag for enable_loop_soon_any_context.
 
ComponentRuntimeStats runtime_stats_
 
- Protected Attributes inherited from esphome::i2c::I2CDevice
uint8_t address_ {0x00}
 store the address of the device on the bus
 
I2CBus * bus_ {nullptr}
 pointer to I2CBus instance
 

Static Protected Attributes

static constexpr uint8_t EVENT_QUEUE_SIZE = 8
 
static constexpr uint8_t EVENT_REQUEST_FAILED = 0xFF
 

Additional Inherited Members

- Data Fields inherited from esphome::Component
uint32_t length = 5000)
 

Detailed Description

FUSB302B USB Type-C / Power Delivery sink controller.

A dedicated task owns all I2C traffic to the chip so that PD replies meet the protocol timing even while the main loop is busy. The main loop only publishes state changes.

Definition at line 30 of file fusb302b.h.

Member Enumeration Documentation

◆ SourceCapStep

enum class esphome::fusb302b::FUSB302B::SourceCapStep : uint8_t
strongprotected
Enumerator
SOURCE_CAP_STEP_WAIT 
SOURCE_CAP_STEP_GET_SENT 
SOURCE_CAP_STEP_SOFT_RESET_SENT 

Definition at line 63 of file fusb302b.h.

Constructor & Destructor Documentation

◆ FUSB302B()

esphome::fusb302b::FUSB302B::FUSB302B ( InternalGPIOPin * interrupt_pin)
inlineexplicit

Definition at line 32 of file fusb302b.h.

Member Function Documentation

◆ add_on_request_failed_callback()

template<typename F >
void esphome::fusb302b::FUSB302B::add_on_request_failed_callback ( F && callback)
inline

Called when a voltage request was rejected, got no answer, or was dropped because the component failed.

A contract already in place stays valid.

Definition at line 50 of file fusb302b.h.

◆ add_on_state_callback()

template<typename F >
void esphome::fusb302b::FUSB302B::add_on_state_callback ( F && callback)
inline

Callbacks receive each new state in order, with the state before it.

Definition at line 45 of file fusb302b.h.

◆ check_source_caps_()

void esphome::fusb302b::FUSB302B::check_source_caps_ ( )
protected

Definition at line 548 of file fusb302b.cpp.

◆ detach_()

void esphome::fusb302b::FUSB302B::detach_ ( )
protected

Definition at line 470 of file fusb302b.cpp.

◆ dump_config()

void esphome::fusb302b::FUSB302B::dump_config ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 170 of file fusb302b.cpp.

◆ enable_auto_crc_()

bool esphome::fusb302b::FUSB302B::enable_auto_crc_ ( )
protected

Definition at line 288 of file fusb302b.cpp.

◆ enter_error_()

void esphome::fusb302b::FUSB302B::enter_error_ ( )
protected

Definition at line 493 of file fusb302b.cpp.

◆ get_setup_priority()

float esphome::fusb302b::FUSB302B::get_setup_priority ( ) const
inlineoverridevirtual

Reimplemented from esphome::Component.

Definition at line 38 of file fusb302b.h.

◆ gpio_intr()

void IRAM_ATTR esphome::fusb302b::FUSB302B::gpio_intr ( FUSB302B * arg)
staticprotected

Definition at line 41 of file fusb302b.cpp.

◆ handle_hard_reset_()

void esphome::fusb302b::FUSB302B::handle_hard_reset_ ( )
protected

Definition at line 480 of file fusb302b.cpp.

◆ handle_interrupt_()

void esphome::fusb302b::FUSB302B::handle_interrupt_ ( )
protected

Definition at line 294 of file fusb302b.cpp.

◆ init_chip_()

bool esphome::fusb302b::FUSB302B::init_chip_ ( )
protected

Definition at line 255 of file fusb302b.cpp.

◆ loop()

void esphome::fusb302b::FUSB302B::loop ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 105 of file fusb302b.cpp.

◆ measure_cc_()

bool esphome::fusb302b::FUSB302B::measure_cc_ ( uint8_t meas_switch,
uint8_t & level )
protected

Definition at line 394 of file fusb302b.cpp.

◆ on_request_failed()

void esphome::fusb302b::FUSB302B::on_request_failed ( )
overrideprotectedvirtual

Implements esphome::fusb302b::PowerDelivery.

Definition at line 103 of file fusb302b.cpp.

◆ on_shutdown()

void esphome::fusb302b::FUSB302B::on_shutdown ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 186 of file fusb302b.cpp.

◆ on_soft_reset_received()

void esphome::fusb302b::FUSB302B::on_soft_reset_received ( )
inlineoverrideprotectedvirtual

Implements esphome::fusb302b::PowerDelivery.

Definition at line 74 of file fusb302b.h.

◆ on_source_caps_received()

void esphome::fusb302b::FUSB302B::on_source_caps_received ( )
inlineoverrideprotectedvirtual

Implements esphome::fusb302b::PowerDelivery.

Definition at line 75 of file fusb302b.h.

◆ on_state_changed()

void esphome::fusb302b::FUSB302B::on_state_changed ( )
overrideprotectedvirtual

Implements esphome::fusb302b::PowerDelivery.

Definition at line 92 of file fusb302b.cpp.

◆ on_transition_timeout()

void esphome::fusb302b::FUSB302B::on_transition_timeout ( )
inlineoverrideprotectedvirtual

Implements esphome::fusb302b::PowerDelivery.

Definition at line 76 of file fusb302b.h.

◆ publish_contract_()

void esphome::fusb302b::FUSB302B::publish_contract_ ( PackedContract contract)
protected

Definition at line 150 of file fusb302b.cpp.

◆ publish_state_()

void esphome::fusb302b::FUSB302B::publish_state_ ( PdState state)
protected

Definition at line 142 of file fusb302b.cpp.

◆ queue_event_()

void esphome::fusb302b::FUSB302B::queue_event_ ( uint8_t event)
protected

Definition at line 79 of file fusb302b.cpp.

◆ read_message_()

bool esphome::fusb302b::FUSB302B::read_message_ ( PdMsg & msg,
bool & is_sop )
protected

Definition at line 341 of file fusb302b.cpp.

◆ request_voltage()

void esphome::fusb302b::FUSB302B::request_voltage ( int voltage)

Negotiate a new contract with the highest source voltage that does not exceed voltage.

Values outside 5-20 V are clamped with a warning.

Definition at line 193 of file fusb302b.cpp.

◆ reset_pd_()

bool esphome::fusb302b::FUSB302B::reset_pd_ ( )
protected

Definition at line 281 of file fusb302b.cpp.

◆ run_task_()

void esphome::fusb302b::FUSB302B::run_task_ ( )
protected

Definition at line 210 of file fusb302b.cpp.

◆ send_message()

bool esphome::fusb302b::FUSB302B::send_message ( const PdMsg & msg)
overrideprotectedvirtual

Implements esphome::fusb302b::PowerDelivery.

Definition at line 360 of file fusb302b.cpp.

◆ send_soft_reset_()

void esphome::fusb302b::FUSB302B::send_soft_reset_ ( )
protected

Definition at line 516 of file fusb302b.cpp.

◆ set_contract_text_sensor()

void esphome::fusb302b::FUSB302B::set_contract_text_sensor ( text_sensor::TextSensor * sensor)
inline

Definition at line 59 of file fusb302b.h.

◆ set_current_sensor()

void esphome::fusb302b::FUSB302B::set_current_sensor ( sensor::Sensor * sensor)
inline

Definition at line 56 of file fusb302b.h.

◆ set_voltage_sensor()

void esphome::fusb302b::FUSB302B::set_voltage_sensor ( sensor::Sensor * sensor)
inline

Definition at line 55 of file fusb302b.h.

◆ setup()

void esphome::fusb302b::FUSB302B::setup ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 52 of file fusb302b.cpp.

◆ source_caps_failed_()

void esphome::fusb302b::FUSB302B::source_caps_failed_ ( )
protected

Definition at line 530 of file fusb302b.cpp.

◆ start_negotiation_()

void esphome::fusb302b::FUSB302B::start_negotiation_ ( )
protected

Definition at line 506 of file fusb302b.cpp.

◆ start_source_cap_wait_()

void esphome::fusb302b::FUSB302B::start_source_cap_wait_ ( SourceCapStep step)
protected

Definition at line 542 of file fusb302b.cpp.

◆ task_func()

void esphome::fusb302b::FUSB302B::task_func ( void * arg)
staticprotected

Definition at line 50 of file fusb302b.cpp.

◆ try_attach_()

void esphome::fusb302b::FUSB302B::try_attach_ ( )
protected

Definition at line 413 of file fusb302b.cpp.

Field Documentation

◆ attached_

bool esphome::fusb302b::FUSB302B::attached_ {false}
protected

Definition at line 107 of file fusb302b.h.

◆ cc_ambiguous_logged_

bool esphome::fusb302b::FUSB302B::cc_ambiguous_logged_ {false}
protected

Definition at line 109 of file fusb302b.h.

◆ contract_text_sensor_

text_sensor::TextSensor* esphome::fusb302b::FUSB302B::contract_text_sensor_ {nullptr}
protected

Definition at line 137 of file fusb302b.h.

◆ current_sensor_

sensor::Sensor* esphome::fusb302b::FUSB302B::current_sensor_ {nullptr}
protected

Definition at line 134 of file fusb302b.h.

◆ dropped_request_failures_

std::atomic<uint8_t> esphome::fusb302b::FUSB302B::dropped_request_failures_ {0}
protected

Definition at line 124 of file fusb302b.h.

◆ event_queue_

std::array<uint8_t, EVENT_QUEUE_SIZE> esphome::fusb302b::FUSB302B::event_queue_ {}
protected

Definition at line 119 of file fusb302b.h.

◆ event_queue_head_

std::atomic<uint8_t> esphome::fusb302b::FUSB302B::event_queue_head_ {0}
protected

Definition at line 120 of file fusb302b.h.

◆ event_queue_overflow_

std::atomic<bool> esphome::fusb302b::FUSB302B::event_queue_overflow_ {false}
protected

Definition at line 122 of file fusb302b.h.

◆ EVENT_QUEUE_SIZE

uint8_t esphome::fusb302b::FUSB302B::EVENT_QUEUE_SIZE = 8
staticconstexprprotected

Definition at line 117 of file fusb302b.h.

◆ event_queue_tail_

std::atomic<uint8_t> esphome::fusb302b::FUSB302B::event_queue_tail_ {0}
protected

Definition at line 121 of file fusb302b.h.

◆ EVENT_REQUEST_FAILED

uint8_t esphome::fusb302b::FUSB302B::EVENT_REQUEST_FAILED = 0xFF
staticconstexprprotected

Definition at line 118 of file fusb302b.h.

◆ interrupt_pin_

InternalGPIOPin* esphome::fusb302b::FUSB302B::interrupt_pin_
protected

Definition at line 101 of file fusb302b.h.

◆ published_contract_

uint32_t esphome::fusb302b::FUSB302B::published_contract_ {UINT32_MAX}
protected

Definition at line 128 of file fusb302b.h.

◆ published_state_

PdState esphome::fusb302b::FUSB302B::published_state_ {PdState::PD_STATE_DISCONNECTED}
protected

Definition at line 127 of file fusb302b.h.

◆ queued_state_

PdState esphome::fusb302b::FUSB302B::queued_state_ {PdState::PD_STATE_DISCONNECTED}
protected

Definition at line 112 of file fusb302b.h.

◆ request_failed_callback_

LazyCallbackManager<void()> esphome::fusb302b::FUSB302B::request_failed_callback_
protected

Definition at line 131 of file fusb302b.h.

◆ request_pending_

bool esphome::fusb302b::FUSB302B::request_pending_ {false}
protected

Definition at line 110 of file fusb302b.h.

◆ source_cap_step_

SourceCapStep esphome::fusb302b::FUSB302B::source_cap_step_ {SourceCapStep::SOURCE_CAP_STEP_WAIT}
protected

Definition at line 106 of file fusb302b.h.

◆ source_cap_step_start_

uint32_t esphome::fusb302b::FUSB302B::source_cap_step_start_ {0}
protected

Definition at line 105 of file fusb302b.h.

◆ state_callback_

LazyCallbackManager<void(PdState, PdState)> esphome::fusb302b::FUSB302B::state_callback_
protected

Definition at line 130 of file fusb302b.h.

◆ task_

StaticTask esphome::fusb302b::FUSB302B::task_
protected

Definition at line 102 of file fusb302b.h.

◆ voltage_sensor_

sensor::Sensor* esphome::fusb302b::FUSB302B::voltage_sensor_ {nullptr}
protected

Definition at line 133 of file fusb302b.h.

◆ waiting_for_source_caps_

bool esphome::fusb302b::FUSB302B::waiting_for_source_caps_ {false}
protected

Definition at line 108 of file fusb302b.h.


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