Use your AccessPort
without a laptop.
The COBB AccessPort holds your datalogs and maps over USB — but it only talks to a Windows PC or a Mac. So the moment you want a log at the track, at a meet, or in your own driveway, you go find a computer.
RevLink Sidecar is an ESP32-P4 that sits between the AccessPort and your phone. Plug in, open a web page, and your files are there.
Chromium browsers only for flashing — Chrome, Edge, Arc, Brave. Apache-2.0. Free, and nothing to sign up for.
What it does
- Syncs on its own. Plug in the AccessPort and new datalogs and maps copy to a microSD card you own — incrementally, only what changed, checksum-verified.
-
Puts maps back on, and clears space.
Send a
.ptmto the AccessPort from your phone — even with the AccessPort unplugged, in which case it transfers by itself at the next sync. Every write is read back and checked before it counts as done. Files inmaps/anddatalog/can be deleted too, so a full device doesn't send you looking for a laptop. Both are off until you turn them on. - Serves a web portal from the device. It joins your home or shop Wi-Fi when it can, and starts its own hotspot when it can't. No internet required, ever.
- Graphs your logs on your phone. Single and split views, searchable channels, presets for Air/Fuel, Boost, Knock, Timing and Thermal, exact values under the pointer.
- Vehicle Health. A deterministic, local, rule-based pass over logs you've already synced. No AI, no phone-home — it shows you the evidence it used.
- Handles more than one car. Separate datasets per AccessPort, so a shop doesn't mix files up.
- Offline by design. No account, no telemetry, no cloud dependency. Your data stays on your card.
What it looks like
The portal is served by the Sidecar itself and opens in any browser on your phone or laptop. Nothing below is a mockup — these are real screens from a Sidecar with an AccessPort plugged into it. Serial numbers and map names have been changed.
-
Knows what's plugged in
Part number, vehicle and firmware, and whether this dataset is the
device in front of you.
-
Every log, with its map
Badges say where each file actually lives. Logs remember which map
they were recorded on.
-
Maps, both directions
Save a tuner's map with the AccessPort unplugged; it transfers on its
own next time you connect.
-
Trends, not guesses
A rule-based pass over logs you already have. It reports its
confidence and shows the evidence it used.
What it deliberately doesn't do
This reads and writes files. It is not a tuning tool, and it is a companion to your AccessPort rather than a replacement for it.
- No ECU flashing. Not now, not planned.
- No real-time tuning.
- No decoding or unlocking of protected map content.
- It can copy a map file onto the AccessPort's own storage, but installing that map onto the ECU stays a deliberate action on the AccessPort itself. Writes and deletes ship locked, behind two separate switches, and have to be turned on.
What you need
- A Waveshare ESP32-P4-NANO — around $30.
- A microSD card.
- A USB-C power bank. The reference build runs off an Anker Nano.
- Optional: a 1.3″ SH1106 OLED for status at a glance.
- Optional: the 3D-printable case — STL and 3MF included.
The ESP32-P4-WIFI6-DEV-KIT works too, but needs its own build: it uses different silicon and the images are not interchangeable. The flasher checks which board you have before writing anything.
Where it stands
Developed in the open, and in daily use on a real car. Reading —
enumerate, list, incrementally sync, verify by SHA-256, view — has been
accepted on real hardware. So has writing: maps have been transferred to
an attached AccessPort repeatedly in ordinary use, each one read back and
matched by SHA-256 before it was reported as done, including transfers
that happened unattended after a sync. Deleting files from
maps/ and datalog/ is accepted too. All three
are in the published build.
SAFETY.md lists precisely what is and isn't proven. If something there is wrong, that's a bug worth reporting.
Contributions wanted
Especially: enclosure revisions (the lid still needs internal mounting
posts for the OLED), AccessPort part numbers this build doesn't know
yet, and portal UX. Everything runs on a laptop —
./scripts/ci-local.sh, no board required.