iobroker.leapmotor 0.6.7 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +72 -40
- package/admin/i18n/de.json +152 -2
- package/admin/i18n/en.json +152 -2
- package/admin/i18n/es.json +157 -7
- package/admin/i18n/fr.json +157 -7
- package/admin/i18n/it.json +157 -7
- package/admin/i18n/nl.json +158 -8
- package/admin/i18n/pl.json +156 -6
- package/admin/i18n/pt.json +159 -9
- package/admin/i18n/ru.json +157 -7
- package/admin/i18n/uk.json +158 -8
- package/admin/i18n/zh-cn.json +159 -9
- package/admin/jsonConfig.json +2 -11
- package/admin/tab-html2canvas.esm.js +22 -0
- package/admin/tab-index.css +1 -0
- package/admin/tab-index.es.js +18 -0
- package/admin/tab-jspdf.es.min.js +196 -0
- package/admin/tab-jspdf.plugin.autotable.js +10 -0
- package/admin/tab-purify.es.js +3 -0
- package/admin/tab.html +13 -3
- package/admin/tab.js +160 -281
- package/admin-tab/src/i18n/translations.js +2375 -1230
- package/io-package.json +30 -31
- package/lib/leapmotor-client.js +50 -20
- package/main.js +1253 -74
- package/package.json +3 -2
- package/admin/leapmotor.svg +0 -9
- package/admin/tab/tab.html +0 -20
- package/admin/tab/tab.js +0 -407
- package/admin/tab_m.html +0 -21
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2026 Henrik Schönhofen (backfisch88)
|
|
3
|
+
Copyright (c) 2026 Henrik Schönhofen (backfisch88) <henrik.schoenhofen@icloud.com>
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
package/README.md
CHANGED
|
@@ -43,8 +43,9 @@ This way your main account stays logged in to the app at all times.
|
|
|
43
43
|
|
|
44
44
|
## Tested Vehicles
|
|
45
45
|
|
|
46
|
-
- Leapmotor T03 ✅ (fully tested)
|
|
47
|
-
- Leapmotor B10 /
|
|
46
|
+
- Leapmotor T03 ✅ (fully tested, including all remote commands)
|
|
47
|
+
- Leapmotor B10 - status/data reporting extensively verified by a real owner (battery, range, mileage, speed, ignition, all doors, all windows, tire pressure, sunroof, GPS, charge plan, charge limit, AC vent direction); remote commands (lock, climate, etc.) not separately confirmed via the adapter's own buttons, but expected to work (same command subsystem as T03)
|
|
48
|
+
- Leapmotor C10 / C16 - should work, not yet verified
|
|
48
49
|
|
|
49
50
|
## Installation
|
|
50
51
|
|
|
@@ -98,55 +99,84 @@ leapmotor.0.<VIN>.pictures.composite_html
|
|
|
98
99
|
|
|
99
100
|
Simple on/off buttons under `cmd.*` (role `button`, set to `true` to trigger):
|
|
100
101
|
|
|
101
|
-
| Command | Description | PIN required |
|
|
102
|
-
|
|
103
|
-
| cmd.ac_heat | Start heating | ✅ |
|
|
104
|
-
| cmd.ac_cool | Start cooling | ✅ |
|
|
105
|
-
| cmd.ac_vent | Start ventilation | ✅ |
|
|
106
|
-
| cmd.ac_off | Stop climate | ✅ |
|
|
107
|
-
| cmd.defrost | Windshield defrost | ✅ |
|
|
108
|
-
| cmd.windows_open | Open windows | – |
|
|
109
|
-
| cmd.windows_close | Close windows | – |
|
|
110
|
-
| cmd.find | Find vehicle (horn/lights) | – |
|
|
111
|
-
| cmd.battery_preheat | Battery preheat on | ✅ |
|
|
112
|
-
| cmd.battery_preheat_off | Battery preheat off | ✅ |
|
|
113
|
-
| cmd.lock | Lock vehicle | ✅ |
|
|
114
|
-
| cmd.unlock | Unlock vehicle | ✅ |
|
|
115
|
-
| cmd.trunk_open | Open trunk | ✅ |
|
|
116
|
-
| cmd.trunk_close | Close trunk | ✅ |
|
|
117
|
-
| cmd.refresh | Trigger immediate status update | – |
|
|
102
|
+
| Command | Description | PIN required | Works on |
|
|
103
|
+
|---------|-------------|:------------:|----------|
|
|
104
|
+
| cmd.ac_heat | Start heating | ✅ | All models (confirmed T03) |
|
|
105
|
+
| cmd.ac_cool | Start cooling | ✅ | All models (confirmed T03) |
|
|
106
|
+
| cmd.ac_vent | Start ventilation | ✅ | All models (confirmed T03) |
|
|
107
|
+
| cmd.ac_off | Stop climate | ✅ | All models (confirmed T03) |
|
|
108
|
+
| cmd.defrost | Windshield defrost | ✅ | All models (confirmed T03) |
|
|
109
|
+
| cmd.windows_open | Open windows | – | All models (confirmed T03) |
|
|
110
|
+
| cmd.windows_close | Close windows | – | All models (confirmed T03) |
|
|
111
|
+
| cmd.find | Find vehicle (horn/lights) | – | All models (confirmed T03) |
|
|
112
|
+
| cmd.battery_preheat | Battery preheat on | ✅ | All models (confirmed T03) |
|
|
113
|
+
| cmd.battery_preheat_off | Battery preheat off | ✅ | All models (confirmed T03) |
|
|
114
|
+
| cmd.lock | Lock vehicle | ✅ | All models (confirmed T03) |
|
|
115
|
+
| cmd.unlock | Unlock vehicle | ✅ | All models (confirmed T03) |
|
|
116
|
+
| cmd.trunk_open | Open trunk | ✅ | All models (confirmed T03) |
|
|
117
|
+
| cmd.trunk_close | Close trunk | ✅ | All models (confirmed T03) |
|
|
118
|
+
| cmd.refresh | Trigger immediate status update | – | All models (confirmed T03) |
|
|
119
|
+
| cmd.charge_start / charge_stop | Start/stop charging directly (not just via schedule) | ✅ | Untested - same charging subsystem as cmd.charge_limit_set (confirmed), so expected on all models |
|
|
120
|
+
| cmd.unlock_charger | Unlock the charging connector remotely | ✅ | Untested - same charging subsystem, expected on all models |
|
|
121
|
+
| cmd.healthy_charging_on / off | Toggle battery-health charging mode | ✅ | Untested - same charging subsystem, expected on all models |
|
|
122
|
+
| cmd.fuel_heating_on / off | Fuel heater on/off | ✅ | Untested - **REEV/range-extender trims only** (e.g. C10 EREV); not applicable on T03 (BEV) |
|
|
123
|
+
| cmd.destination_send | Send the address/coordinates set below to the vehicle's built-in nav | – | Untested - expected on nav-equipped models (C10/B10/B11); unclear whether T03's built-in nav accepts cloud-pushed destinations at all |
|
|
118
124
|
|
|
119
125
|
Value-based commands:
|
|
120
126
|
|
|
121
|
-
| Command | Description |
|
|
122
|
-
|
|
123
|
-
| cmd.ac_temp | Target temperature, 16–30 °C |
|
|
124
|
-
| cmd.ac_fan_speed | Fan speed, 1–7 |
|
|
125
|
-
| cmd.ac_position | Air position: all / up / down / front / rear |
|
|
126
|
-
| cmd.windows_set | Window position, 0–100 % |
|
|
127
|
-
| cmd.sunshade_set / sunshade_open / sunshade_close | Sunshade position
|
|
128
|
-
| cmd.charge_limit_set | Charge limit, 50–100 % |
|
|
129
|
-
| cmd.charge_schedule_enable / start / end / apply | Charging schedule |
|
|
130
|
-
| cmd.climate_schedule_enable / mode / time / days / apply / cancel | Recurring climate schedule |
|
|
131
|
-
| cmd.speed_limit_set | Speed limit, if supported by the vehicle |
|
|
127
|
+
| Command | Description | Works on |
|
|
128
|
+
|---------|-------------|----------|
|
|
129
|
+
| cmd.ac_temp | Target temperature, 16–30 °C | All models (confirmed T03) |
|
|
130
|
+
| cmd.ac_fan_speed | Fan speed, 1–7 | All models (confirmed T03) |
|
|
131
|
+
| cmd.ac_position | Air position: all / up / down / front / rear | All models (confirmed T03). On B10, the vehicle's reported direction status was independently confirmed correct via a real owner's before/after tests (2026-09) - sending this specific command wasn't separately re-tested on B10 |
|
|
132
|
+
| cmd.windows_set | Window position, 0–100 % | All models (confirmed T03; scale auto-adjusted per model, see WORK IN PROGRESS changelog) |
|
|
133
|
+
| cmd.sunshade_set / sunshade_open / sunshade_close | Sunshade position, 0–10 | Confirmed working on T03, but only after the vehicle has been woken from standby by a **physical door open** - locked/unlocked/ignition/climate/remote trunk-open alone don't wake the needed subsystem (confirmed on two separate test sessions, 2026-09-23). No remote workaround exists. B10 has an electric sunroof instead (confirmed working) |
|
|
134
|
+
| cmd.charge_limit_set | Charge limit, 50–100 % | All models (confirmed T03) |
|
|
135
|
+
| cmd.charge_schedule_enable / start / end / apply | Charging schedule | All models (confirmed T03) |
|
|
136
|
+
| cmd.climate_schedule_enable / mode / time / days / apply / cancel | Recurring climate schedule | All models (confirmed T03) |
|
|
137
|
+
| cmd.speed_limit_set | Speed limit, if supported by the vehicle | Confirmed **not** on T03; unknown on other models |
|
|
138
|
+
| cmd.destination_address / destination_latitude / destination_longitude | Destination to send via cmd.destination_send (fill address, or lat/lon, then trigger) | Same as cmd.destination_send above - untested, expected on nav-equipped models |
|
|
132
139
|
|
|
133
140
|
Comfort commands (only created/shown if the vehicle model supports the feature):
|
|
134
141
|
|
|
135
|
-
| Command | Description |
|
|
136
|
-
|
|
137
|
-
| cmd.sentry_mode_on / off | Sentry mode |
|
|
138
|
-
| cmd.seat_heat_driver / copilot | Seat heating |
|
|
139
|
-
| cmd.seat_ventilation_driver / copilot | Seat ventilation |
|
|
140
|
-
| cmd.steering_wheel_heat_on / off | Steering wheel heating |
|
|
141
|
-
| cmd.mirror_heat_on / off | Mirror heating |
|
|
142
|
-
| cmd.hotspot_on / off | Wi-Fi hotspot
|
|
142
|
+
| Command | Description | Works on |
|
|
143
|
+
|---------|-------------|----------|
|
|
144
|
+
| cmd.sentry_mode_on / off | Sentry mode | Confirmed **not** on T03; unknown on other models |
|
|
145
|
+
| cmd.seat_heat_driver / copilot | Seat heating | Untested - plausible on B10, B11/C10 (trim-dependent: at least one C10 spec sheet had no heated seats standard). Confirmed **not** on T03 |
|
|
146
|
+
| cmd.seat_ventilation_driver / copilot | Seat ventilation | Same as seat heating |
|
|
147
|
+
| cmd.steering_wheel_heat_on / off | Steering wheel heating | Same as seat heating. Confirmed **not** on T03 |
|
|
148
|
+
| cmd.mirror_heat_on / off | Mirror heating | Untested - plausible on B10, B11/C10, B05. Confirmed **not exposed via API/app at all** on this T03 |
|
|
149
|
+
| cmd.hotspot_on / off | Wi-Fi hotspot | Confirmed **not** on T03 or B10; unknown on other models |
|
|
150
|
+
|
|
151
|
+
`sunroof`/`sunshade` are handled the same way — see `admin-tab/src/vehicleCapabilities.js` for the confirmed B10 vs T03 difference.
|
|
143
152
|
|
|
144
153
|
Which comfort commands actually appear depends on the detected vehicle model — see
|
|
145
154
|
`admin-tab/src/vehicleCapabilities.js` in the repository for the current capability matrix per model.
|
|
146
155
|
|
|
147
156
|
## Changelog
|
|
148
157
|
|
|
149
|
-
###
|
|
158
|
+
### 0.7.0 (2026-09-24)
|
|
159
|
+
- Fix: vehicles west of Greenwich (UK, Ireland, Portugal, parts of Spain/France) showed their GPS position mirrored into the wrong hemisphere; latitude/longitude now use the signed signal values instead of the absolute-value-only fields (community-confirmed via leapmotor-ha)
|
|
160
|
+
- Fix: window open/close/set-to-percent commands now scale to each model's native range - B05/B10/C10 expect a 0-10 scale, not 0-100 like T03; commands sent to those models previously moved the window far less than requested
|
|
161
|
+
- Fix: the "charging" status could get stuck showing active from a stale/phantom cloud flag while the car was actually being driven or just powered on and ready; it's now cross-checked against gear position, speed and ignition before being reported
|
|
162
|
+
- Fix: on T03, the binary window-open flags could remain at 0 even with the window actually open; open/closed status on this model now falls back to the live position percentage
|
|
163
|
+
- Fix: steering-wheel heating and seat heating/ventilation commands used a payload format the cloud silently ignored; both now send the numeric level/position format confirmed correct against two independent community reverse-engineering projects - not live-tested here, as this T03 doesn't have this hardware
|
|
164
|
+
- Known limitation: mirror heating is not controllable via the API on this T03 - confirmed non-functional even via the official Leapmotor app, so likely not exposed to the API/app for this vehicle at all. Payload sent matches the community-verified format; left in for other models/regions where it may work.
|
|
165
|
+
- Chore: cross-checked the tire-pressure signal ID mapping (front-left/front-right/rear-left/rear-right) against leapmotor-ha's independently corrected mapping - confirmed correct, no code change
|
|
166
|
+
- New: added B11 handling - not a separate model, it's Leapmotor's internal platform code for the C10 itself (confirmed via ADAC vehicle database); some cloud responses surface this code as carType instead of "C10", now mapped to the same endpoint and window scale.
|
|
167
|
+
- New (untested, community feedback welcome): start/stop charging, unlock charging connector, healthy-charging-mode toggle, fuel-heater toggle (REEV/range-extender models only), and sending a navigation destination (address or coordinates) to the vehicle. Payloads verified against two independent community reverse-engineering projects, not against real hardware - none of this is testable on this T03 (no REEV fuel heater; the other commands need a vehicle where charging/nav can safely be tried). Please open a GitHub issue with your model and result if you test any of these.
|
|
168
|
+
- Fix: trip tracking lives entirely in memory and gets wiped on every adapter restart, but trips.current_trip_active kept whatever value it last had - if a trip was active when the adapter restarted (or crashed), it stayed stuck showing "in progress" forever, since nothing afterward re-evaluated it without a matching in-memory entry. Now cleared at startup if left over from before the restart (the original trip's exact end time/mileage can't be recovered at that point).
|
|
169
|
+
- Improved: every remote command now logs a "Command: ..." line before sending and a "successful"/"failed" line after, at debug level - previously several commands (ac_temp/fan/position, speed limit, seat heat/ventilation, destination send, charge limit, refresh, defrost cycle) sent silently on success, making it impossible to tell from the log whether anything actually happened without also checking the raw status. Commands that only stage a value for a later command (ac_temp, climate/charge schedule fields, defrost level) now log that explicitly instead, so they're not mistaken for a command that was actually sent to the vehicle.
|
|
170
|
+
- Fix: cmd.charge_limit_set never synced with the vehicle's actual charge limit unless changed through this adapter's own control - if you changed it via the official app instead (e.g. to 100%), the internal control stayed frozen at its creation-time default of 80. cmd.charge_schedule_apply would then silently send that stale 80 back to the vehicle, overwriting your real setting. Now synced from the vehicle's actual reported limit on every poll, and charge_schedule_apply falls back to the vehicle's current schedule value instead of a hardcoded 80 if the control was never touched.
|
|
171
|
+
- Improved: trip detection now closes a trip immediately once the vehicle is locked and the ignition is explicitly off, instead of always waiting the full 10-minute grace period. The 10-minute grace period still applies for ambiguous cases (e.g. ignition status not reported, or car left unlocked with ignition off). Also added a second, independent fast-path signal: a completed lock → unlock → lock cycle since the trip started (the car auto-locks while driving, so getting out requires unlocking, then it's locked again afterward) is treated as equally definitive proof the trip is over, even on models where ignition status isn't reliably reported.
|
|
172
|
+
- Fix: a token expiry hitting exactly during cmd.refresh (or the delayed status fetch after certain commands) crashed the whole adapter process with an unhandled promise rejection, instead of re-logging in like the regular polling cycle already does. Both paths now catch the error and retry after a fresh login, same as the poller.
|
|
173
|
+
- Confirmed via a real B10 owner (extensive status field testing, 2026-07): battery/range/mileage/speed/ignition/doors/windows/tire pressure/sunroof/GPS/charge plan/charge limit status all report correctly; the hotspot status field doesn't exist on B10, same as T03. Also confirmed the vehicle's reported AC vent direction is decoded correctly (2026-09 dumps). Battery preheat was attempted but inconclusive (vehicle declined to activate in warm weather) - still untested.
|
|
174
|
+
|
|
175
|
+
### 0.6.8 (2026-09-19)
|
|
176
|
+
- Fix: the 0.6.7 re-login fix correctly detected an expired session token, but retried login using the same device identity every time - which the cloud started rejecting after the first failure, leaving the adapter stuck until a manual restart. A fresh device identity is now generated on every login attempt.
|
|
177
|
+
- Fix: remote pre-conditioning (heating/cooling the car before getting in, which turns the ignition on without the car moving) no longer gets misdetected as the start of a trip
|
|
178
|
+
- Fix: a completed trip's recorded end time now uses the vehicle's own reported timestamp instead of when our next poll happened to notice the stop, giving more accurate trip duration and a better match for the cloud's energy-breakdown time window
|
|
179
|
+
- Chore: added diagnostic logging of raw login/energy-breakdown responses to aid future troubleshooting
|
|
150
180
|
|
|
151
181
|
### 0.6.7 (2026-09-18)
|
|
152
182
|
- Fix: the automatic re-login on an expired session token was case-sensitive and never triggered for the cloud's "TOKEN_NOT_AVAILABLE" error, causing all polling to silently fail until a manual adapter restart
|
|
@@ -205,4 +235,6 @@ Older changes can be found in [CHANGELOG_OLD.md](CHANGELOG_OLD.md).
|
|
|
205
235
|
|
|
206
236
|
MIT License
|
|
207
237
|
|
|
208
|
-
Copyright (c) 2026 Henrik Schönhofen (backfisch88)
|
|
238
|
+
Copyright (c) 2026 Henrik Schönhofen (backfisch88) <henrik.schoenhofen@icloud.com>
|
|
239
|
+
|
|
240
|
+
See [LICENSE](LICENSE) for the full license text.
|
package/admin/i18n/de.json
CHANGED
|
@@ -6,6 +6,156 @@
|
|
|
6
6
|
"Leapmotor E-Mail": "E-Mail von Leapmotor",
|
|
7
7
|
"Password": "Passwort",
|
|
8
8
|
"Polling interval (minutes)": "Abfrageintervall (Minuten)",
|
|
9
|
+
"Polling interval when parked/charging (seconds)": "Abfrageintervall bei Stillstand/Laden (Sekunden)",
|
|
10
|
+
"Polling interval while driving (seconds)": "Abfrageintervall während der Fahrt (Sekunden)",
|
|
11
|
+
"How often to fetch vehicle status while the car isn't driving. Default 60s. Lower values mean more API calls to the Leapmotor cloud - go easy and increase again if you ever see rate-limit-style errors in the log.": "Wie oft der Fahrzeugstatus abgerufen wird, solange nicht gefahren wird. Standard 60s. Niedrigere Werte bedeuten mehr API-Anfragen an die Leapmotor-Cloud - vorsichtig senken und wieder erhöhen, falls im Log rate-limit-artige Fehler auftauchen.",
|
|
12
|
+
"How often to fetch vehicle status while the car is detected as driving (speed>0 or ignition on). Default 15s.": "Wie oft der Fahrzeugstatus abgerufen wird, solange eine Fahrt erkannt wird (Geschwindigkeit>0 oder Zündung an). Standard 15s.",
|
|
13
|
+
"Record GPS route during trips": "GPS-Route während Fahrten aufzeichnen",
|
|
14
|
+
"Stores a GPS breadcrumb trail for each trip while driving (opt-in, off by default). Only the last 20 trips' routes are kept, separate from trip history, to keep the adapter's storage size bounded.": "Speichert für jede Fahrt eine GPS-Spur (optional, standardmäßig aus). Nur die letzten 20 Routen werden behalten, getrennt von der Fahrten-Historie, damit die Speichergröße begrenzt bleibt.",
|
|
9
15
|
"Use a dedicated second account (see README)": "Verwenden Sie ein dediziertes zweites Konto (siehe README)",
|
|
10
|
-
"Vehicle PIN": "Fahrzeug-PIN"
|
|
11
|
-
|
|
16
|
+
"Vehicle PIN": "Fahrzeug-PIN",
|
|
17
|
+
"AVG CONSUMPTION": "Ø VERBRAUCH",
|
|
18
|
+
"Active": "Aktiv",
|
|
19
|
+
"Active schedule": "Aktiver Zeitplan",
|
|
20
|
+
"Allocation Code": "Zuordnungscode",
|
|
21
|
+
"Apply Schedule": "Zeitplan anwenden",
|
|
22
|
+
"BEST WEEK": "BESTE WOCHE",
|
|
23
|
+
"Battery Preheat Off": "Batterievorheizung aus",
|
|
24
|
+
"CHARGE": "LADEN",
|
|
25
|
+
"CHARGING": "LADEN",
|
|
26
|
+
"CLIMATE": "KLIMA",
|
|
27
|
+
"CLIMATE CONTROL": "KLIMASTEUERUNG",
|
|
28
|
+
"CLIMATE SCHEDULE": "KLIMA-ZEITPLAN",
|
|
29
|
+
"COMFORT": "KOMFORT",
|
|
30
|
+
"CONNECTIVITY": "KONNEKTIVITÄT",
|
|
31
|
+
"Charge Limit": "Ladelimit",
|
|
32
|
+
"Charge Schedule": "Ladezeitplan",
|
|
33
|
+
"Climate": "Klima",
|
|
34
|
+
"Climate Schedule": "Klima-Zeitplan",
|
|
35
|
+
"Climate is currently OFF": "Klimaanlage ist derzeit AUS",
|
|
36
|
+
"Climate is currently ON (exact mode not reported by this vehicle model)": "Klimaanlage ist derzeit AN (genauer Modus wird von diesem Fahrzeugmodell nicht gemeldet)",
|
|
37
|
+
"Close": "Schließen",
|
|
38
|
+
"Closed": "Geschlossen",
|
|
39
|
+
"Cloud Connection": "Cloud-Verbindung",
|
|
40
|
+
"Connected": "Verbunden",
|
|
41
|
+
"Consumption": "Verbrauch",
|
|
42
|
+
"Consumption over the last 6 weeks": "Verbrauch der letzten 6 Wochen",
|
|
43
|
+
"Cool": "Kühlen",
|
|
44
|
+
"DOOR OPEN": "TÜR OFFEN",
|
|
45
|
+
"DOORS": "TÜREN",
|
|
46
|
+
"Delete": "Löschen",
|
|
47
|
+
"Disconnected": "Getrennt",
|
|
48
|
+
"Driving": "Fahren",
|
|
49
|
+
"End": "Ende",
|
|
50
|
+
"Fan Speed": "Lüftergeschwindigkeit",
|
|
51
|
+
"Fri": "Fr",
|
|
52
|
+
"Heat": "Heizen",
|
|
53
|
+
"Hotspot": "Hotspot",
|
|
54
|
+
"Inactive": "Inaktiv",
|
|
55
|
+
"Inactive (last": "Inaktiv (zuletzt",
|
|
56
|
+
"LOCK": "SCHLOSS",
|
|
57
|
+
"LOCKED": "VERRIEGELT",
|
|
58
|
+
"LOCKS & OPENINGS": "SCHLÖSSER & ÖFFNUNGEN",
|
|
59
|
+
"Last 7 days": "Letzte 7 Tage",
|
|
60
|
+
"Last data update": "Letzte Datenaktualisierung",
|
|
61
|
+
"Locate Vehicle": "Fahrzeug orten",
|
|
62
|
+
"Lock": "Verriegeln",
|
|
63
|
+
"Locked": "Verriegelt",
|
|
64
|
+
"Mirror/Rear Window Heat Off": "Spiegel-/Heckscheibenheizung aus",
|
|
65
|
+
"Mirror/Rear Window Heat On": "Spiegel-/Heckscheibenheizung an",
|
|
66
|
+
"Mode": "Modus",
|
|
67
|
+
"Model": "Modell",
|
|
68
|
+
"Mon": "Mo",
|
|
69
|
+
"No schedule set": "Kein Zeitplan festgelegt",
|
|
70
|
+
"No trip data recorded yet.": "Noch keine Fahrtdaten erfasst.",
|
|
71
|
+
"No weekly data available yet.": "Noch keine Wochendaten verfügbar.",
|
|
72
|
+
"OUTSIDE": "AUSSEN",
|
|
73
|
+
"Off": "Aus",
|
|
74
|
+
"Official energy data not yet available from the cloud": "Offizielle Energiedaten noch nicht von der Cloud verfügbar",
|
|
75
|
+
"Official energy data unavailable for this trip": "Offizielle Energiedaten für diese Fahrt nicht verfügbar",
|
|
76
|
+
"Official energy split": "Energieaufteilung",
|
|
77
|
+
"Open": "Öffnen",
|
|
78
|
+
"Other": "Sonstiges",
|
|
79
|
+
"Other (untracked trips)": "Sonstiges (nicht erfasste Fahrten)",
|
|
80
|
+
"Preheat Battery": "Batterie vorheizen",
|
|
81
|
+
"Quick Cool": "Schnellkühlung",
|
|
82
|
+
"Quick Heat": "Schnellheizung",
|
|
83
|
+
"RANGE": "REICHWEITE",
|
|
84
|
+
"RANKING": "RANGLISTE",
|
|
85
|
+
"Refresh Status": "Status aktualisieren",
|
|
86
|
+
"Refresh Status Now": "Status jetzt aktualisieren",
|
|
87
|
+
"Repeat": "Wiederholen",
|
|
88
|
+
"STATUS": "STATUS",
|
|
89
|
+
"Sat": "Sa",
|
|
90
|
+
"Seat Heat": "Sitzheizung",
|
|
91
|
+
"Sentry Mode Off": "Wachmodus aus",
|
|
92
|
+
"Sentry Mode On": "Wachmodus an",
|
|
93
|
+
"Speed Limit (0 = off)": "Geschwindigkeitsbegrenzung (0 = aus)",
|
|
94
|
+
"Start": "Start",
|
|
95
|
+
"Start Time": "Startzeit",
|
|
96
|
+
"Steering": "Lenkrad",
|
|
97
|
+
"Steering Wheel Heat Off": "Lenkradheizung aus",
|
|
98
|
+
"Steering Wheel Heat On": "Lenkradheizung an",
|
|
99
|
+
"Sun": "So",
|
|
100
|
+
"Sunshade": "Sonnenblende",
|
|
101
|
+
"TOTAL": "GESAMT",
|
|
102
|
+
"TREND": "TREND",
|
|
103
|
+
"TRIP OVERVIEW": "FAHRTEN-ÜBERSICHT",
|
|
104
|
+
"Thu": "Do",
|
|
105
|
+
"Today": "Heute",
|
|
106
|
+
"Trip in progress": "Fahrt läuft",
|
|
107
|
+
"Trips are detected every 5 minutes based on speed. Very short trips between two polls may show up as \"Other\" instead of being recorded as an individual trip.": "Fahrten werden anhand der Geschwindigkeit erkannt. Sehr kurze Fahrten zwischen zwei Abfragen können als \"Sonstiges\" statt als eigene Fahrt erscheinen.",
|
|
108
|
+
"Trunk": "Kofferraum",
|
|
109
|
+
"Tue": "Di",
|
|
110
|
+
"Turn Off": "Ausschalten",
|
|
111
|
+
"Turn On": "Einschalten",
|
|
112
|
+
"Unlock": "Entriegeln",
|
|
113
|
+
"Unlocked": "Entriegelt",
|
|
114
|
+
"Vehicle Information": "Fahrzeuginformationen",
|
|
115
|
+
"Vent": "Lüften",
|
|
116
|
+
"WORST WEEK": "SCHLECHTESTE WOCHE",
|
|
117
|
+
"Wed": "Mi",
|
|
118
|
+
"Window": "Fenster",
|
|
119
|
+
"Windshield Defrost (full heat)": "Frontscheibenentfrostung (volle Heizung)",
|
|
120
|
+
"Year": "Jahr",
|
|
121
|
+
"battery": "Akku",
|
|
122
|
+
"n/a (not supported on this model)": "n/a (von diesem Modell nicht unterstützt)",
|
|
123
|
+
"trip detected": "Fahrt erkannt",
|
|
124
|
+
"trips detected": "Fahrten erkannt",
|
|
125
|
+
"vs. average": "vs. Durchschnitt",
|
|
126
|
+
"Merge with previous trip": "Mit vorheriger Fahrt zusammenführen",
|
|
127
|
+
"gap": "Lücke",
|
|
128
|
+
"(adapter default)": "(Adapter-Standard)",
|
|
129
|
+
"An existing ioBroker state from another adapter (e.g. Tibber/aWATTar/EPEX) reporting the current price in EUR/kWh. If set, charging cost uses this live value instead of the manually-edited price, so a mid-charge price change is picked up on the next poll. Leave empty to use the manual price only.": "Ein bestehender ioBroker-Datenpunkt eines anderen Adapters (z.B. Tibber/aWATTar/EPEX), der den aktuellen Preis in EUR/kWh liefert. Wenn gesetzt, nutzt die Ladekosten-Berechnung diesen Live-Wert statt des manuell eingetragenen Preises - eine Preisänderung mitten im Laden schlägt sich beim nächsten Poll nieder. Leer lassen für nur den manuellen Preis.",
|
|
130
|
+
"Data is over 30 minutes old - the cloud may be serving a cached frame while the vehicle sleeps": "Daten sind älter als 30 Minuten - die Cloud liefert möglicherweise einen gecachten Stand, während das Fahrzeug schläft",
|
|
131
|
+
"Driving interval (s)": "Intervall während der Fahrt (s)",
|
|
132
|
+
"Dynamic Electricity Price": "Dynamischer Strompreis",
|
|
133
|
+
"Dynamic price state ID (optional)": "Datenpunkt für dynamischen Preis (optional)",
|
|
134
|
+
"GPS Route Recording": "GPS-Routenaufzeichnung",
|
|
135
|
+
"Load Telegram users": "Telegram-Nutzer laden",
|
|
136
|
+
"Lower values mean more API calls to the Leapmotor cloud - go easy and increase again if you see rate-limit-style errors in the log.": "Niedrigere Werte bedeuten mehr Anfragen an die Leapmotor-Cloud - vorsichtig senken und wieder erhöhen, falls im Log rate-limit-artige Fehler auftauchen.",
|
|
137
|
+
"No known Telegram users found - message your bot once first, then reload.": "Keine bekannten Telegram-Nutzer gefunden - schreib deinem Bot einmal, dann neu laden.",
|
|
138
|
+
"Notification adapter instance": "Benachrichtigungs-Adapter-Instanz",
|
|
139
|
+
"Notify on software update available": "Benachrichtigen bei verfügbarem Software-Update",
|
|
140
|
+
"Notify when a trip ends": "Benachrichtigen wenn eine Fahrt endet",
|
|
141
|
+
"Notify when charging finishes": "Benachrichtigen wenn Laden fertig ist",
|
|
142
|
+
"Parked/charging interval (s)": "Intervall bei Stillstand/Laden (s)",
|
|
143
|
+
"Polling": "Abfrage",
|
|
144
|
+
"Push Notifications": "Push-Benachrichtigungen",
|
|
145
|
+
"Target (chat ID / recipient, optional)": "Ziel (Chat-ID / Empfänger, optional)",
|
|
146
|
+
"Target (chat)": "Ziel (Chat)",
|
|
147
|
+
"Vehicle last reported": "Fahrzeug hat sich zuletzt gemeldet",
|
|
148
|
+
"min ago": "Min. her",
|
|
149
|
+
"Opt-in, off by default. Only the last 20 trips' routes are kept, separate from trip history, to keep storage size bounded.": "Optional, standardmäßig aus. Nur die letzten 20 Routen werden behalten, getrennt von der Fahrten-Historie, um die Speichergröße zu begrenzen.",
|
|
150
|
+
"No compatible notification adapter installed": "Kein kompatibler Benachrichtigungs-Adapter installiert",
|
|
151
|
+
"(none)": "(keiner)",
|
|
152
|
+
"Send test notification": "Test-Benachrichtigung senden",
|
|
153
|
+
"Sent successfully": "Erfolgreich gesendet",
|
|
154
|
+
"Connecting...": "Verbinde...",
|
|
155
|
+
"Dashboard": "Dashboard",
|
|
156
|
+
"Datapoints": "Datenpunkte",
|
|
157
|
+
"Diagnostics": "Diagnose",
|
|
158
|
+
"No vehicle found. Is the adapter running?": "Kein Fahrzeug gefunden. Läuft der Adapter?",
|
|
159
|
+
"Settings": "Einstellungen",
|
|
160
|
+
"Trips": "Fahrten"
|
|
161
|
+
}
|
package/admin/i18n/en.json
CHANGED
|
@@ -6,6 +6,156 @@
|
|
|
6
6
|
"Leapmotor E-Mail": "Leapmotor E-Mail",
|
|
7
7
|
"Password": "Password",
|
|
8
8
|
"Polling interval (minutes)": "Polling interval (minutes)",
|
|
9
|
+
"Polling interval when parked/charging (seconds)": "Polling interval when parked/charging (seconds)",
|
|
10
|
+
"Polling interval while driving (seconds)": "Polling interval while driving (seconds)",
|
|
11
|
+
"How often to fetch vehicle status while the car isn't driving. Default 60s. Lower values mean more API calls to the Leapmotor cloud - go easy and increase again if you ever see rate-limit-style errors in the log.": "How often to fetch vehicle status while the car isn't driving. Default 60s. Lower values mean more API calls to the Leapmotor cloud - go easy and increase again if you ever see rate-limit-style errors in the log.",
|
|
12
|
+
"How often to fetch vehicle status while the car is detected as driving (speed>0 or ignition on). Default 15s.": "How often to fetch vehicle status while the car is detected as driving (speed>0 or ignition on). Default 15s.",
|
|
13
|
+
"Record GPS route during trips": "Record GPS route during trips",
|
|
14
|
+
"Stores a GPS breadcrumb trail for each trip while driving (opt-in, off by default). Only the last 20 trips' routes are kept, separate from trip history, to keep the adapter's storage size bounded.": "Stores a GPS breadcrumb trail for each trip while driving (opt-in, off by default). Only the last 20 trips' routes are kept, separate from trip history, to keep the adapter's storage size bounded.",
|
|
9
15
|
"Use a dedicated second account (see README)": "Use a dedicated second account (see README)",
|
|
10
|
-
"Vehicle PIN": "Vehicle PIN"
|
|
11
|
-
|
|
16
|
+
"Vehicle PIN": "Vehicle PIN",
|
|
17
|
+
"AVG CONSUMPTION": "AVG CONSUMPTION",
|
|
18
|
+
"Active": "Active",
|
|
19
|
+
"Active schedule": "Active schedule",
|
|
20
|
+
"Allocation Code": "Allocation Code",
|
|
21
|
+
"Apply Schedule": "Apply Schedule",
|
|
22
|
+
"BEST WEEK": "BEST WEEK",
|
|
23
|
+
"Battery Preheat Off": "Battery Preheat Off",
|
|
24
|
+
"CHARGE": "CHARGE",
|
|
25
|
+
"CHARGING": "CHARGING",
|
|
26
|
+
"CLIMATE": "CLIMATE",
|
|
27
|
+
"CLIMATE CONTROL": "CLIMATE CONTROL",
|
|
28
|
+
"CLIMATE SCHEDULE": "CLIMATE SCHEDULE",
|
|
29
|
+
"COMFORT": "COMFORT",
|
|
30
|
+
"CONNECTIVITY": "CONNECTIVITY",
|
|
31
|
+
"Charge Limit": "Charge Limit",
|
|
32
|
+
"Charge Schedule": "Charge Schedule",
|
|
33
|
+
"Climate": "Climate",
|
|
34
|
+
"Climate Schedule": "Climate Schedule",
|
|
35
|
+
"Climate is currently OFF": "Climate is currently OFF",
|
|
36
|
+
"Climate is currently ON (exact mode not reported by this vehicle model)": "Climate is currently ON (exact mode not reported by this vehicle model)",
|
|
37
|
+
"Close": "Close",
|
|
38
|
+
"Closed": "Closed",
|
|
39
|
+
"Cloud Connection": "Cloud Connection",
|
|
40
|
+
"Connected": "Connected",
|
|
41
|
+
"Consumption": "Consumption",
|
|
42
|
+
"Consumption over the last 6 weeks": "Consumption over the last 6 weeks",
|
|
43
|
+
"Cool": "Cool",
|
|
44
|
+
"DOOR OPEN": "DOOR OPEN",
|
|
45
|
+
"DOORS": "DOORS",
|
|
46
|
+
"Delete": "Delete",
|
|
47
|
+
"Disconnected": "Disconnected",
|
|
48
|
+
"Driving": "Driving",
|
|
49
|
+
"End": "End",
|
|
50
|
+
"Fan Speed": "Fan Speed",
|
|
51
|
+
"Fri": "Fri",
|
|
52
|
+
"Heat": "Heat",
|
|
53
|
+
"Hotspot": "Hotspot",
|
|
54
|
+
"Inactive": "Inactive",
|
|
55
|
+
"Inactive (last": "Inactive (last",
|
|
56
|
+
"LOCK": "LOCK",
|
|
57
|
+
"LOCKED": "LOCKED",
|
|
58
|
+
"LOCKS & OPENINGS": "LOCKS & OPENINGS",
|
|
59
|
+
"Last 7 days": "Last 7 days",
|
|
60
|
+
"Last data update": "Last data update",
|
|
61
|
+
"Locate Vehicle": "Locate Vehicle",
|
|
62
|
+
"Lock": "Lock",
|
|
63
|
+
"Locked": "Locked",
|
|
64
|
+
"Mirror/Rear Window Heat Off": "Mirror/Rear Window Heat Off",
|
|
65
|
+
"Mirror/Rear Window Heat On": "Mirror/Rear Window Heat On",
|
|
66
|
+
"Mode": "Mode",
|
|
67
|
+
"Model": "Model",
|
|
68
|
+
"Mon": "Mon",
|
|
69
|
+
"No schedule set": "No schedule set",
|
|
70
|
+
"No trip data recorded yet.": "No trip data recorded yet.",
|
|
71
|
+
"No weekly data available yet.": "No weekly data available yet.",
|
|
72
|
+
"OUTSIDE": "OUTSIDE",
|
|
73
|
+
"Off": "Off",
|
|
74
|
+
"Official energy data not yet available from the cloud": "Official energy data not yet available from the cloud",
|
|
75
|
+
"Official energy data unavailable for this trip": "Official energy data unavailable for this trip",
|
|
76
|
+
"Official energy split": "Energy split",
|
|
77
|
+
"Open": "Open",
|
|
78
|
+
"Other": "Other",
|
|
79
|
+
"Other (untracked trips)": "Other (untracked trips)",
|
|
80
|
+
"Preheat Battery": "Preheat Battery",
|
|
81
|
+
"Quick Cool": "Quick Cool",
|
|
82
|
+
"Quick Heat": "Quick Heat",
|
|
83
|
+
"RANGE": "RANGE",
|
|
84
|
+
"RANKING": "RANKING",
|
|
85
|
+
"Refresh Status": "Refresh Status",
|
|
86
|
+
"Refresh Status Now": "Refresh Status Now",
|
|
87
|
+
"Repeat": "Repeat",
|
|
88
|
+
"STATUS": "STATUS",
|
|
89
|
+
"Sat": "Sat",
|
|
90
|
+
"Seat Heat": "Seat Heat",
|
|
91
|
+
"Sentry Mode Off": "Sentry Mode Off",
|
|
92
|
+
"Sentry Mode On": "Sentry Mode On",
|
|
93
|
+
"Speed Limit (0 = off)": "Speed Limit (0 = off)",
|
|
94
|
+
"Start": "Start",
|
|
95
|
+
"Start Time": "Start Time",
|
|
96
|
+
"Steering": "Steering",
|
|
97
|
+
"Steering Wheel Heat Off": "Steering Wheel Heat Off",
|
|
98
|
+
"Steering Wheel Heat On": "Steering Wheel Heat On",
|
|
99
|
+
"Sun": "Sun",
|
|
100
|
+
"Sunshade": "Sunshade",
|
|
101
|
+
"TOTAL": "TOTAL",
|
|
102
|
+
"TREND": "TREND",
|
|
103
|
+
"TRIP OVERVIEW": "TRIP OVERVIEW",
|
|
104
|
+
"Thu": "Thu",
|
|
105
|
+
"Today": "Today",
|
|
106
|
+
"Trip in progress": "Trip in progress",
|
|
107
|
+
"Trips are detected every 5 minutes based on speed. Very short trips between two polls may show up as \"Other\" instead of being recorded as an individual trip.": "Trips are detected every 5 minutes based on speed. Very short trips between two polls may show up as \"Other\" instead of being recorded as an individual trip.",
|
|
108
|
+
"Trunk": "Trunk",
|
|
109
|
+
"Tue": "Tue",
|
|
110
|
+
"Turn Off": "Turn Off",
|
|
111
|
+
"Turn On": "Turn On",
|
|
112
|
+
"Unlock": "Unlock",
|
|
113
|
+
"Unlocked": "Unlocked",
|
|
114
|
+
"Vehicle Information": "Vehicle Information",
|
|
115
|
+
"Vent": "Vent",
|
|
116
|
+
"WORST WEEK": "WORST WEEK",
|
|
117
|
+
"Wed": "Wed",
|
|
118
|
+
"Window": "Window",
|
|
119
|
+
"Windshield Defrost (full heat)": "Windshield Defrost (full heat)",
|
|
120
|
+
"Year": "Year",
|
|
121
|
+
"battery": "battery",
|
|
122
|
+
"n/a (not supported on this model)": "n/a (not supported on this model)",
|
|
123
|
+
"trip detected": "trip detected",
|
|
124
|
+
"trips detected": "trips detected",
|
|
125
|
+
"vs. average": "vs. average",
|
|
126
|
+
"Merge with previous trip": "Merge with previous trip",
|
|
127
|
+
"gap": "gap",
|
|
128
|
+
"(adapter default)": "(adapter default)",
|
|
129
|
+
"An existing ioBroker state from another adapter (e.g. Tibber/aWATTar/EPEX) reporting the current price in EUR/kWh. If set, charging cost uses this live value instead of the manually-edited price, so a mid-charge price change is picked up on the next poll. Leave empty to use the manual price only.": "An existing ioBroker state from another adapter (e.g. Tibber/aWATTar/EPEX) reporting the current price in EUR/kWh. If set, charging cost uses this live value instead of the manually-edited price, so a mid-charge price change is picked up on the next poll. Leave empty to use the manual price only.",
|
|
130
|
+
"Data is over 30 minutes old - the cloud may be serving a cached frame while the vehicle sleeps": "Data is over 30 minutes old - the cloud may be serving a cached frame while the vehicle sleeps",
|
|
131
|
+
"Driving interval (s)": "Driving interval (s)",
|
|
132
|
+
"Dynamic Electricity Price": "Dynamic Electricity Price",
|
|
133
|
+
"Dynamic price state ID (optional)": "Dynamic price state ID (optional)",
|
|
134
|
+
"GPS Route Recording": "GPS Route Recording",
|
|
135
|
+
"Load Telegram users": "Load Telegram users",
|
|
136
|
+
"Lower values mean more API calls to the Leapmotor cloud - go easy and increase again if you see rate-limit-style errors in the log.": "Lower values mean more API calls to the Leapmotor cloud - go easy and increase again if you see rate-limit-style errors in the log.",
|
|
137
|
+
"No known Telegram users found - message your bot once first, then reload.": "No known Telegram users found - message your bot once first, then reload.",
|
|
138
|
+
"Notification adapter instance": "Notification adapter instance",
|
|
139
|
+
"Notify on software update available": "Notify on software update available",
|
|
140
|
+
"Notify when a trip ends": "Notify when a trip ends",
|
|
141
|
+
"Notify when charging finishes": "Notify when charging finishes",
|
|
142
|
+
"Parked/charging interval (s)": "Parked/charging interval (s)",
|
|
143
|
+
"Polling": "Polling",
|
|
144
|
+
"Push Notifications": "Push Notifications",
|
|
145
|
+
"Target (chat ID / recipient, optional)": "Target (chat ID / recipient, optional)",
|
|
146
|
+
"Target (chat)": "Target (chat)",
|
|
147
|
+
"Vehicle last reported": "Vehicle last reported",
|
|
148
|
+
"min ago": "min ago",
|
|
149
|
+
"Opt-in, off by default. Only the last 20 trips' routes are kept, separate from trip history, to keep storage size bounded.": "Opt-in, off by default. Only the last 20 trips' routes are kept, separate from trip history, to keep storage size bounded.",
|
|
150
|
+
"No compatible notification adapter installed": "No compatible notification adapter installed",
|
|
151
|
+
"(none)": "(none)",
|
|
152
|
+
"Send test notification": "Send test notification",
|
|
153
|
+
"Sent successfully": "Sent successfully",
|
|
154
|
+
"Connecting...": "Connecting...",
|
|
155
|
+
"Dashboard": "Dashboard",
|
|
156
|
+
"Datapoints": "Datapoints",
|
|
157
|
+
"Diagnostics": "Diagnostics",
|
|
158
|
+
"No vehicle found. Is the adapter running?": "No vehicle found. Is the adapter running?",
|
|
159
|
+
"Settings": "Settings",
|
|
160
|
+
"Trips": "Trips"
|
|
161
|
+
}
|