G-Two / homeassistant-subaru

Subaru STARLINK custom component for Home Assistant.
Apache License 2.0
54 stars 6 forks source link

Support g1 (2016-2018) vehicles #3

Closed G-Two closed 3 years ago

G-Two commented 3 years ago

Add support for g1 vehicles. Functionality is limited compared to g2 (2019+) vehicles.

Sensor:

Lock:

Device Tracker:

Services:

Known issues:

G-Two commented 3 years ago

@stboch if you can, please give this branch a test on your HA instance. There should hopefully be no change to what you experience.

@jeffphilly please test, and let me know if it works as expected on your 2017 Subaru.

Comment on any issues in this PR. Thanks.

G-Two commented 3 years ago

subarulink module code changes are here for those curious: https://github.com/G-Two/subarulink/pull/25

stboch commented 3 years ago

@G-Two this just kept slipping my mind until now.

On my 2020 outback I have an erroneous temp of -83.2 (seems like the one when it doesn't know it) been since the beginning just kept forgetting to tell you. And want to clean up the charts so they look right.

G-Two commented 3 years ago

@stboch can you paste the debug output from when vehicleStatus.json is called? I think that's where it gets it from.

stboch commented 3 years ago

{'data': {'cancelled': False,

'errorCode': None,

'remoteServiceState': 'finished',

'remoteServiceType': 'condition',

'result': {'lastUpdatedTime': '2020-12-08T01:41:56+0000',

'odometer': 74759127,

'vehicleStatus': [{'key': 'TRANSMISSION_MODE',

'value': 'UNKNOWN'},

{'key': 'TYRE_PRESSURE_REAR_RIGHT',

'value': '32767'},

{'key': 'SEAT_BELT_STATUS_THIRD_MIDDLE',

'value': 'UNKNOWN'},

{'key': 'DOOR_FRONT_LEFT_LOCK_STATUS',

'value': 'UNKNOWN'},

{'key': 'SEAT_BELT_STATUS_FRONT_MIDDLE',

'value': 'NOT_EQUIPPED'},

{'key': 'SEAT_OCCUPATION_STATUS_FRONT_RIGHT',

'value': 'UNKNOWN'},

{'key': 'EXT_EXTERNAL_TEMP',

'value': '-64.0'},

{'key': 'WINDOW_BACK_STATUS',

'value': 'UNKNOWN'},

{'key': 'WINDOW_REAR_LEFT_STATUS',

'value': 'CLOSE'},

{'key': 'SEAT_BELT_STATUS_SECOND_MIDDLE',

'value': 'UNKNOWN'},

{'key': 'SEAT_OCCUPATION_STATUS_THIRD_RIGHT',

'value': 'UNKNOWN'},

{'key': 'DOOR_FRONT_LEFT_POSITION',

'value': 'CLOSED'},

{'key': 'TYRE_PRESSURE_FRONT_RIGHT',

'value': '32767'},

{'key': 'SEAT_BELT_STATUS_THIRD_RIGHT',

'value': 'UNKNOWN'},

{'key': 'DOOR_REAR_RIGHT_POSITION',

'value': 'CLOSED'},

{'key': 'DISTANCE_TO_EMPTY_FUEL',

'value': '16383'},

{'key': 'SEAT_BELT_STATUS_FRONT_LEFT',

'value': 'BELTED'},

{'key': 'TYRE_STATUS_REAR_LEFT',

'value': 'UNKNOWN'},

{'key': 'SEAT_OCCUPATION_STATUS_FRONT_MIDDLE',

'value': 'NOT_EQUIPPED'},

{'key': 'DOOR_BOOT_POSITION',

'value': 'CLOSED'},

{'key': 'AVG_FUEL_CONSUMPTION',

'value': '16383'},

{'key': 'TYRE_PRESSURE_FRONT_LEFT',

'value': '32767'},

{'key': 'DOOR_REAR_RIGHT_LOCK_STATUS',

'value': 'UNKNOWN'},

{'key': 'SEAT_BELT_STATUS_SECOND_RIGHT',

'value': 'UNKNOWN'},

{'key': 'POSITION_SPEED_KMPH',

'value': '0'},

{'key': 'DOOR_FRONT_RIGHT_POSITION',

'value': 'CLOSED'},

{'key': 'SEAT_OCCUPATION_STATUS_FRONT_LEFT',

'value': 'UNKNOWN'},

{'key': 'DOOR_REAR_LEFT_LOCK_STATUS',

'value': 'UNKNOWN'},

{'key': 'SEAT_OCCUPATION_STATUS_SECOND_MIDDLE',

'value': 'UNKNOWN'},

{'key': 'POSITION_TIMESTAMP',

'value': '2020-12-08T01:41:55Z'},

{'key': 'BATTERY_VOLTAGE',

'value': '12.4'},

{'key': 'DOOR_ENGINE_HOOD_POSITION',

'value': 'CLOSED'},

{'key': 'TYRE_PRESSURE_REAR_LEFT',

'value': '32767'},

{'key': 'WINDOW_FRONT_RIGHT_STATUS',

'value': 'CLOSE'},

{'key': 'WINDOW_REAR_RIGHT_STATUS',

'value': 'CLOSE'},

{'key': 'SEAT_BELT_STATUS_SECOND_LEFT',

'value': 'UNKNOWN'},

{'key': 'TYRE_STATUS_FRONT_LEFT',

'value': 'UNKNOWN'},

{'key': 'SEAT_OCCUPATION_STATUS_SECOND_LEFT',

'value': 'UNKNOWN'},

{'key': 'SEAT_OCCUPATION_STATUS_SECOND_RIGHT',

'value': 'UNKNOWN'},

{'key': 'SEAT_OCCUPATION_STATUS_THIRD_LEFT',

'value': 'UNKNOWN'},

{'key': 'SEAT_BELT_STATUS_THIRD_LEFT',

'value': 'UNKNOWN'},

{'key': 'ODOMETER', 'value': '74759127'},

{'key': 'POSITION_HEADING_DEGREE',

'value': '0'},

{'key': 'WINDOW_FRONT_LEFT_STATUS',

'value': 'CLOSE'},

{'key': 'SEAT_OCCUPATION_STATUS_THIRD_MIDDLE',

'value': 'UNKNOWN'},

{'key': 'DOOR_REAR_LEFT_POSITION',

'value': 'CLOSED'},

{'key': 'VEHICLE_STATE_TYPE',

'value': 'IGNITION_OFF'},

{'key': 'DOOR_ENGINE_HOOD_LOCK_STATUS',

'value': 'UNKNOWN'},

{'key': 'WINDOW_SUNROOF_STATUS',

'value': 'UNKNOWN'},

{'key': 'TYRE_STATUS_FRONT_RIGHT',

'value': 'UNKNOWN'},

{'key': 'SEAT_BELT_STATUS_FRONT_RIGHT',

'value': 'BELTED'},

{'key': 'TYRE_STATUS_REAR_RIGHT',

'value': 'UNKNOWN'},

{'key': 'DOOR_BOOT_LOCK_STATUS',

'value': 'UNKNOWN'},

{'key': 'DOOR_FRONT_RIGHT_LOCK_STATUS',

'value': 'UNKNOWN'}]},

'serviceRequestId': None,

'subState': None,

'success': True,

'updateTime': None,

'vin': '4S4W'},

'dataName': 'remoteServiceStatus',

'errorCode': None,

'success': True}

G-Two commented 3 years ago

@stboch yeah, I can add -64.0 as an invalid value for EXT_EXTERNAL_TEMP, and just keep the last known good reading. Is there any particular situation when you've notice this value come up? It looks like there are invalid tire pressures as well, but hopefully those are being ignored.

G-Two commented 3 years ago

@stboch I just noticed you have sane looking values for your windows. If you want those added as binary sensors, please add a new issue and provide some sample data of windows open and closed. On the 2019 Crosstrek, I only get "UNKNOWN".

stboch commented 3 years ago

@G-Two Tested the new branch looks good with g2 still no errors or issues

G-Two commented 3 years ago

Including all of these changes into https://github.com/G-Two/homeassistant-subaru/pull/6 and closing this PR.