Drive Remote Controller 0.219
Pre-releaseBuilt from 2974baa.
Read this before commanding anything
This app commands a boat's drives and its bow thruster. The system has
not been through the commissioning checklists in docs/SAFETY.md.
Work through those before connecting any output to a drive or a thruster.
What is here
The Android station, and nothing else. The firmware and the Signal K
plugin are not released: the three ESP32 units are flashed over the air
from a working tree, and the plugin is installed on the boat's server from
npm pack output, so neither was ever installed from a Release. Both are
still built and tested on every push — see the repository's CI.
| Asset | Signed with | Notes |
|---|---|---|
DriveRemoteController-0.219.apk |
the release key | Shrunk and obfuscated by R8 |
DriveRemoteController-0.219-debug.apk |
the generic Android debug key | Unminified, carries the Compose UI tooling |
Take the release APK unless you are chasing a fault that only appears in
the shrunk build — the debug one is the same code with nothing removed.
They cannot replace each other. Android refuses to install a build
signed with a different key over an existing one, in either direction, so
switching between them means adb uninstall io.github.kegustafsson.driveremote first. That uninstall clears the
stored Signal K token, which lives in app-private storage excluded from
backup, so the station then needs a fresh access request approved in the
server's admin UI.
Reading a crash report
The release APK is obfuscated, so a stack trace from it is meaningless on
its own. DriveRemoteController-0.219.mapping.txt.gz is the mapping
file for this exact build — the only copy that will ever match it:
gunzip DriveRemoteController-0.219.mapping.txt.gz
retrace DriveRemoteController-0.219.mapping.txt stacktrace.txtretrace is in the SDK's cmdline-tools. The debug APK needs none of
this.
The APK is shrunk and obfuscated by R8, so a stack trace from it is
unreadable on its own. DriveRemoteController-0.219.mapping.txt.gz
is the mapping file for this exact build — the only copy that will ever
match it. To read a crash report, gunzip it and pass it to
retrace (in the SDK's cmdline-tools):
gunzip DriveRemoteController-0.219.mapping.txt.gz
retrace DriveRemoteController-0.219.mapping.txt stacktrace.txtVerifying what you downloaded
Both APKs and the mapping file have a .sha256 beside them:
sha256sum -c <file>.sha256There is also a CycloneDX software bill of materials
(.sbom.cdx.json) of everything on the release runtime classpath. The
checksum files and the SBOM are not themselves checksummed.
Every file in this release carries a signed build-provenance attestation:
gh attestation verify <file> --repo KEGustafsson/drive-remote-controller