You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 63dc4d1
Browse filesBrowse the repository at this point in the historyBrowse files
feat: climate, charging, radio, calls, navigation and a location condition
Wires the vendor services MG4Hardware now reaches, and answers the reports that came with
the request.
**The test button answers the question it asks.** "Test now" said "test running" and
stopped there, leaving the History tab to be opened to find out what happened. The cycle
now reports back through CycleReporter and lands in a dialog: one line per rule with its
outcome, the per-action verdict behind a failure, and the name of any signal that could
not be read.
**A rule's message is shown, not only posted.** A notification on a head unit is an icon
in a bar nobody looks at while driving, and the channel can be silenced without the app
being told. showRuleMessage now shows a toast as well, so the action always reaches the
driver; a silenced channel is reported as a detail rather than as a refusal, which also
means the picker stops hiding it.
**Value controls open on the present setting.** A brightness slider starting at 5% invites
confirming 5% by accident. A fresh action now opens on what the car reports — via the new
ActionType.currentKey and a snapshot read when the editor opens. Reopening a saved action
still shows what the rule says, so editing a name cannot rewrite a value.
**The standstill limit is settable, 0 to 50 km/h**, from the Rules screen; 0 stays the
default. The dialog says what raising it does and does not do: the vehicle still refuses
what it refuses on its own, and an unreadable speed still fails closed. The value in force
appears on the Diagnostic tab and in every exported report.
**New entries**, most on vendor services (SWI68/SWI165, the apks/ platform):
climate on/off, target temperature, A/C, AUTO, recirculation, fan level, defrosters
energy charge limit, allow charging, scheduled charging + window, battery pre-heating
audio play the radio
system call a number, navigate to a destination
reading battery level, charging, charge limit, climate on; near a place
Climate conditions now read from the vendor service where it answers, falling back to the
AOSP ids elsewhere — so what a rule tests and what an action writes are the same signal.
"Near a place" takes a point and a radius in metres, prefilled with where the car is,
because nobody types coordinates on a head unit. No fix means unavailable, not "somewhere
else": otherwise every "when I am NOT at home" rule fires on the driveway while the GPS is
still acquiring. Position is read as a last known fix, never requested live, and never
leaves the car. The permission is asked for when a rule first needs it, not at startup.
**The paste explains itself.** A shared report now opens with a localized block giving the
password, the expiry, and credit to April — who host the instance free of charge — with a
donation link, so whoever receives the link needs nothing explained separately.
The diagnostic gained three rows — which vendor services bound, the position, the write
threshold — and three reasons, so an entry blocked by a missing vendor service, no
navigation app or no fix says which.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
0 commit comments