Add more device categories, "domains" to the Google Assistant Integration

Currently, only these devices: alarm control panel, camera, group, input boolean, scene, script, switch, light, lock, cover, media player, climate, vacuum, and sensor are avaliable to be controlled via the Google Assistant integration, however, so many more are possible.

https://developers.google.com/assistant/smarthome/guides

And yes, I know most of these can be added through a combo of “switches” and sensors, but that wouldn’t support, for example, a coffee maker with multiple sensor inputs like turning them on and off, adjusting cooking modes and food presets, adjusting the target temperature, and adjusting various non-cooking mode settings.

I like this idea, however it would require quite an overhaul of the devices structure in Home Assistant.

Right now Google Home devices are exposed through the entity, based on the entity domain (eg sensor, media_player) and device class where applicable (eg humidity, temperature).

Historically, this has been done by creating a new platform for the device. vacuum has a battery sensor, mode select for fan speed, and on/off state via its attributes. This could instead be represented as a device with an entity for each attributes.

The device registry currently has no concept of device types. It has no concept of what coffee machine is, nor that is can have multiple modes, an on/off switch, and a temperature sensor. A device is effectively just a container for multiple entities, which happen to be a coffee machine.

We’d need to implement a standard set of device types for the device itself (eg coffee machine, router, washing machine), and a way to get a specific “component” entity by purpose rather than by name.

Yeah, I figured as much, however, would it not be possible to work around this issue by declaring devices a variable that would represent what they would be interpreted by Google Assistant? Like while Device A is a coffeemaker and the entities within it represent different sensors/switches/whatever else such as on and off status, cooking modes, food presets and target temperature, you could declare that Device A is a coffeemaker and the sensors under it should be represented to Google as such.

Hi,

is there a workaround for adding a battery sensor to GA? i want to know how much battery is left in my car :slight_smile:

can i just make a sensor and set some temp as device class?