NEWS
Adapter Hyundai (Bluelink) oder KIA (UVO)
-
@ilovegym schick mir den derbug Log mal bitte.
die Werte scheinen da zu sein nur unter anderer variablen...
installiere aber zuvor die GIT version
-
bin ich zu schnell oder geht das nicht, gerade von Git gezogen und gestartet:
2024-07-04 11:30:36.425 - info: bluelink.0 (29886) starting. Version 2.3.8 (non-npm: Newan/ioBroker.bluelink) in /opt/iobroker/node_modules/iobroker.bluelink, node: v18.20.3, js-controller: 6.0.6 2024-07-04 11:30:36.439 - info: bluelink.0 (29886) Login to api 2024-07-04 11:30:36.439 - error: bluelink.0 (29886) Error in login/on function 2024-07-04 11:30:36.440 - error: bluelink.0 (29886) bluelinky is not a constructor 2024-07-04 11:30:41.366 - info: host.iobroker "system.adapter.bluelink.0" disabled 2024-07-04 11:30:41.366 - info: host.iobroker stopInstance system.adapter.bluelink.0 (force=false, process=true) 2024-07-04 11:30:41.373 - info: bluelink.0 (29886) Got terminate signal TERMINATE_YOURSELF 2024-07-04 11:30:41.373 - info: host.iobroker stopInstance system.adapter.bluelink.0 send kill signal 2024-07-04 11:30:41.374 - info: bluelink.0 (29886) Adapter bluelink cleaned up everything... 2024-07-04 11:30:41.375 - info: bluelink.0 (29886) terminating 2024-07-04 11:30:41.375 - info: bluelink.0 (29886) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2024-07-04 11:30:41.876 - info: bluelink.0 (29886) terminating 2024-07-04 11:30:41.936 - info: host.iobroker instance system.adapter.bluelink.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
-
@ilovegym ich hab noch aktualisiert..hast bestimmt diesen moment erwischt
versuchmal jetzt nochmal
-
@arteck nee, immer noch... der bluelinky is no constructor...
-
habs auch installiert.. muss ich mal gucken
es hat sich doch was geändert bei bluelinky die version ist 8.3.1 ..wir haben noch die 8.2.1
hier kommst du wieder zurück
https://github.com/Newan/ioBroker.bluelink/tree/8a5de8d54bf5a097a923a7e45732488cd9df93c5
-
so jetzt mal von GIT installieren und schauen ob die Infos jetzt kommen
evtl. ist node 20 nötig
-
laeuft mit node 18 im docker 9.1.2 von buanet mit js-controller 6.0.6..
jetzt kann ich dir ein debug log schicken, da steht viel drin.. und ja, die Werte kommen, werden aber nicht umgesetzt..Hab dir im Chat das log geschickt.. sind n paar Nachrichten, gehen ja nur 10000 zeichen ...
Wenn du das irgendwie anders brauchst, sag bescheid... -
@ilovegym hmmm.. ja hilft aber.. kommt nicht das was ich erwartet habe
redselig ist der nicht ..was war da noch im akku ?? 81 %
-
die 81% sind die 12v Batterie.. ja.. das ist es ja, was ich schon befuerchtet hatte.. bluelinky kann das nicht auslesen, weil fuer die 2024er Modelle die Schnittstelle geaendert wurde...
Alle Werte sind fuer den alten ..
-
ccu_ccs2_protocol_support ist das Problem...
-
wie bekommen wir das geloest? Reverse-Engineering der App ?
Mal alles mit Wireshark mitschneiden, was die App so spricht? -
@ilovegym ne... das ist schon dokumentiert.. muss halt nur einer Programmieren
-
ok, beim einen haette ich helfen koennen...
schau mal hier:
https://github.com/ZuinigeRijder/hyundai_kia_connect_monitorhilft uns das weiter, da scheint das zu gehen.. er schreibt, dass ccNC infotainment unterstuetzt wird.. (das nutzt wohl das ccu_ccs2_protocol )
-
Ich bin hier nur stiller Mitleser.
Aber bei GoingElectric gibt es einen Thread von "ZuinigeRijder":
https://www.goingelectric.de/forum/viewtopic.php?f=173&t=81576
Vll. interessant für Euch für Nachfragen? -
Den hab ich ja gepostet, aber das Script von ihm ist in Python geschrieben.
-
Ich habe auch einen Kona 2024. Mich interessiert eigentlich nichts außer der Batteriewert. Habe die Kommunikation der Bluelink-Iphone-App mit Burp Suite mitgeschnitten und mit Hilfe von Chatgpt (habe gar keine Ahnung von Javaskript) ein Skript entwickelt, das mir alle 10 Minuten den Batteriewert in einen Datenpunkt schreibt. Ist kein Adapter, aber es tut was es soll. Vielleicht kann jemand damit was anfangen:
const axios = require('axios'); const clientId = 'YOUR_CLIENT_ID'; // Ersetze mit deiner Client ID const refreshToken = 'YOUR_REFRESH_TOKEN'; // Ersetze mit deinem Refresh Token const tokenUrl = 'https://YOUR_API_URL/api/v1/user/oauth2/token'; // Ersetze mit der API-URL für den Token const vehicleId = 'YOUR_VEHICLE_ID'; // Ersetze mit deiner Fahrzeug-ID const carStatusUrl = `https://YOUR_API_URL/api/v1/spa/vehicles/${vehicleId}/ccs2/carstatus/latest`; // Ersetze mit der API-URL für Fahrzeugstatus const deviceId = 'YOUR_DEVICE_ID'; // Ersetze mit deiner Device ID async function getAccessToken() { try { const response = await axios.post(tokenUrl, `client_id=${clientId}&grant_type=refresh_token&redirect_uri=https%3A//YOUR_API_URL/api/v1/user/oauth2/redirect&refresh_token=${refreshToken}`, { headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8', 'Authorization': 'Basic YOUR_AUTHORIZATION_KEY', // Ersetze mit deinem Base64-codierten Auth Key } }); await getCarStatus(response.data.access_token); } catch (error) { console.error('Error getting access token:', error.response ? error.response.data : error.message); } } async function getCarStatus(accessToken) { try { const response = await axios.get(carStatusUrl, { headers: { 'Content-Type': 'application/json; charset=UTF-8', 'Authorization': `Bearer ${accessToken}`, 'Clientid': 'YOUR_CLIENT_ID', // Gleiche Client ID wie oben 'Ccsp-Service-Id': clientId, 'Ccsp-Application-Id': 'YOUR_APPLICATION_ID', // Ersetze mit der Application ID 'Ccsp-Device-Id': deviceId, 'User-Agent': 'YOUR_USER_AGENT', // Ersetze mit deinem User-Agent 'Cache-Control': 'no-cache' } }); const batteryRatio = response.data.resMsg.state.Vehicle.Green.BatteryManagement.BatteryRemain.Ratio; setState('Datenpunkte.0.Sonstiges.Kona-Batterie', { val: batteryRatio, ack: true }); } catch (error) { console.error('Error fetching car status:', error.response ? error.response.data : error.message); } } getAccessToken(); schedule('*/10 * * * *', getAccessToken);
-
@joesch80 sagte in Adapter Hyundai (Bluelink) oder KIA (UVO):
const clientId = 'YOUR_CLIENT_ID'; // Ersetze mit deiner Client ID const refreshToken = 'YOUR_REFRESH_TOKEN'; // Ersetze mit deinem Refresh Token const tokenUrl = 'https://YOUR_API_URL/api/v1/user/oauth2/token'; // Ersetze mit der API-URL für den Token const vehicleId = 'YOUR_VEHICLE_ID'; // Ersetze mit deiner Fahrzeug-ID const carStatusUrl = `https://YOUR_API_URL/api/v1/spa/vehicles/${vehicleId}/ccs2/carstatus/latest`; // Ersetze mit der API-URL für Fahrzeugstatus const deviceId = 'YOUR_DEVICE_ID'; // Ersetze mit deiner Device ID
fragen, woher bekomme ich die clientId, den Token, vehicleId (Fahrgestelltnr?), status-URL und die device ID?
-
@ilovegym sagte in Adapter Hyundai (Bluelink) oder KIA (UVO):
@joesch80 sagte in Adapter Hyundai (Bluelink) oder KIA (UVO):
const clientId = 'YOUR_CLIENT_ID'; // Ersetze mit deiner Client ID const refreshToken = 'YOUR_REFRESH_TOKEN'; // Ersetze mit deinem Refresh Token const tokenUrl = 'https://YOUR_API_URL/api/v1/user/oauth2/token'; // Ersetze mit der API-URL für den Token const vehicleId = 'YOUR_VEHICLE_ID'; // Ersetze mit deiner Fahrzeug-ID const carStatusUrl = `https://YOUR_API_URL/api/v1/spa/vehicles/${vehicleId}/ccs2/carstatus/latest`; // Ersetze mit der API-URL für Fahrzeugstatus const deviceId = 'YOUR_DEVICE_ID'; // Ersetze mit deiner Device ID
fragen, woher bekomme ich die clientId, den Token, vehicleId (Fahrgestelltnr?), status-URL und die device ID?
ich befürchte, die musst du mit Burp auslesen, die vehicleid ist auf jeden fall mal nicht die vin
-
Liebe Leute,
ich verwende den Adapter nun auchschon über ein Jahr und hatte schon mehrmals eine leere 12V Batterie und daher ebenfalls schon eine kleine "Starthilfe Box" im Wagen...
Morgen wird bei mir wiedermal die 12VBatterie gecheckt, da der Wagen wiedermal nach 3 Tagen stehen in der Garage leer war.
JA, er war zugesperrt (öffentliche Garage
Ja, ich hole mir die Daten nur mehr vom Server...ABER, eine Idee für die Entwickler:
Kann man da nicht irgendwie eine Funktion in den Adapter einbauen, dass er
a) alle x Minuten die Daten vom Server holt und
b) alle y Minuten die Daten vom Wagen?
c) oder auch für b) ein Zeitfenster? Also meiner steht zu 95% von Mitternacht bis 5 in der Garage....da brauch ich keine neuen Daten,weil sich eh nix ändert.Was spannend wäre - was passiert wenn man den Adapter stoppt und später wieder startet?
Weil Plan d) wäre, den Adapter selber zu starten und zu stoppen und jeweils davor mit den Datenpunkten einzustellen, ob vom Server oder vom Wagen?
Das geht abernatürlich nur, wenn er bei jedem Start die eingestellte Anzahl an Updates von 0 weg zu zählen beginnt und nicht "pro Tag" oder pro "24 Stunden" rechnet...Weiß da wer mehr drüber?
Liebe Grüße
Tom -
@etv sagte in Adapter Hyundai (Bluelink) oder KIA (UVO):
Weiß da wer mehr drüber?
Lieber Tom,
Kann man da nicht irgendwie eine Funktion in den Adapter einbauen, dass er
klar kann man das, kostet DICH aber ca 10.000€ ... ich muss dann mein Zauberdings rausholen um ein wenig hockupokus (kein fidibus der kostet nochmal 3000€) zu machen.. das kostet halt..
mal im ernst.. kein Plan was du da treibst.. warum dein Vehicle die 12V leer saugt.. kein Plan..
ich kann mich an die 80-ger erinnern wo wir Endtufen verbaut haben die ..phuuu.... pervers waren.. wenn du die vergessen hast... alder da war die Luft aus den Reifen auch raus... und der Kat auf links gezogen...du siehst ich kann (und will) nicht in der Situation ernst bleiben.. du hast alle informationen die du für eine Überwachung brauchst..
wie du es machst bleibt dir überlassen.. ob manuell oder automatisch.. ob nach Uhrzeit oder Wetter.. ob bei Dunkelheit oder im hellen...also wo ist das Problem ??
Was spannend wäre - was passiert wenn man den Adapter stoppt und später wieder startet?
und was soll daran spannend sein.. meinst deine Garage explodiert oder der Akku bläht sich auf...
komm ein wenig selbständiges Denken ist doch nicht viel verlangt oder ???mehr als das was ich dir jetzt im Adapter anbiete geht nicht da die API es nicht hergibt
für alle anderen.. ich hab ne Lösung für das Abholen der Daten... für Autos Bj. 2024