G-Two / subarulink

A python package for interacting with Subaru STARLINK remote vehicle services.
Apache License 2.0
82 stars 14 forks source link

Windows status? #91

Open nardev opened 7 months ago

nardev commented 7 months ago

Would it be possible to integrate windows status too?

Screenshot from 2023-12-04 01-48-48 Screenshot from 2023-12-04 01-49-50

G-Two commented 6 months ago

The window status information is already available for supported vehicles in the vehicle status dict. https://github.com/G-Two/subarulink/blob/fc1a6c2c151cf62be3b0be8a11a5d5429771b5ad/subarulink/const.py#L42

Users of the Home Assistant Subaru custom component (which obtains vehicle status data from the subarulink module) have been using the window status information successfully for a couple years. image Image Source: https://www.subaruoutback.org/threads/home-assistant-outback-integration-and-dashboard.529302/

nardev commented 6 months ago

The window status information is already available for supported vehicles in the vehicle status dict. https://github.com/G-Two/subarulink/blob/fc1a6c2c151cf62be3b0be8a11a5d5429771b5ad/subarulink/const.py#L42

Users of the Home Assistant Subaru custom component (which obtains vehicle status data from the subarulink module) have been using the window status information successfully for a couple years. image Image Source: https://www.subaruoutback.org/threads/home-assistant-outback-integration-and-dashboard.529302/

Thx. Interesting but I see the status in the log, however, it doesn't create an entity. Also, I only see the engine turn on, despite all other features being available through the app.

It's a 2023 vehicle.

G-Two commented 6 months ago

That's strange. Can you attach your HA subaru device diagnostics output? Subaru has been really inconsistent with strings and they may have just used something new for 2023 models?

nardev commented 6 months ago

Yes, sorry, i forgot. Everythign is there but it doesn't appear in HA.

