Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Climate "Your vehicle does not support this feature" on Ioniq 5 #400

Closed
kurts-gmail opened this issue Nov 2, 2022 · 30 comments
Closed

Climate "Your vehicle does not support this feature" on Ioniq 5 #400

kurts-gmail opened this issue Nov 2, 2022 · 30 comments
Labels
bug Something isn't working USA

Comments

@kurts-gmail
Copy link

Start/stop climate don't work with my USA Ioniq5. Lock does work. Did they change the API? There's mention of it over at bluelinky Hacksore/bluelinky#221

2022-11-01 23:47:17.743 DEBUG (SyncWorker_1) [custom_components.kia_uvo.HyundaiBlueLinkAPIUSA] kia_uvo - Stop engine..
2022-11-01 23:47:17.744 DEBUG (SyncWorker_1) [custom_components.kia_uvo.HyundaiBlueLinkAPIUSA] kia_uvo - Stop engine headers: {'content-type': 'application/json;charset=UTF-8', 'accept': 'application/json, text/plain, /', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US,en;q=0.9', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36', 'host': 'api.telematics.hyundaiusa.com', 'origin': 'https://api.telematics.hyundaiusa.com', 'referer': 'https://api.telematics.hyundaiusa.com/login', 'from': 'SPA', 'to': 'ISS', 'language': '0', 'offset': '-6', 'sec-fetch-dest': 'empty', 'sec-fetch-mode': 'cors', 'sec-fetch-site': 'same-origin', 'refresh': 'false', 'encryptFlag': 'false', 'brandIndicator': 'H', 'gen': '2', 'username': '..., 'blueLinkServicePin': '...', 'client_id': '...', 'clientSecret': 'v...', 'accessToken': '...', 'vin': '...', 'vehicleId': '...', 'pAuth': None, 'registrationId': '...'}
2022-11-01 23:47:18.216 DEBUG (SyncWorker_1) [custom_components.kia_uvo.HyundaiBlueLinkAPIUSA] kia_uvo - Stop engine response status code: 502
2022-11-01 23:47:18.217 DEBUG (SyncWorker_1) [custom_components.kia_uvo.HyundaiBlueLinkAPIUSA] kia_uvo - Stop engine response: {"errorSubCode":"GEN","systemName":"BLODS","errorSubMessage":"Feature Status is OFF","errorMessage":"Your vehicle does not support this feature.","errorCode":502}

@cdnninja
Copy link
Collaborator

cdnninja commented Nov 2, 2022

Which version are you running?

@kurts-gmail
Copy link
Author

v1.8.2

@kurts-gmail kurts-gmail reopened this Nov 2, 2022
@cdnninja
Copy link
Collaborator

cdnninja commented Nov 2, 2022

Are you able to sniff the payload from your mobile app and compare to the above? Interested to see if it matches what was mentioned in the other thread or not.

@cdnninja cdnninja added bug Something isn't working USA labels Nov 2, 2022
@kurts-gmail
Copy link
Author

I’m not sure how to do that since the request from the app is sent with TLS and encrypted right? Was wondering if I could dump the strings from the iOS app.

@cdnninja
Copy link
Collaborator

cdnninja commented Nov 2, 2022

I haven't tried it but https://www.charlesproxy.com/ should work for iOS. It is using TLS correct.

@kurts-gmail
Copy link
Author

I didn’t have luck with this. Got charlesproxy installed and working with other ssl sites but bluelink app says the certificate is invalid. Charles proxy docs mention some apps use pinned certs preventing its use.

@cdnninja
Copy link
Collaborator

cdnninja commented Nov 4, 2022

Another option is we give the bluelinky details a try and see if they work? Is that something you can help with? Happy to get the code ready for you to run.

@kurts-gmail
Copy link
Author

I cloned bluelinky and I got the same "Your vehicle does not support this feature" error in both the master and develop (which has the new API) branches.

I misinterpreted the Bluelinky issue I linked. It looks like the API change was in Bluelinky -- the Hyundai API stayed the same.

I also put in a junk body for the start request and got the same error. That makes me wonder if the start API URL changed.

@cdnninja
Copy link
Collaborator

cdnninja commented Nov 8, 2022

Looks like we will need something who finds a way to sniff the traffic to figure this one out. Any chance one of you could help: @TarheelGrad1998 @bvlaicu @TarheelGrad1998?

@zphaze
Copy link

zphaze commented Sep 5, 2023

I have just purchased an Ioniq 5 SEL in the USA and have sniffed the traffic when sending a climate start command from my iPhone. Climate temp set to 72f and no heating functions toggled on.

POST /ac/v2/evc/fatc/start HTTP/1.1
Host: api.telematics.hyundaiusa.com
deviceId: ...
Accept: */*
deviceMeid: ...
Accept-Encoding: gzip, deflate, br
Location: ...
Content-Length: 76
User-Agent: MyHyundai/5.1.5 (iPhone; iOS 17.0; Scale/3.00)
deviceName: iPhone
gen: 2
Cookie: ...
Version: 1.4.7
pinToken: ...
registrationId: ....
osVersion: 17.0
from: SPA
access_token: ...
brandIndicator: H
Accept-Language: en-US;q=1
NADID: ...
requestId: 59
username: ...
Featureusage_time: 2023-09-04T16:43:11Z
Client_Id: ...
vin: ...
Offset: -7
Connection: keep-alive
Content-Type: application/json
osType: iOS
APPCLOUD-VIN: ...
appVersion: 5.1.5
Language: 0
To: ISS
appType: MyHyundai

{"airCtrl":1,"airTemp":{"value":"72","unit":1},"heating1":0,"defrost":false}

I would love to help get this working for the US Ioniq 5. If i removed any info you need, please let me know.

might be helpful for related issues as well

Hyundai-Kia-Connect/hyundai_kia_connect_api/issues/369
and
Hacksore/bluelinky/issues/221

@cdnninja
Copy link
Collaborator

cdnninja commented Sep 5, 2023

That looks to be exactly what is needed. Is this something you want to learn to assist with on development?

@zphaze
Copy link

zphaze commented Sep 5, 2023

Yes, I would love to learn and help! Please, let me know what I can do

@TaiPhamD
Copy link

Yes, I would love to learn and help! Please, let me know what I can do

@zphaze do you have any example payloads that would include the SOC battery % ? I would love to add that feature.

I am using your info to update my blue link GO api and a proxy server so you can use it to setup SIRI integration if you like. I got siri integration working now to start/stop climate using Siri shortcut (simple HTTPS POST client)

@zphaze
Copy link

zphaze commented Oct 23, 2023

@TaiPhamD A SIRI command was my ultimate goal with the home assistant integration, but this looks like it may do what I'm looking for. I will give it a try!

As far as the SOC, are you looking for a charge limit command or a current SOC request?

@kurts-gmail
Copy link
Author

@zphaze can you share how you sniffed the traffic? I tried Charles Proxy to sniff the https stream but the app would no longer function. Any tips?

@TaiPhamD
Copy link

@kurts-gmail i had a lot of issue trying to sniff on android . On iOS is much simpler . On android starting newer version most app will ignore user imported CA so you need to add the CA to system root CA (requiring root privileges ) or decompile .APK to modify networking xml to tell it to also allow user CA files. I got close on sniffing on android but couldn't fully get it to work then switched to iOS and got it working in 5 minutes . Just import Charles CA on iOS and remember to enable (off by default) , set proxy on your wifi to hit your Charles proxy server. You might need to click "allow unknown client" once it detects your phone connected to it on the Charles proxy app. Also make sure you add in host name for the hosts that you want to decrypt .

@cdnninja
Copy link
Collaborator

cdnninja commented Oct 24, 2023

Hyundai-Kia-Connect/hyundai_kia_connect_api#429 Aligns URLs. To test it edit your manifest file and adjust the API version to 3.10.2.

Let me know what error you get or if it works. This touches both start_climate and stop.

@zphaze
Copy link

zphaze commented Oct 24, 2023

@cdnninja I updated the manifest through VS Code and removed and re-added the integration. I send the start climate command with temperature, front defroster off, rear window and side mirrors off, and steering wheel heat off as those are the only features my app has available. The debug shows lots more settings that the car does not support. May that also be the cause of the "Your vehicle does not support this feature" error?

I also tried the stop climate command after starting the car from my phone and the same "Your vehicle does not support this feature" error occurred. Is there a way to confirm that the API change in the manifest worked?

This is my home assistant service call, which matches what settings I can set in my app:

service: kia_uvo.start_climate
data:
  climate: true
  heating: "0"
  device_id: ...
  temperature: 72
  defrost: false

This is the log after that service:

2023-10-23 22:31:33.776 DEBUG (SyncWorker_16) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine..
2023-10-23 22:31:33.776 DEBUG (SyncWorker_16) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine headers: {'content-type': 'application/json;charset=UTF-8', 'accept': 'application/json, text/plain, */*', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US,en;q=0.9', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36', 'host': 'api.telematics.hyundaiusa.com', 'origin': 'https://api.telematics.hyundaiusa.com', 'referer': 'https://api.telematics.hyundaiusa.com/login', 'from': 'SPA', 'to': 'ISS', 'language': '0', 'offset': '-7', 'sec-fetch-dest': 'empty', 'sec-fetch-mode': 'cors', 'sec-fetch-site': 'same-origin', 'refresh': 'false', 'encryptFlag': 'false', 'brandIndicator': 'H', 'gen': '2', 'client_id': '...', 'clientSecret': '...', 'username': '...', 'accessToken': '...', 'blueLinkServicePin': '...', 'registrationId': '...', 'vin': '...'}
2023-10-23 22:31:33.776 DEBUG (SyncWorker_16) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine data: {'Ims': 0, 'airCtrl': 1, 'airTemp': {'unit': 1, 'value': 72}, 'defrost': False, 'heating1': 0, 'igniOnDuration': 5, 'seatHeaterVentInfo': {'drvSeatHeatState': 0, 'astSeatHeatState': 0, 'rlSeatHeatState': 0, 'rrSeatHeatState': 0}, 'username': '...', 'vin': '...'}
2023-10-23 22:31:33.915 DEBUG (SyncWorker_16) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine response status code: 502
2023-10-23 22:31:33.915 DEBUG (SyncWorker_16) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine response: {"errorSubCode":"GEN","systemName":"BLODS","errorSubMessage":"Feature Status is OFF","errorMessage":"Your vehicle does not support this feature.","errorCode":502}

@cdnninja
Copy link
Collaborator

Could you confirm in debug logs if the new endpoint is used?

@zphaze
Copy link

zphaze commented Oct 24, 2023

I am not seeing the endpoints anywhere in the debug logs.

@cdnninja
Copy link
Collaborator

Looks like the USA one doesn't set vehicle type yet. We need to fix that. From your "data" sensor can you look in attributes for something that shows the engine type? Here is an example in Canada where we find the engine type.
https://github.com/Hyundai-Kia-Connect/hyundai_kia_connect_api/blob/0852669f1b65900544cce56d4a7cffcc28a6fa14/hyundai_kia_connect_api/KiaUvoApiCA.py#L154-L171

Vs USA Hyundai currently we just grab VIN and a few other details:

https://github.com/Hyundai-Kia-Connect/hyundai_kia_connect_api/blob/0852669f1b65900544cce56d4a7cffcc28a6fa14/hyundai_kia_connect_api/HyundaiBlueLinkAPIUSA.py#L469-L478

@zphaze
Copy link

zphaze commented Oct 25, 2023

Oh yea thats a problem, looks like evStatus with letter E is the USA equivalent but heres the data in case you see something else.

Vehicle data
vehicleDetails:
  svrStatus: NONE
  dynamicBurgerMenu: >-
    https://owners.hyundaiusa.com/content/dam/hyundai/us/myhyundai/image/2023/ioniq-5/sel/exterior/base/shooting-star/Dashboard-01.png/jcr:content/renditions/cq5dam.thumbnail.105.68.png
  remoteStartWakeupDays: seven
  enrollmentDate: '20230901'
  svdDay: '28'
  trim: SEL
  modelCode: IONIQ 5
  ubiCapabilityInd: 'Y'
  vin: …
  enrollmentId: '4815575'
  sideMirrorHeatCapable: 'YES'
  ownersuccession: '1'
  odometer: '3476'
  nickName: Winter Soldier
  defaultBurgerMenu: >-
    https://owners.hyundaiusa.com/content/dam/hyundai/us/myhyundai/image/2023/ioniq-5/sel/exterior/base/default/Dashboard-01.png/jcr:content/renditions/cq5dam.thumbnail.105.68.png
  evStatus: E
  modelYear: '2023'
  steeringWheelHeatCapable: 'YES'
  defaultDashboard: >-
    https://owners.hyundaiusa.com/content/dam/hyundai/us/myhyundai/image/2023/ioniq-5/sel/exterior/base/default/Dashboard-01.png
  vehicleGeneration: '2'
  starttype: KEY
  sapColorCode: T5R
  bluelinkEnabled: true
  odometerUpdateDate: '20231024175216'
  fatcAvailable: 'Y'
  color: MATTE GRAY
  maintSyncCapable: 'YES'
  brandIndicator: H
  deviceStatus: ENROLLED
  setOffPeak: '1'
  mapProvider: HERE
  generalBurgerMenu: >-
    https://owners.hyundaiusa.com/content/dam/hyundai/us/myhyundai/image/2023/ioniq-5/general/exterior/base/default/Dashboard-01.png/jcr:content/renditions/cq5dam.thumbnail.105.68.png
  interiorColor: VKE
  accessoryCode: WAVN 5.0
  nadid: ‘…’
  mit: '7500'
  regid: …
  blueLink: 'Y'
  waypointInd: 'NO'
  billingInd: MONTHLY
  dynamicDashboard: >-
    https://owners.hyundaiusa.com/content/dam/hyundai/us/myhyundai/image/2023/ioniq-5/sel/exterior/base/shooting-star/Dashboard-01.png
  imat: '7500'
  additionalVehicleDetails:
    temperatureRange: 'true'
    tmuSleepMode: 'No'
    enableHCAModule: 'Y'
    maxTemp: 82
    icpParking: 1
    remoteLockConsentForRemoteStart: 'No'
    calendarVehicleSyncEnable: 'Yes'
    vehicleModemType: 4G (NEEV23.USA.S5W_M.V011.004.231004)
    icpAACapable: 'Y'
    icpDriveThru: 0
    dkType: DK TYPE UNKNOWN
    dynamicSOCText: >-
      Use the slider above to set a charge limit. Charging will stop when this
      battery level is reached. The limit cannot be set lower than 50% This
      setting will override all other charge settings if set.
    enableRoadSideAssitanceAAAModule: 'Y'
    idleSpeedinValetAlert: 'N'
    evAlarmOptionInfo: 'Yes'
    mapOtaAccepted: 'N'
    dkCapable: 'Y'
    combinedHeatSettingsEnable: 'N'
    icpChargingStation: 0
    hyundaiHome: 'N'
    wifiHotspotCapable: 'Y'
    tmuSleepInMin: 69.48333333333333
    dkEnrolled: 'N'
    icpAvntCapable: 'Y'
    enableEVTrip: 'N'
    minTemp: 62
    icpFuelStation: 0
    targetSOCLevelMax: 100
    remoteLockConsentForRemoteStartCapable: 'No'
    eaPromotion:
      expireOn: 3 years from vehicle purchase date
      description: >-
        Electrify America teamed up with Hyundai to offer 250 kWh (approx. 1,000
        miles of EPA-estimated driving range*) of complimentary charging on its
        nationwide ultra-fast charging network. To register, download the
        Electrify America app, then input your activation code and vehicle's
        VIN. Contact Electrify America Customer Assistance 24/7 at
        1-833-632-2778 or <a
        href="mailto:[email protected]">[email protected]</a>
        for questions about this program. </br></br><a
        href="https://owners.hyundaiusa.com/us/en/resources/getting-started/getting-started-with-the-electrify-america-hyundai-premium-charging-program.html">Learn
        More</a>.</br></br>To claim the complimentary charging
        for your vehicle enroll in the Electrify America Hyundai Premium
        Charging Program by clicking <a
        href="https://www.electrifyamerica.com/mobile-app/">here</a>.
      enrollmentCode: …
    msCapableOption: 'N'
    icpCPCapable: 'Y'
    enableValetActivate: 'Y'
    energyConsoleCapable: 'No'
    cpoVehicle: 'No'
  transmissiontype: AUTO
  bluelinkEnrolled: true
  targetSOCLevel: '50'
  rearWindowHeatCapable: 'YES'
  preferredDealerCode: ...
  hmaModel: NE1
  series: IONIQ 5
  enrollmentStatus: ACTIVE
  generalDashboard: >-
    https://owners.hyundaiusa.com/content/dam/hyundai/us/myhyundai/image/2023/ioniq-5/general/exterior/base/default/Dashboard-01.png
  userprofilestatus: 'Y'
vehicleStatus:
  dateTime: '20231025011307'
  acc: true
  defrostStatus: 'false'
  transCond: true
  doorLockStatus: 'false'
  doorOpen:
    frontRight: 0
    frontLeft: 1
    backLeft: 0
    backRight: 0
  washerFluidStatus: false
  battery:
    batSoc: 83
    sjbDeliveryMode: 1
  hazardStatus: 0
  vehicleLocation:
    coord:
      lon: …
      type: 0
      lat: …
  ign3: true
  ignitionStatus: 'false'
  lowFuelLight: false
  sideBackWindowHeat: 0
  engine: false
  remoteWaitingTimeAlert:
    remoteControlWaitingTime: 168
    remoteControlAvailable: 1
  hoodOpen: false
  breakOilStatus: false
  airConditionStatus: 'true'
  smartKeyBatteryWarning: false
  steerWheelHeat: 0
  tailLampStatus: 0
  trunkOpen: false
  doorLock: false
  airCtrlOn: true
  airTemp:
    unit: 1
    hvacTempType: 1
    value: '72'
  evStatus:
    valueDiff: 0
    remainTime2:
      etc3:
        unit: 1
        value: 0
      etc2:
        unit: 1
        value: 0
      atc:
        unit: 1
        value: 0
      etc1:
        unit: 1
        value: 0
    evIgnitionStatus: true
    inletLockModeStatus: 0
    batteryPlugin: 1
    timeDiff: 6
    batteryCharge: false
    batteryStatus: 90
    remainTime: []
    batteryPreconditiong: false
    drvDistance:
      - rangeByFuel:
          gasModeRange:
            unit: 3
            value: 0
          totalAvailableRange:
            unit: 3
            value: 258
          evModeRange:
            unit: 3
            value: 258
        type: 2
    reservChargeInfos:
      targetSOClist:
        - rangeByFuel:
            gasModeRange:
              unit: 3
              value: 0
            totalAvailableRange:
              unit: 3
              value: 258
            evModeRange:
              unit: 3
              value: 258
          plugType: 0
          targetSOClevel: 90
          type: 2
        - rangeByFuel:
            gasModeRange:
              unit: 3
              value: 0
            totalAvailableRange:
              unit: 3
              value: 258
            evModeRange:
              unit: 3
              value: 258
          plugType: 1
          targetSOClevel: 90
          type: 2
      reservChargeInfo:
        dateTime: 2023/10/24T19:22:31Z
        reservChargeInfoDetail:
          reservChargeSet: false
          reservEndTime: ''
          reservFatcSet:
            defrost: false
            airTemp:
              unit: 1
              value: '76'
            airCtrl: 0
          reservInfo:
            time:
              timeSection: 0
              time: '1200'
            day:
              - 9
      reservFlag: 0
      reserveChargeInfo2:
        reservChargeInfoDetail:
          reservChargeSet: false
          reservEndTime: ''
          reservFatcSet:
            defrost: false
            airTemp:
              unit: 1
              value: '76'
            airCtrl: 0
          reservInfo:
            time:
              timeSection: 0
              time: '1200'
            day:
              - 9
      offpeakPowerInfo:
        offPeakPowerFlag: 0
        offPeakPowerTime1:
          startTime:
            timeSection: 0
            time: '1200'
          endTime:
            timeSection: 0
            time: '1200'
  lampWireStatus:
    headLamp:
      rightBifuncLamp: false
      headLampStatus: false
      leftLowLamp: false
      rightHighLamp: false
      leftBifuncLamp: false
      leftHighLamp: false
      rightLowLamp: false
    stopLamp:
      rightLamp: false
      leftLamp: false
    turnSignalLamp:
      rightRearLamp: false
      rightFrontLamp: false
      leftRearLamp: false
      leftFrontLamp: false
  sleepModeCheck: false
  defrost: false
  tirePressureLamp:
    tirePressureWarningLampRearLeft: 0
    tirePressureWarningLampFrontLeft: 0
    tirePressureWarningLampFrontRight: 0
    tirePressureWarningLampAll: 0
    tirePressureWarningLampRearRight: 0
  trunkOpenStatus: 'false'
Vehicle name
Winter Soldier

@cdnninja
Copy link
Collaborator

I have created Hyundai-Kia-Connect/hyundai_kia_connect_api#430 that may help. As a note you just need to change manifest and restart. No need to reinstall the integration. 3.10.3 is the new version to put into the manifest.

@zphaze
Copy link

zphaze commented Oct 25, 2023

Thanks for the note, that makes testing easier.

Stop climate now works, so the endpoints are functioning!

However start climate now gives a different error and does not start:

2023-10-24 21:21:01.282 DEBUG (SyncWorker_7) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine..
2023-10-24 21:21:01.282 DEBUG (SyncWorker_7) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine headers: {'content-type': 'application/json;charset=UTF-8', 'accept': 'application/json, text/plain, */*', 'accept-encoding': 'gzip, deflate, br', 'accept-language': 'en-US,en;q=0.9', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36', 'host': 'api.telematics.hyundaiusa.com', 'origin': 'https://api.telematics.hyundaiusa.com', 'referer': 'https://api.telematics.hyundaiusa.com/login', 'from': 'SPA', 'to': 'ISS', 'language': '0', 'offset': '-7', 'sec-fetch-dest': 'empty', 'sec-fetch-mode': 'cors', 'sec-fetch-site': 'same-origin', 'refresh': 'false', 'encryptFlag': 'false', 'brandIndicator': 'H', 'gen': '2', 'client_id': '...', 'clientSecret': '...', 'username': '...', 'accessToken': '...', 'blueLinkServicePin': '...', 'registrationId': '...', 'vin': '...'}
2023-10-24 21:21:01.283 DEBUG (SyncWorker_7) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine data: {'Ims': 0, 'airCtrl': 1, 'airTemp': {'unit': 1, 'value': 72}, 'defrost': False, 'heating1': 0, 'igniOnDuration': 5, 'seatHeaterVentInfo': {'drvSeatHeatState': 0, 'astSeatHeatState': 0, 'rlSeatHeatState': 0, 'rrSeatHeatState': 0}, 'username': '...', 'vin': '...'}
2023-10-24 21:21:01.589 DEBUG (SyncWorker_7) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine response status code: 502
2023-10-24 21:21:01.589 DEBUG (SyncWorker_7) [hyundai_kia_connect_api.HyundaiBlueLinkAPIUSA] hyundai_kia_connect_api - Start engine response: {"errorSubCode":"GEN","systemName":"HATA","functionName":"remoteFATCStart","errorSubMessage":"HATA remoteFATCStart service failed while performing the operation RemoteFATCStart","errorMessage":"We're sorry, but we could not complete your request. Please try again later.","errorCode":502,"serviceName":"RemoteFATCStart"}

@TaiPhamD
Copy link

TaiPhamD commented Oct 25, 2023

Here is the curl command for the US start climate that works with my Ioniq 5. Can double check the parameters here with your log.

curl --location 'https://api.telematics.hyundaiusa.com/ac/v2/evc/fatc/start'
--header 'access_token: xxxxx'
--header 'client_id: m66129Bb-em93-SPAHYN-bZ91-am4540zp19920'
--header 'Host: api.telematics.hyundaiusa.com'
--header 'User-Agent: okhttp/3.12.0'
--header 'registrationId: xxx'
--header 'gen: 2'
--header 'username: xxxx'
--header 'vin: xxxx'
--header 'APPCLOUD-VIN: xxxx'
--header 'Language: 0'
--header 'to: ISS'
--header 'encryptFlag: false'
--header 'from: SPA'
--header 'brandIndicator: H'
--header 'bluelinkservicepin: xxxx'
--header 'offset: -4'
--header 'Content-Type: application/json'
--data '{"airCtrl":1,"airTemp":{"value":"72","unit":1},"heating1":0,"defrost":false}'

@zphaze
Copy link

zphaze commented Oct 25, 2023

Created my first Pull Request in an attempt to help out! Would that work to make the data match from the sniffed data?

Hyundai-Kia-Connect/hyundai_kia_connect_api#431

@zphaze
Copy link

zphaze commented Oct 26, 2023

Looks like we figured out the API issues, once they are pushed to a release I can hopefully do the final test inside Home Assistant.

@cdnninja
Copy link
Collaborator

A new api version exists to try in your manifest.

@zphaze
Copy link

zphaze commented Oct 26, 2023

That works! successfully turned on my car!

@cdnninja
Copy link
Collaborator

Thank you for the work to get this resolved. The new API now is in this repo and a release created. #733

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working USA
Projects
None yet
Development

No branches or pull requests

4 participants