JLR InControl v1.4.7
Removes the change that has been causing the repeated "sign in again" prompts since v1.4.2.
Update, then sign in once. Sorry — this should be the last time. The evidence is now clear and it points at something I added rather than at Jaguar Land Rover.
What happened
v1.4.2 started refreshing the stored sign-in cookies after each connection to the owner portal, to try to keep the session alive. It had the opposite effect, and every version since has inherited it:
| version | behaviour | session lasted |
|---|---|---|
| v1.4.1 | no refresh | ~33 hours |
| v1.4.2 – v1.4.6 | with refresh | until the first re-login, ~30 minutes |
The reason: signing in to the portal can hand back routing cookies pointing at a different identity server from the one holding your session. Adopting those makes the stored set inconsistent, so every later sign-in is routed to a server that has never heard of the session — which looks exactly like an expired session and isn't one. Changing it to merge rather than replace (v1.4.4) only made it survive a bit longer before doing the same thing.
The set captured when you sign in is consistent by construction. It is now replayed unchanged, which is the only arrangement that has lasted more than an hour.
Live vehicle status has been unaffected throughout all of this.
What's Changed
- Remove the cookie refresh; it caused every failure it was meant to prevent
Installation
HACS (recommended)
Add https://github.com/willbeeching/ha-jlr-incontrol as a custom repository (category Integration), install, and restart Home Assistant.
Manual
Download jlr_incontrol.zip, extract into config/custom_components/, and restart Home Assistant.