alandtse / tesla

Tesla custom integration for Home Assistant. This requires a refresh token be generated by third-party apps to login.
Apache License 2.0
552 stars 99 forks source link

teslajsonpy.exceptions.TeslaException #974

Closed Nessy1970 closed 1 month ago

Nessy1970 commented 1 month ago

Is there an existing issue for this?

I have read about the Fleet API and understand I may need to use it

Version of the Tesla component

3.21.0

Version of the Tesla car software

2024.14.6

Model

Model 3 - 2022

Current Behavior

Commanding an action from HA to the car no longer works. (ex: switch.turn_on sentry mode) Service call failed! On the other hand, from the Tesla application, the information on the status of the sentinel is sent correctly to HA.

Expected Behavior

Can send commands to the car as before.

Debug logs

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 239, in handle_call_service
    response = await hass.services.async_call(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2738, in async_call
    response_data = await coro
                    ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/core.py", line 2779, in _execute_service
    return await target(service_call)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 975, in entity_service_call
    single_response = await _handle_entity_call(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1047, in _handle_entity_call
    result = await task
             ^^^^^^^^^^
  File "/config/custom_components/tesla_custom/switch.py", line 158, in async_turn_off
    await self._car.set_sentry_mode(False)
  File "/usr/local/lib/python3.12/site-packages/teslajsonpy/car.py", line 1094, in set_sentry_mode
    data = await self._send_command(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/teslajsonpy/car.py", line 775, in _send_command
    raise ex
  File "/usr/local/lib/python3.12/site-packages/teslajsonpy/car.py", line 760, in _send_command
    data = await self._controller.api(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/teslajsonpy/controller.py", line 1375, in api
    return await self.__post_with_retries_except_unavailable(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 142, in async_wrapped
    return await fn(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 58, in __call__
    do = await self.iter(retry_state=retry_state)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 110, in iter
    result = await action(retry_state)
             ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 78, in inner
    return fn(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/tenacity/__init__.py", line 410, in exc_check
    raise retry_exc.reraise()
          ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/tenacity/__init__.py", line 183, in reraise
    raise self.last_attempt.result()
          ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/concurrent/futures/_base.py", line 449, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 61, in __call__
    result = await fn(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/teslajsonpy/controller.py", line 1407, in __post_with_retries_except_unavailable
    return await self.__connection.post(command, method=method, data=data, url=url)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/teslajsonpy/connection.py", line 166, in post
    return await self.__open(url, method=method, headers=self.head, data=data)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/teslajsonpy/connection.py", line 218, in __open
    raise TeslaException(resp.status_code)
teslajsonpy.exceptions.TeslaException
2024-05-27 14:32:39.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:32:39.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 50 Interval 60
2024-05-27 14:32:39.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:32:40.318 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:32:40.318 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 50 Interval 60
2024-05-27 14:32:40.319 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 50. Since last wake up: 50. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:32:40.319 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 9 ago. Last parked: 50 ago. Last wake up 50 ago. 
2024-05-27 14:32:40.319 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:32:49.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:32:49.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 60 Interval 60
2024-05-27 14:32:49.709 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 0:47:58
2024-05-27 14:32:49.709 DEBUG (MainThread) [teslajsonpy.connection] get: https://owner-api.teslamotors.com/api/1/products {}
2024-05-27 14:32:49.903 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":[{"id":929736399770700,"user_id":1689127259543628,"vehicle_id":1689156871245645,"vin":"LRW3E7FS9NCXXXXXX","color":null,"access_type":"OWNER","display_name":"La Fleche Bleue","option_codes":null,"cached_data":"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","granular_access":{"hide_private":false},"tokens":["433f81a80dcf43ad","ac4c1c7679d14375"],"state":"online","in_service":false,"id_s":"929736399770700","calendar_enabled":true,"api_version":76,"backseat_token":null,"backseat_token_updated_at":null,"ble_autopair_enrolled":false,"command_signing":"required","release_notes_supported":true}],"count":1}
2024-05-27 14:32:49.904 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.196 seconds (success: True)
2024-05-27 14:32:50.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:32:50.319 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 0 Interval 60
2024-05-27 14:32:50.319 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 60. Since last wake up: 60. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:32:50.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 19 ago. Last parked: 60 ago. Last wake up 60 ago. 
2024-05-27 14:32:50.320 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:32:59.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:32:59.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 10 Interval 60
2024-05-27 14:32:59.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:33:00.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:00.319 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 10 Interval 60
2024-05-27 14:33:00.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 70. Since last wake up: 70. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:33:00.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 29 ago. Last parked: 70 ago. Last wake up 70 ago. 
2024-05-27 14:33:00.320 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.002 seconds (success: True)
2024-05-27 14:33:09.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:09.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 20 Interval 60
2024-05-27 14:33:09.708 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:33:10.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:10.320 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 20 Interval 60
2024-05-27 14:33:10.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 80. Since last wake up: 80. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:33:10.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Updating VEHICLE_DATA
2024-05-27 14:33:10.321 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 0:47:37
2024-05-27 14:33:10.322 DEBUG (MainThread) [teslajsonpy.connection] get: https://owner-api.teslamotors.com/api/1/vehicles/LRW3E7FS9NCXXXXXX/vehicle_data?endpoints=charge_state%3Bclimate_state%3Bdrive_state%3Bgui_settings%3Bvehicle_config%3Bvehicle_state%3Blocation_data {}
2024-05-27 14:33:11.046 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":{"id":929736399770700,"user_id":1689127259543628,"vehicle_id":1689156871245645,"vin":"LRW3E7FS9NCXXXXXX","color":null,"access_type":"OWNER","granular_access":{"hide_private":false},"tokens":["433f81a80dcf43ad","ac4c1c7679d14375"],"state":"online","in_service":false,"id_s":"929736399770700","calendar_enabled":true,"api_version":76,"backseat_token":null,"backseat_token_updated_at":null,"ble_autopair_enrolled":false,"charge_state":{"battery_heater_on":false,"battery_level":63,"battery_range":159.33,"charge_amps":16,"charge_current_request":16,"charge_current_request_max":16,"charge_enable_request":true,"charge_energy_added":43.98,"charge_limit_soc":100,"charge_limit_soc_max":100,"charge_limit_soc_min":50,"charge_limit_soc_std":80,"charge_miles_added_ideal":198.5,"charge_miles_added_rated":198.5,"charge_port_cold_weather_mode":false,"charge_port_color":"\u003cinvalid\u003e","charge_port_door_open":false,"charge_port_latch":"Engaged","charge_rate":0.0,"charger_actual_current":0,"charger_phases":null,"charger_pilot_current":16,"charger_power":0,"charger_voltage":2,"charging_state":"Disconnected","conn_charge_cable":"\u003cinvalid\u003e","est_battery_range":163.55,"fast_charger_brand":"\u003cinvalid\u003e","fast_charger_present":false,"fast_charger_type":"\u003cinvalid\u003e","ideal_battery_range":159.33,"max_range_charge_counter":4,"minutes_to_full_charge":0,"not_enough_power_to_heat":null,"off_peak_charging_enabled":false,"off_peak_charging_times":"all_week","off_peak_hours_end_time":360,"preconditioning_enabled":false,"preconditioning_times":"all_week","scheduled_charging_mode":"Off","scheduled_charging_pending":false,"scheduled_charging_start_time":null,"scheduled_charging_start_time_app":0,"scheduled_departure_time":1711793700,"scheduled_departure_time_minutes":675,"supercharger_session_trip_planner":false,"time_to_full_charge":0.0,"timestamp":1716813190578,"trip_charging":false,"usable_battery_level":62,"user_charge_enable_request":null},"climate_state":{"allow_cabin_overheat_protection":false,"auto_seat_climate_left":true,"auto_seat_climate_right":true,"auto_steering_wheel_heat":true,"battery_heater":false,"battery_heater_no_power":null,"cabin_overheat_protection":"Off","cabin_overheat_protection_actively_cooling":false,"climate_keeper_mode":"off","cop_activation_temperature":"High","defrost_mode":0,"driver_temp_setting":20.0,"fan_status":0,"hvac_auto_request":"On","inside_temp":27.4,"is_auto_conditioning_on":false,"is_climate_on":false,"is_front_defroster_on":false,"is_preconditioning":false,"is_rear_defroster_on":false,"left_temp_direction":0,"max_avail_temp":28.0,"min_avail_temp":15.0,"outside_temp":19.5,"passenger_temp_setting":20.0,"remote_heater_control_enabled":false,"right_temp_direction":0,"seat_heater_left":0,"seat_heater_rear_center":0,"seat_heater_rear_left":0,"seat_heater_rear_right":0,"seat_heater_right":0,"side_mirror_heaters":false,"steering_wheel_heat_level":0,"steering_wheel_heater":false,"supports_fan_only_cabin_overheat_protection":true,"timestamp":1716813190578,"wiper_blade_heater":false},"drive_state":{"gps_as_of":1716813189,"heading":202,"latitude":48.922045,"longitude":2.27314,"native_latitude":48.922045,"native_location_supported":1,"native_longitude":2.27314,"native_type":"wgs","power":0,"shift_state":null,"speed":null,"timestamp":1716813190578},"gui_settings":{"gui_24_hour_time":true,"gui_charge_rate_units":"kW","gui_distance_units":"km/hr","gui_range_display":"Rated","gui_temperature_units":"C","gui_tirepressure_units":"Bar","show_range_units":false,"timestamp":1716813190578},"vehicle_config":{"aux_park_lamps":"None","badge_version":1,"can_accept_navigation_requests":true,"can_actuate_trunks":true,"car_special_type":"base","car_type":"model3","charge_port_type":"CCS","cop_user_set_temp_supported":false,"dashcam_clip_save_supported":true,"default_charge_to_max":true,"driver_assist":"TeslaAP3","ece_restrictions":true,"efficiency_package":"M3SRPlus2021Q3GFSH","eu_vehicle":true,"exterior_color":"DeepBlue","exterior_trim":"Black","exterior_trim_override":"","has_air_suspension":false,"has_ludicrous_mode":false,"has_seat_cooling":false,"headlamp_type":"Global","interior_trim_type":"Black2","key_version":2,"motorized_charge_port":true,"paint_color_override":"","performance_package":"Base","plg":true,"pws":true,"rear_drive_unit":"PM216MOSFET","rear_seat_heaters":1,"rear_seat_type":0,"rhd":false,"roof_color":"RoofColorGlass","seat_type":null,"sentry_preview_supported":false,"spoiler_type":"None","sun_roof_installed":null,"supports_qr_pairing":false,"third_row_seats":"None","timestamp":1716813190578,"trim_badging":"50","use_range_badging":true,"utc_offset":3600,"webcam_selfie_supported":true,"webcam_supported":true,"wheel_type":"PinwheelRefresh18"},"vehicle_state":{"api_version":76,"autopark_state_v2":"unavailable","calendar_supported":true,"car_version":"2024.14.6 e43dddb645f3","center_display_state":0,"dashcam_clip_save_available":true,"dashcam_state":"Recording","df":0,"dr":0,"fd_window":0,"feature_bitmask":"fbdffbff,24cbc7f","fp_window":0,"ft":0,"is_user_present":false,"locked":true,"media_info":{"a2dp_source_name":"Galaxy S20 FE 5G de Christophe","audio_volume":1.3333,"audio_volume_increment":0.333333,"audio_volume_max":10.333333,"media_playback_status":"Stopped","now_playing_album":"","now_playing_artist":"","now_playing_duration":0,"now_playing_elapsed":0,"now_playing_source":"TuneIn","now_playing_station":"","now_playing_title":""},"media_state":{"remote_control_enabled":true},"notifications_supported":true,"odometer":20695.756521,"parsed_calendar_supported":true,"pf":0,"pr":0,"rd_window":0,"remote_start":false,"remote_start_enabled":true,"remote_start_supported":true,"rp_window":0,"rt":0,"santa_mode":0,"sentry_mode":true,"sentry_mode_available":true,"service_mode":false,"service_mode_plus":false,"software_update":{"download_perc":0,"expected_duration_sec":2700,"install_perc":0,"status":"","version":" "},"speed_limit_mode":{"active":false,"current_limit_mph":80.650403,"max_limit_mph":120,"min_limit_mph":50.0,"pin_code_set":false},"timestamp":1716813190578,"tpms_hard_warning_fl":false,"tpms_hard_warning_fr":false,"tpms_hard_warning_rl":false,"tpms_hard_warning_rr":false,"tpms_last_seen_pressure_time_fl":1716812765,"tpms_last_seen_pressure_time_fr":1716812735,"tpms_last_seen_pressure_time_rl":1716812736,"tpms_last_seen_pressure_time_rr":1716812765,"tpms_pressure_fl":3.1,"tpms_pressure_fr":3.075,"tpms_pressure_rl":3.0,"tpms_pressure_rr":3.025,"tpms_rcp_front_value":2.9,"tpms_rcp_rear_value":2.9,"tpms_soft_warning_fl":false,"tpms_soft_warning_fr":false,"tpms_soft_warning_rl":false,"tpms_soft_warning_rr":false,"valet_mode":false,"valet_pin_needed":false,"vehicle_name":"La Fleche Bleue","vehicle_self_test_progress":0,"vehicle_self_test_requested":false,"webcam_available":true}}}
2024-05-27 14:33:11.047 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.728 seconds (success: True)
2024-05-27 14:33:19.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:19.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 30 Interval 60
2024-05-27 14:33:19.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:33:20.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:20.319 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 30 Interval 60
2024-05-27 14:33:20.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 90. Since last wake up: 90. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:33:20.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 9 ago. Last parked: 90 ago. Last wake up 90 ago. 
2024-05-27 14:33:20.320 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.002 seconds (success: True)
2024-05-27 14:33:29.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:29.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 40 Interval 60
2024-05-27 14:33:29.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:33:30.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:30.319 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 40 Interval 60
2024-05-27 14:33:30.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 100. Since last wake up: 100. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:33:30.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 19 ago. Last parked: 100 ago. Last wake up 100 ago. 
2024-05-27 14:33:30.320 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.002 seconds (success: True)
2024-05-27 14:33:39.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:39.709 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 50 Interval 60
2024-05-27 14:33:39.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:33:40.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:40.319 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 50 Interval 60
2024-05-27 14:33:40.319 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 110. Since last wake up: 110. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:33:40.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 29 ago. Last parked: 110 ago. Last wake up 110 ago. 
2024-05-27 14:33:40.320 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:33:49.707 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:49.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 60 Interval 60
2024-05-27 14:33:49.708 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 0:46:58
2024-05-27 14:33:49.709 DEBUG (MainThread) [teslajsonpy.connection] get: https://owner-api.teslamotors.com/api/1/products {}
2024-05-27 14:33:49.893 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":[{"id":929736399770700,"user_id":1689127259543628,"vehicle_id":1689156871245645,"vin":"LRW3E7FS9NCXXXXXX","color":null,"access_type":"OWNER","display_name":"La Fleche Bleue","option_codes":null,"cached_data":"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","granular_access":{"hide_private":false},"tokens":["433f81a80dcf43ad","ac4c1c7679d14375"],"state":"online","in_service":false,"id_s":"929736399770700","calendar_enabled":true,"api_version":76,"backseat_token":null,"backseat_token_updated_at":null,"ble_autopair_enrolled":false,"command_signing":"required","release_notes_supported":true}],"count":1}
2024-05-27 14:33:49.894 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.187 seconds (success: True)
2024-05-27 14:33:50.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:50.319 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 0 Interval 60
2024-05-27 14:33:50.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 120. Since last wake up: 120. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:33:50.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Updating VEHICLE_DATA
2024-05-27 14:33:50.321 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 0:46:57
2024-05-27 14:33:50.321 DEBUG (MainThread) [teslajsonpy.connection] get: https://owner-api.teslamotors.com/api/1/vehicles/LRW3E7FS9NCXXXXXX/vehicle_data?endpoints=charge_state%3Bclimate_state%3Bdrive_state%3Bgui_settings%3Bvehicle_config%3Bvehicle_state%3Blocation_data {}
2024-05-27 14:33:50.704 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":{"id":929736399770700,"user_id":1689127259543628,"vehicle_id":1689156871245645,"vin":"LRW3E7FS9NCXXXXXX","color":null,"access_type":"OWNER","granular_access":{"hide_private":false},"tokens":["433f81a80dcf43ad","ac4c1c7679d14375"],"state":"online","in_service":false,"id_s":"929736399770700","calendar_enabled":true,"api_version":76,"backseat_token":null,"backseat_token_updated_at":null,"ble_autopair_enrolled":false,"charge_state":{"battery_heater_on":false,"battery_level":63,"battery_range":159.23,"charge_amps":16,"charge_current_request":16,"charge_current_request_max":16,"charge_enable_request":true,"charge_energy_added":43.98,"charge_limit_soc":100,"charge_limit_soc_max":100,"charge_limit_soc_min":50,"charge_limit_soc_std":80,"charge_miles_added_ideal":198.5,"charge_miles_added_rated":198.5,"charge_port_cold_weather_mode":false,"charge_port_color":"\u003cinvalid\u003e","charge_port_door_open":false,"charge_port_latch":"Engaged","charge_rate":0.0,"charger_actual_current":0,"charger_phases":null,"charger_pilot_current":16,"charger_power":0,"charger_voltage":2,"charging_state":"Disconnected","conn_charge_cable":"\u003cinvalid\u003e","est_battery_range":163.46,"fast_charger_brand":"\u003cinvalid\u003e","fast_charger_present":false,"fast_charger_type":"\u003cinvalid\u003e","ideal_battery_range":159.23,"max_range_charge_counter":4,"minutes_to_full_charge":0,"not_enough_power_to_heat":null,"off_peak_charging_enabled":false,"off_peak_charging_times":"all_week","off_peak_hours_end_time":360,"preconditioning_enabled":false,"preconditioning_times":"all_week","scheduled_charging_mode":"Off","scheduled_charging_pending":false,"scheduled_charging_start_time":null,"scheduled_charging_start_time_app":0,"scheduled_departure_time":1711793700,"scheduled_departure_time_minutes":675,"supercharger_session_trip_planner":false,"time_to_full_charge":0.0,"timestamp":1716813230497,"trip_charging":false,"usable_battery_level":62,"user_charge_enable_request":null},"climate_state":{"allow_cabin_overheat_protection":false,"auto_seat_climate_left":true,"auto_seat_climate_right":true,"auto_steering_wheel_heat":true,"battery_heater":false,"battery_heater_no_power":null,"cabin_overheat_protection":"Off","cabin_overheat_protection_actively_cooling":false,"climate_keeper_mode":"off","cop_activation_temperature":"High","defrost_mode":0,"driver_temp_setting":20.0,"fan_status":0,"hvac_auto_request":"On","inside_temp":27.3,"is_auto_conditioning_on":false,"is_climate_on":false,"is_front_defroster_on":false,"is_preconditioning":false,"is_rear_defroster_on":false,"left_temp_direction":0,"max_avail_temp":28.0,"min_avail_temp":15.0,"outside_temp":19.5,"passenger_temp_setting":20.0,"remote_heater_control_enabled":false,"right_temp_direction":0,"seat_heater_left":0,"seat_heater_rear_center":0,"seat_heater_rear_left":0,"seat_heater_rear_right":0,"seat_heater_right":0,"side_mirror_heaters":false,"steering_wheel_heat_level":0,"steering_wheel_heater":false,"supports_fan_only_cabin_overheat_protection":true,"timestamp":1716813230497,"wiper_blade_heater":false},"drive_state":{"gps_as_of":1716813229,"heading":202,"latitude":48.922045,"longitude":2.27314,"native_latitude":48.922045,"native_location_supported":1,"native_longitude":2.27314,"native_type":"wgs","power":0,"shift_state":null,"speed":null,"timestamp":1716813230497},"gui_settings":{"gui_24_hour_time":true,"gui_charge_rate_units":"kW","gui_distance_units":"km/hr","gui_range_display":"Rated","gui_temperature_units":"C","gui_tirepressure_units":"Bar","show_range_units":false,"timestamp":1716813230497},"vehicle_config":{"aux_park_lamps":"None","badge_version":1,"can_accept_navigation_requests":true,"can_actuate_trunks":true,"car_special_type":"base","car_type":"model3","charge_port_type":"CCS","cop_user_set_temp_supported":false,"dashcam_clip_save_supported":true,"default_charge_to_max":true,"driver_assist":"TeslaAP3","ece_restrictions":true,"efficiency_package":"M3SRPlus2021Q3GFSH","eu_vehicle":true,"exterior_color":"DeepBlue","exterior_trim":"Black","exterior_trim_override":"","has_air_suspension":false,"has_ludicrous_mode":false,"has_seat_cooling":false,"headlamp_type":"Global","interior_trim_type":"Black2","key_version":2,"motorized_charge_port":true,"paint_color_override":"","performance_package":"Base","plg":true,"pws":true,"rear_drive_unit":"PM216MOSFET","rear_seat_heaters":1,"rear_seat_type":0,"rhd":false,"roof_color":"RoofColorGlass","seat_type":null,"sentry_preview_supported":false,"spoiler_type":"None","sun_roof_installed":null,"supports_qr_pairing":false,"third_row_seats":"None","timestamp":1716813230497,"trim_badging":"50","use_range_badging":true,"utc_offset":3600,"webcam_selfie_supported":true,"webcam_supported":true,"wheel_type":"PinwheelRefresh18"},"vehicle_state":{"api_version":76,"autopark_state_v2":"unavailable","calendar_supported":true,"car_version":"2024.14.6 e43dddb645f3","center_display_state":0,"dashcam_clip_save_available":true,"dashcam_state":"Recording","df":0,"dr":0,"fd_window":0,"feature_bitmask":"fbdffbff,24cbc7f","fp_window":0,"ft":0,"is_user_present":false,"locked":true,"media_info":{"a2dp_source_name":"Galaxy S20 FE 5G de Christophe","audio_volume":1.3333,"audio_volume_increment":0.333333,"audio_volume_max":10.333333,"media_playback_status":"Stopped","now_playing_album":"","now_playing_artist":"","now_playing_duration":0,"now_playing_elapsed":0,"now_playing_source":"TuneIn","now_playing_station":"","now_playing_title":""},"media_state":{"remote_control_enabled":true},"notifications_supported":true,"odometer":20695.756521,"parsed_calendar_supported":true,"pf":0,"pr":0,"rd_window":0,"remote_start":false,"remote_start_enabled":true,"remote_start_supported":true,"rp_window":0,"rt":0,"santa_mode":0,"sentry_mode":true,"sentry_mode_available":true,"service_mode":false,"service_mode_plus":false,"software_update":{"download_perc":0,"expected_duration_sec":2700,"install_perc":0,"status":"","version":" "},"speed_limit_mode":{"active":false,"current_limit_mph":80.650403,"max_limit_mph":120,"min_limit_mph":50.0,"pin_code_set":false},"timestamp":1716813230497,"tpms_hard_warning_fl":false,"tpms_hard_warning_fr":false,"tpms_hard_warning_rl":false,"tpms_hard_warning_rr":false,"tpms_last_seen_pressure_time_fl":1716812765,"tpms_last_seen_pressure_time_fr":1716812735,"tpms_last_seen_pressure_time_rl":1716812736,"tpms_last_seen_pressure_time_rr":1716812765,"tpms_pressure_fl":3.1,"tpms_pressure_fr":3.075,"tpms_pressure_rl":3.0,"tpms_pressure_rr":3.025,"tpms_rcp_front_value":2.9,"tpms_rcp_rear_value":2.9,"tpms_soft_warning_fl":false,"tpms_soft_warning_fr":false,"tpms_soft_warning_rl":false,"tpms_soft_warning_rr":false,"valet_mode":false,"valet_pin_needed":false,"vehicle_name":"La Fleche Bleue","vehicle_self_test_progress":0,"vehicle_self_test_requested":false,"webcam_available":true}}}
2024-05-27 14:33:50.706 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.387 seconds (success: True)
2024-05-27 14:33:52.642 ERROR (MainThread) [custom_components.frigate.api] Error fetching information from http://ccab4aaf-frigate-fa:5000/api/stats: Cannot connect to host ccab4aaf-frigate-fa:5000 ssl:default [None]
2024-05-27 14:33:59.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:33:59.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 10 Interval 60
2024-05-27 14:33:59.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:34:00.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:34:00.320 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 10 Interval 60
2024-05-27 14:34:00.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 130. Since last wake up: 130. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:34:00.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 9 ago. Last parked: 130 ago. Last wake up 130 ago. 
2024-05-27 14:34:00.321 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:34:09.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:34:09.709 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 20 Interval 60
2024-05-27 14:34:09.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:34:10.320 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:34:10.321 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 20 Interval 60
2024-05-27 14:34:10.321 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 140. Since last wake up: 140. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:34:10.321 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 19 ago. Last parked: 140 ago. Last wake up 140 ago. 
2024-05-27 14:34:10.322 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:34:11.705 ERROR (MainThread) [homeassistant.components.hassio.handler] Client error on /addons/a0d7b954_esphome/changelog request 0, message='Attempt to decode JSON with unexpected mimetype: application/octet-stream', url=URL('http://172.30.32.2/addons/a0d7b954_esphome/changelog')
2024-05-27 14:34:19.708 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:34:19.708 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 30 Interval 60
2024-05-27 14:34:19.709 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.001 seconds (success: True)
2024-05-27 14:34:20.319 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-05-27 14:34:20.320 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 30 Interval 60
2024-05-27 14:34:20.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: online. Polling policy: normal. Update state: normal. Since last park: 150. Since last wake up: 150. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected 
2024-05-27 14:34:20.320 DEBUG (MainThread) [teslajsonpy.controller] 22645: Skipping update with state online. Polling: True. Last update: 29 ago. Last parked: 150 ago. Last wake up 150 ago. 
2024-05-27 14:34:20.321 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.002 seconds (success: True)

Anything else?

No response

llamafilm commented 1 month ago

Do these debug logs correspond to the same time period when the exception happened? I don’t see any errors in the log you posted.

If this recently broke without any changes from you, I would guess it’s because Tesla is now requiring the Fleet API for your vehicle. Read the documentation about setting that up.

Nessy1970 commented 1 month ago

Yes the debug log comes from when I reproduced the problem (but it was too big for Github, I had to take it only from the end of the file). On the other hand I had the following in HA's diary

Enregistreur: homeassistant.components.websocket_api.http.connection Source: components/websocket_api/commands.py:239 intégration: Home Assistant WebSocket API (documentation, problèmes) S'est produit pour la première fois: 14:31:16 (2 occurrences) Dernier enregistrement: 14:32:32

[546798003392] Unexpected exception Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 239, in handle_call_service response = await hass.services.async_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2738, in async_call response_data = await coro ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2779, in _execute_service return await target(service_call) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 975, in entity_service_call single_response = await _handle_entity_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1047, in _handle_entity_call result = await task ^^^^^^^^^^ File "/config/custom_components/tesla_custom/switch.py", line 158, in async_turn_off await self._car.set_sentry_mode(False) File "/usr/local/lib/python3.12/site-packages/teslajsonpy/car.py", line 1094, in set_sentry_mode data = await self._send_command( ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/teslajsonpy/car.py", line 775, in _send_command raise ex File "/usr/local/lib/python3.12/site-packages/teslajsonpy/car.py", line 760, in _send_command data = await self._controller.api( ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/teslajsonpy/controller.py", line 1375, in api return await self.post_with_retries_except_unavailable( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 142, in async_wrapped return await fn(*args, *kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 58, in call do = await self.iter(retry_state=retry_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 110, in iter result = await action(retry_state) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 78, in inner return fn(args, **kwargs) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/tenacity/init.py", line 410, in exc_check raise retry_exc.reraise() ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/tenacity/init.py", line 183, in reraise raise self.last_attempt.result() ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/concurrent/futures/_base.py", line 449, in result return self.get_result() ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result raise self._exception File "/usr/local/lib/python3.12/site-packages/tenacity/_asyncio.py", line 61, in call result = await fn(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/teslajsonpy/controller.py", line 1407, in post_with_retries_except_unavailable return await self.connection.post(command, method=method, data=data, url=url) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/teslajsonpy/connection.py", line 166, in post return await self.open(url, method=method, headers=self.head, data=data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/teslajsonpy/connection.py", line 218, in open raise TeslaException(resp.status_code) teslajsonpy.exceptions.TeslaException

the complete log and attached! home-assistant_tesla_custom_2024-05-27T12-34-22.313Z.log

shadowdoc commented 1 month ago

I also have the same issue and have the fleet API configured

Disincentivato commented 1 month ago

same here from yesterday, I can update the data but any command doesn't work. Immagine 2024-05-28 121843

strighter commented 1 month ago

Same

skipishere commented 1 month ago

Please do not add "same" or "me too" like comments, it makes issues far longer & harder to navigate and doesn't help anyone unless you're adding in additional details to help narrow down or replicate.

If you are interested in the issue, please use the subscribe to issue button to be notified of any updates.

llamafilm commented 1 month ago

@Nessy1970 the error is clearly stated in your log file:

2024-05-27 14:32:17.880 DEBUG (MainThread) [teslajsonpy.connection] 403: {"response":null,"error":"Tesla Vehicle Command Protocol required, please refer to the documentation here: https://developer.tesla.com/docs/fleet-api#2023-10-09-rest-api-vehicle-commands-endpoint-deprecation-warning","error_description":""}

Additionally, when opening this issue you ticked the box saying:

I have read about the Fleet API and understand I may need to use it I understand issues relating to read only commands will be auto closed if not using the Fleet API.

Disincentivato commented 1 month ago

@Nessy1970 the error is clearly stated in your log file:

2024-05-27 14:32:17.880 DEBUG (MainThread) [teslajsonpy.connection] 403: {"response":null,"error":"Tesla Vehicle Command Protocol required, please refer to the documentation here: https://developer.tesla.com/docs/fleet-api#2023-10-09-rest-api-vehicle-commands-endpoint-deprecation-warning","error_description":""}

Additionally, when opening this issue you ticked the box saying:

I have read about the Fleet API and understand I may need to use it I understand issues relating to read only commands will be auto closed if not using the Fleet API.

Therefore even for those who have always worked until last week they have discontinued the possibility of sending commands via integration. The use of the fleet API method seems imho to be a rather complex solution, I deduce that this add on no longer makes much sense to have, also because there are no clear guides on how to apply the fleet API other than just links that refer to unclear and complex instructions. Thank you.

skipishere commented 1 month ago

@Disincentivato unfortunately we know it's a complex setup, and is not something we have control over because Tesla want this to be used by Fleets and not for individual consumers (something that many people have raised with Tesla).

If your vehicle is affected by this (most likely), you'll need to install the Tesla HTTP Proxy add-on and configure this component to use it. This requires a complex setup; see here for details. After configuring the add-on, tick the box for "Fleet API Proxy" in this component, and the config flow will autofill your Client ID, Proxy URL, and SSL certificate.

If you can figure out a way to either make it less complicated or the instructions clearer, then please submit a PR, as this is all community driven and people have other jobs/commitments that make it hard to put lots of time into.

Disincentivato commented 1 month ago

@skipishere thanks for your reply, I read the instructions to configure the proxy and unfortunately it is beyond my skills. I stukked at the first row :) I really appreciate the work that the community does during their free time to make the add on as functional as possible. At the moment I will wait to see if alternative solutions come out.

Nessy1970 commented 1 month ago

I configured Fleet API, and everything works again. Except sending a destination address in the car.

Nessy1970 commented 1 month ago

@skipishere thanks for your reply, I read the instructions to configure the proxy and unfortunately it is beyond my skills. I stukked at the first row :) I really appreciate the work that the community does during their free time to make the add on as functional as possible. At the moment I will wait to see if alternative solutions come out.

@skipishere thanks for your reply, I read the instructions to configure the proxy and unfortunately it is beyond my skills. I stukked at the first row :) I really appreciate the work that the community does during their free time to make the add on as functional as possible. At the moment I will wait to see if alternative solutions come out.

I have a step-by-step tutorial, but it is in French https://forum.hacf.fr/t/lintegration-tesla-et-automatisation/7572/218?page=10

Disincentivato commented 1 month ago

@Nessy1970 thanks a lot!

traveler6666 commented 3 weeks ago

Hi, is this the only solution now with fleets? Why is the other option then still available? Best,

llamafilm commented 3 weeks ago

@traveler6666 its still available because (A) Tesla has not given a clear cutoff date when it will completely stop working; it seems to be a gradual rollout. And (B) the old method still works fine for reading sensor data, not sending commands.

skipishere commented 3 weeks ago

@traveler6666 at the moment some cars pre2024 still work on the old way but "at some point" will be forced to use the fleet API. Also from docs

Pre-2021 Model S/X are excluded from these changes.

traveler6666 commented 3 weeks ago

ok. Understood. Thank you.

abreingan commented 2 weeks ago

@traveler6666 its still available because (A) Tesla has not given a clear cutoff date when it will completely stop working; it seems to be a gradual rollout. And (B) the old method still works fine for reading sensor data, not sending commands.

Till today I have been using TeslaMate to retrieve data and the Fleet API for commands (for solar charging), and this worked well, but now seems to be rate limited (with Tesla suggesting 5 minute poll). I had therefore turned polling to once a day, assuming this might contribute to the 50 commands per day limit, as I can usually just live under that limit.

Could someone please confirm:-

  1. Does polling "cost" a command?
  2. Is there any way to poll on demand? Simply put - any tips on solar charging using Fleet?
skipishere commented 2 weeks ago

@abreingan please open up a separate discussion