The mychevy component communicates with the my.chevrolet website using selenium to log in as your user and screen scrape the data provided. GM does not make it easy to sign up for any official development program, so this provides a workaround to get access to your data.

This component provides the following platforms:

  • Binary sensors: if the car is plugged in
  • Sensors: Battery Level, Charge Mode, EST Range, Total Distance Traveled


To use MyChevy in your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
  password: YOUR_PASSWORD

Configuration Variables


(string)(Required)The email address associated with your my.chevrolet account.


(string)(Required)The password for your given my.chevrolet account.


Because this uses selenium behind the scenes, installation is more complicated than merely pip install. See the installation instructions.


The architecture of the GM automotive networking imposes some limitations on the functionality of the component.

The OnStar network link is very slow, and takes 1 - 3 minutes to get information back from the car. As such the mychevy component only polls every 30 minutes to not overwhelms that connection.

The OnStar network (or more specifically the gateway used by the my.chevrolet website) appears to suffer more than most networks when the car is a) in a garage, and b) it’s cold outside (like < 15 degrees F). One of the provided sensors is a status sensor which indicates if we got connectivity with the car on the last polling cycle or not.

The “API” for this is written by web scraping. As such, it only currently is known to work if you have a Chevy Bolt EV, and only 1 Chevy car connected to OnStar. Patches for extended support should go to the project first, then Home Assistant can be extended.