"integration_manifest": { "domain": "subaru", "name": "Subaru", "codeowners": [ "@G-Two" ], "config_flow": true, "documentation": "https://www.home-assistant.io/integrations/subaru", "iot_class": "cloud_polling", "loggers": [ "stdiomask", "subarulink" ], "requirements": [ "subarulink==0.7.9" ], "is_built_in": true }, "data": { "config_entry": { "pin": "**REDACTED**", "username": "**REDACTED**", "password": "**REDACTED**", "country": "USA", "device_id": "**REDACTED**" }, "options": { "update_enabled": true }, "data": { "model_year": "2023", "model_name": "Outback", "vehicle_name": "**REDACTED**", "vehicle_features": [ "ABS_MIL", "ACCS", "AHBL_MIL", "ATF_MIL", "AWD_MIL", "BSD", "BSDRCT_MIL", "CEL_MIL", "EBD_MIL", "EOL_MIL", "EPAS_MIL", "EPB_MIL", "ESS_MIL", "EYESIGHT", "ISS_MIL", "OPL_MIL", "PANPM-TUIRWAOC", "PWAAADWWAP", "RAB_MIL", "RCC", "REARBRK", "RES", "RESCC", "RHSF", "RPOI", "RPOIA", "RTGU", "SRH_MIL", "SRS_MIL", "TEL_MIL", "TIF_35", "TIR_33", "TLD", "TPMS_MIL", "VALET", "VDC_MIL", "WASH_MIL", "g3" ], "subscription_features": [ "REMOTE", "SAFETY", "Financed3" ], "subscription_status": "ACTIVE", "vehicle_status": { "LONGITUDE": "**REDACTED**", "LATITUDE": "**REDACTED**", "HEADING": null, "LOCATION_VALID": true, "ODOMETER": "**REDACTED**", "TIMESTAMP": "2023-12-14T17:03:29+00:00", "AVG_FUEL_CONSUMPTION": 12.4, "DISTANCE_TO_EMPTY_FUEL": 193, "VEHICLE_STATE_TYPE": "IGNITION_OFF", "TYRE_PRESSURE_FRONT_LEFT": 2344, "TYRE_PRESSURE_FRONT_RIGHT": 2344, "TYRE_PRESSURE_REAR_LEFT": 2275, "TYRE_PRESSURE_REAR_RIGHT": 2275, "DOOR_BOOT_POSITION": "CLOSED", "DOOR_ENGINE_HOOD_POSITION": "CLOSED", "DOOR_FRONT_LEFT_POSITION": "CLOSED", "DOOR_FRONT_RIGHT_POSITION": "CLOSED", "DOOR_REAR_LEFT_POSITION": "CLOSED", "DOOR_REAR_RIGHT_POSITION": "CLOSED", "LAST_UPDATED_DATE": "200", "WINDOW_FRONT_LEFT_STATUS": "CLOSE", "WINDOW_FRONT_RIGHT_STATUS": "CLOSE", "WINDOW_REAR_LEFT_STATUS": "CLOSE", "WINDOW_REAR_RIGHT_STATUS": "CLOSE", "WINDOW_SUNROOF_STATUS": "CLOSE", "REMAINING_FUEL_PERCENT": "40" }, "vehicle_health": { "RECOMMENDED_TIRE_PRESSURE": { "FRONT_TIRES": 35, "REAR_TIRES": 33 }, "ISTROUBLE": false, "FEATURES": { "SRS_MIL": { "ISTROUBLE": false, "ONDATE": null }, "ATF_MIL": { "ISTROUBLE": false, "ONDATE": null }, "BSDRCT_MIL": { "ISTROUBLE": false, "ONDATE": null }, "CEL_MIL": { "ISTROUBLE": false, "ONDATE": null }, "EPB_MIL": { "ISTROUBLE": false, "ONDATE": null }, "EBD_MIL": { "ISTROUBLE": false, "ONDATE": null }, "EOL_MIL": { "ISTROUBLE": false, "ONDATE": null }, "WASH_MIL": { "ISTROUBLE": false, "ONDATE": null }, "ISS_MIL": { "ISTROUBLE": false, "ONDATE": null }, "OPL_MIL": { "ISTROUBLE": false, "ONDATE": null }, "EPAS_MIL": { "ISTROUBLE": false, "ONDATE": null }, "RAB_MIL": { "ISTROUBLE": false, "ONDATE": null }, "TEL_MIL": { "ISTROUBLE": false, "ONDATE": null }, "TPMS_MIL": { "ISTROUBLE": false, "ONDATE": null }, "VDC_MIL": { "ISTROUBLE": false, "ONDATE": null }, "ABS_MIL": { "ISTROUBLE": false, "ONDATE": null }, "AWD_MIL": { "ISTROUBLE": false, "ONDATE": null }, "ESS_MIL": { "ISTROUBLE": false, "ONDATE": null }, "AHBL_MIL": { "ISTROUBLE": false, "ONDATE": null }, "SRH_MIL": { "ISTROUBLE": false, "ONDATE": null } } }, "climate": [ { "name": "Auto", "runTimeMinutes": "10", "climateZoneFrontTemp": "74", "climateZoneFrontAirMode": "AUTO", "climateZoneFrontAirVolume": "AUTO", "outerAirCirculation": "auto", "heatedRearWindowActive": "false", "airConditionOn": "false", "heatedSeatFrontLeft": "off", "heatedSeatFrontRight": "off", "startConfiguration": "START_ENGINE_ALLOW_KEY_IN_IGNITION", "canEdit": "true", "disabled": "false", "vehicleType": "gas", "presetType": "subaruPreset" }, { "name": "Full Cool", "runTimeMinutes": "10", "climateZoneFrontTemp": "60", "climateZoneFrontAirMode": "feet_face_balanced", "climateZoneFrontAirVolume": "7", "airConditionOn": "true", "heatedSeatFrontLeft": "high_cool", "heatedSeatFrontRight": "high_cool", "heatedRearWindowActive": "false", "outerAirCirculation": "outsideAir", "startConfiguration": "START_ENGINE_ALLOW_KEY_IN_IGNITION", "canEdit": "true", "disabled": "true", "vehicleType": "gas", "presetType": "subaruPreset" }, { "name": "Full Heat", "runTimeMinutes": "10", "climateZoneFrontTemp": "85", "climateZoneFrontAirMode": "feet_window", "climateZoneFrontAirVolume": "7", "airConditionOn": "false", "heatedSeatFrontLeft": "high_heat", "heatedSeatFrontRight": "high_heat", "heatedRearWindowActive": "true", "outerAirCirculation": "outsideAir", "startConfiguration": "START_ENGINE_ALLOW_KEY_IN_IGNITION", "canEdit": "true", "disabled": "true", "vehicleType": "gas", "presetType": "subaruPreset" }, { "name": "... Default", "runTimeMinutes": "", "climateZoneFrontTemp": "", "climateZoneFrontAirMode": "FEET_WINDOW", "climateZoneFrontAirVolume": "", "outerAirCirculation": "recirculation", "heatedRearWindowActive": "false", "heatedSeatFrontLeft": "OFF", "heatedSeatFrontRight": "OFF", "airConditionOn": "false", "canEdit": "true", "disabled": "false", "presetType": "userPreset", "startConfiguration": "START_ENGINE_ALLOW_KEY_IN_IGNITION" } ], "last_fetch": "2023-, "last_update": "2026" }

nardev commented 5 months ago

@G-Two any time to check this out?

G-Two commented 5 months ago

I don't see anything wrong in your diagnostics output. Window entities should be automatically generated based upon the data. What version of HA are you using?

G-Two commented 5 months ago

I just noticed that you are using the Subaru integration built into HA Core. Binary sensors (which the windows would appear as) haven't been implemented yet.

If you want the most features (binary sensors, remote start/horn/lights, etc.), you'll need to install the Subaru custom component, which does support window status.

nardev commented 5 months ago

sweet