pub struct DeviceInfoResponse {Show 25 fields
pub uses_password: bool,
pub name: String,
pub mac_address: String,
pub esphome_version: String,
pub compilation_time: String,
pub model: String,
pub has_deep_sleep: bool,
pub project_name: String,
pub project_version: String,
pub webserver_port: u32,
pub legacy_bluetooth_proxy_version: u32,
pub bluetooth_proxy_feature_flags: u32,
pub manufacturer: String,
pub friendly_name: String,
pub legacy_voice_assistant_version: u32,
pub voice_assistant_feature_flags: u32,
pub suggested_area: String,
pub bluetooth_mac_address: String,
pub api_encryption_supported: bool,
pub devices: Vec<DeviceInfo>,
pub areas: Vec<AreaInfo>,
pub area: Option<AreaInfo>,
pub zwave_proxy_feature_flags: u32,
pub zwave_home_id: u32,
pub serial_proxies: Vec<SerialProxyInfo>,
}Expand description
DeviceInfoResponse max_data_length values: name = 31 (ESPHOME_DEVICE_NAME_MAX_LEN, validated by validate_hostname) friendly_name = 120 (core/config.FRIENDLY_NAME_MAX_LEN) mac_address/bluetooth_mac_address = 17 (MAC_ADDRESS_PRETTY_BUFFER_SIZE - 1, constexpr) esphome_version = 32 (ESPHOME_VERSION string literal) compilation_time = 25 (Application::BUILD_TIME_STR_SIZE - 1, constexpr) manufacturer = 20 (longest hardcoded literal: “Nordic Semiconductor”) model = 127 (core/config.BOARD_MAX_LENGTH, validated in platform schemas) project_name/project_version = 127 (core/config.PROJECT_MAX_LENGTH) suggested_area = 120 (core/config.FRIENDLY_NAME_MAX_LEN via AREA_SCHEMA)
Fields§
§uses_password: boolDeprecated in ESPHome 2026.1.0, but kept for backward compatibility with older ESPHome versions that still send this field.
name: StringThe name of the node, given by “App.set_name()” - device hostname
mac_address: StringThe mac address of the device. For example “AC:BC:32:89:0E:A9”
esphome_version: StringA string describing the ESPHome version. For example “1.10.0”
compilation_time: StringA string describing the date of compilation, this is generated by the compiler and therefore may not be in the same format all the time. If the user isn’t using ESPHome, this will also not be set.
model: StringThe model of the board. For example NodeMCU max_data_length matches core/config.BOARD_MAX_LENGTH (validated in platform schemas)
has_deep_sleep: bool§project_name: StringThe esphome project details if set max_data_length matches core/config.PROJECT_MAX_LENGTH
project_version: String§webserver_port: u32§legacy_bluetooth_proxy_version: u32Deprecated in API version 1.9
bluetooth_proxy_feature_flags: u32§manufacturer: String§friendly_name: String§legacy_voice_assistant_version: u32Deprecated in API version 1.10
voice_assistant_feature_flags: u32§suggested_area: String§bluetooth_mac_address: StringThe Bluetooth mac address of the device. For example “AC:BC:32:89:0E:AA”
api_encryption_supported: boolSupports receiving and saving api encryption key
devices: Vec<DeviceInfo>§areas: Vec<AreaInfo>§area: Option<AreaInfo>Top-level area info to phase out suggested_area
zwave_proxy_feature_flags: u32Indicates if Z-Wave proxy support is available and features supported
zwave_home_id: u32§serial_proxies: Vec<SerialProxyInfo>Serial proxy instance metadata
Trait Implementations§
Source§impl Clone for DeviceInfoResponse
impl Clone for DeviceInfoResponse
Source§fn clone(&self) -> DeviceInfoResponse
fn clone(&self) -> DeviceInfoResponse
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DeviceInfoResponse
impl Debug for DeviceInfoResponse
Source§impl Default for DeviceInfoResponse
impl Default for DeviceInfoResponse
Source§impl From<DeviceInfoResponse> for EspHomeMessage
impl From<DeviceInfoResponse> for EspHomeMessage
Source§fn from(msg: DeviceInfoResponse) -> Self
fn from(msg: DeviceInfoResponse) -> Self
Source§impl Message for DeviceInfoResponse
impl Message for DeviceInfoResponse
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for DeviceInfoResponse
impl PartialEq for DeviceInfoResponse
Source§fn eq(&self, other: &DeviceInfoResponse) -> bool
fn eq(&self, other: &DeviceInfoResponse) -> bool
self and other values to be equal, and is used by ==.