Commit Graph
100 Commits
Author SHA1 Message Date
Seb3thehacker 0d0bfd3d66 setup: the 0.3 look, with a badge, a big headline and shorter words on every step 2026-10-13 01:28:54 -07:00
Seb3thehacker b3f2088a1d intro: pick the car's button style, with sample buttons that redraw as you choose 2026-10-13 01:14:06 -07:00
Seb3thehacker 01a41c01c8 voice: "pause" keeps the music paused after the mic lets go 2026-10-13 00:52:00 -07:00
Seb3thehacker 62b1835444 theme: flat is the default 2026-10-13 00:45:39 -07:00
Seb3thehacker 1cd3d6f856 car mic: open a voice session and name the codec before asking for the car's microphone 2026-10-13 00:37:49 -07:00
Seb3thehacker 8912e88406 voice: "navigate to the nearest gas station" searches for a gas station near the car 2026-10-13 00:34:49 -07:00
Seb3thehacker 0bdc51ff6c voice: answer back when sworn at 2026-10-13 00:09:58 -07:00
Seb3thehacker 361caf5ea3 car audio: name the codec in the audio Setup, so cars that rejected it play music over USB 2026-10-13 00:09:27 -07:00
Seb3thehacker d53535e56c voice: download the models as plain files, skipping the slow bzip2 unpacking 2026-10-12 23:59:43 -07:00
Seb3thehacker 49a064acc0 video: cars that give no touchscreen size get the largest picture up to 1080p 2026-10-12 23:52:03 -07:00
Seb3thehacker 6d4389c7ab touch: shift taps past the car's cropped margin, so buttons land where they're pressed 2026-10-12 23:50:24 -07:00
Seb3thehacker ceed61def9 security: scan the Kotlin code with CodeQL by building the app 2026-10-12 21:10:35 -07:00
Seb3thehacker fd0ef64a42 security: a weekly Trivy scan and Dependabot updates 2026-10-12 21:00:25 -07:00
Seb3thehacker 28d99a3d87 voice: "play X" reopens the music app used last when none is open or it was closed 2026-10-12 17:16:25 -07:00
Seb3thehacker a526db6cd1 templated search: keep the keyboard down when the app asks, so results opened by voice show 2026-10-12 17:09:51 -07:00
Seb3thehacker 000ca85479 voice: Canary 180M as a middle choice for the final words 2026-10-12 16:38:32 -07:00
Seb3thehacker e76e9ddcf7 navigation: search near the phone, so "navigate to Del Taco" finds the closest one 2026-10-12 16:21:13 -07:00
Seb3thehacker 8069f54d8f voice: free Parakeet after 5 minutes without use and both models when the car disconnects 2026-10-12 16:20:15 -07:00
Seb3thehacker df85b0d1f3 car keyboard: taller keys, and search sits in the bottom-right corner 2026-10-12 16:19:27 -07:00
Seb3thehacker 4ac3d172d3 voice: understand natural phrasing for every command, open Gearslip's own apps by name, and say "exit" to hand the screen back 2026-10-12 16:10:23 -07:00
Seb3thehacker d099193ead car: call the Web app Browser 2026-10-12 16:02:53 -07:00
Seb3thehacker bc8f2372b1 voice: start listening sooner, say so while it gets ready, and scroll the help list from anywhere on it 2026-10-12 16:02:53 -07:00
Seb3thehacker 3ca87d1afc log: explain that answering every car with protocol 1.3 is on purpose 2026-10-12 14:16:51 -07:00
Seb3thehacker 8e98851e47 0.3 intro: a recommended apps screen, and AntennaPod in the recommended list 2026-10-12 14:12:04 -07:00
Seb3thehacker 7d6b9cf578 car audio: run the audio threads at audio priority so a busy phone doesn't make it skip 2026-10-12 01:31:24 -07:00
Seb3thehacker b2df84c46b voice and media search are built in now, with a voice intro screen and a new overlay over the car screen 2026-10-12 01:31:24 -07:00
Seb3thehacker 30d94bcfb5 voice: replace Whisper with sherpa-onnx, live words from Kroko and the final words from Parakeet
Models download in Settings instead of shipping in the APK. Credits for the engine and models are in About.
2026-10-12 00:51:31 -07:00
Seb3thehacker af9e9a7571 voice: play songs by name, a help list, and the phone's speech recognition as an option; Spotify connects without the wait 2026-10-12 00:20:36 -07:00
Seb3thehacker 7163598352 car media: drop the "Audio to car" line; name every audio focus state 2026-10-12 00:20:36 -07:00
Seb3thehacker 94ed58e13f 0.3 intro, donation links on Home, and About links for Matrix and the source 2026-10-12 00:20:36 -07:00
Seb3thehacker 59657c4f80 ixon fix mono color 2026-10-11 20:20:02 -07:00
Seb3thehacker 8abc8fe973 remove the "Before you plug in" popup on first launch 2026-10-11 20:01:36 -07:00
Seb3thehacker 4fe9421884 car audio: explain a blocked microphone permission instead of failing silently 2026-10-11 20:01:36 -07:00
Seb3thehacker fff2db63b0 updates: beta channel, and a switch to turn off automatic checks
Beta updates counts GitHub pre-releases as updates. With Check automatically off, Gearslip contacts GitHub only when you tap Check for updates.
2026-10-11 14:48:46 -07:00
Seb3thehacker fb6bc018d5 Add a contributor license agreement
Contributors keep their copyright and license their work to Twink Software LLC, which keeps it available under the AGPL and may also offer it under the commercial license. CONTRIBUTING now points to it.
2026-10-11 14:48:46 -07:00
Seb3thehacker 580a8365eb car screen: stop vibrating the phone on long presses 2026-10-11 11:39:22 -07:00
Seb3thehacker 5721b9efb3 icon: remove unused archive images 2026-10-11 11:34:06 -07:00
Seb3thehacker ed331088cc stats: name the phone's OS instead of only GrapheneOS or other
Reports GrapheneOS, CalyxOS, /e/OS, iodeOS, DivestOS, LineageOS, or stock with the brand.
2026-10-11 11:34:06 -07:00
Seb3thehacker 33ed2d0653 setup: drop the GrapheneOS exploit protection step 2026-10-11 11:34:06 -07:00
Seb3thehacker 261e6a719a car audio: choose Bluetooth or USB, offer Bluetooth after a refused screen share
USB audio needs Android's screen-sharing consent every drive. A new Car audio setting on the phone and car screens picks Bluetooth instead, and the first refusal opens a dialog offering Bluetooth, asking again, or the one-time adb command.
2026-10-11 11:34:06 -07:00
Seb3thehacker f9e38cbc45 icon: drop the black square behind the README icon 2026-10-11 00:59:45 -07:00
Seb3thehacker e843f2adfe car knob: move focus with the rotary knob, show where it is
The knob's turns reached the car screen but never moved focus: keys handed
straight to the view left it in touch mode, where buttons refuse focus.
Buttons now show an accent ring while the knob is on them, map buttons wake
on a knob turn instead of only on touch, and web pages get the same ring.

The car's Home button opens the dashboard, Map opens the map, and Music
reopens the last media app.

Refs #9
2026-10-10 17:55:36 -07:00
Seb3thehacker 239be1256b place pages: name on top, actions as buttons, call a place's number
Panes shaped like a place page (MAPS.ME's) show the name and kind first, short
tappable rows as buttons, and the details compact below. A phone number gets a
Call button that asks first with the dialer's confirmation. Other panes draw as
before.
2026-10-09 15:26:48 -07:00
Seb3thehacker 23f12884da car toasts: take turns instead of replacing each other
A new toast waits until the one on screen has had 2 seconds. Repeats restart the
visible toast, and a burst keeps only the newest three waiting.
2026-10-09 15:26:48 -07:00
Seb3thehacker 75dfaa3013 car icons: drop app tints that can't be seen, mark MAPS.ME and MapQuest as working
MAPS.ME tints its map buttons dark grey for dark mode, which vanished on Gearslip's
dark buttons. A tint below 3:1 contrast now falls back to the normal text colour,
as Android Auto does.
2026-10-09 15:26:48 -07:00
Seb3thehacker 179a51ea25 car toasts: match the message popup and stay up longer
A driver only glances at the screen, so short toasts now last 4 seconds and long
ones 7. The card uses the popup's colours, which read better over a map.
2026-10-09 14:24:32 -07:00
Seb3thehacker 006823232d Merge remote-tracking branch 'origin/experimental' into experimental 2026-10-09 14:24:28 -07:00
Seb3thehacker 92d7940f56 car apps: let hosted apps start their own location service, fixing MapQuest
Since Android 14, an app bound by a visible host may start a foreground service
only if the host binds it with BIND_ALLOW_ACTIVITY_STARTS. Without it, MapQuest
crashed as navigation began, and Flitsmeister and Vela ran their services without
location. MapQuest now gets the working check.
2026-10-09 13:50:40 -07:00
Seb3thehacker fd658d4e57 certificate: say where it comes from, offer import alongside download, keep cert files out of the repo 2026-10-08 15:27:48 -07:00
Seb3thehacker 246f571a86 readme: around 2020 2026-10-08 10:37:53 -07:00
Seb3thehacker a22d7936d4 readme: move which cars work to the top 2026-10-08 10:37:06 -07:00
Seb3thehacker 74330db01c readme: say most cars work, and why some newer ones don't 2026-10-08 10:35:30 -07:00
Seb3thehacker 516f6c7f94 ask once to share after the first drive that works, cache the cert for settings 2026-10-08 00:27:54 -07:00
Seb3thehacker 40086e061b audio pause when unplugged, theme tweak 2026-10-08 00:06:34 -07:00
Seb3thehacker c212c2e2d1 usage notes changes, audio changes, video quality increase. 2026-10-07 23:50:47 -07:00
Seb3thehacker 55320c4d98 example data 2026-10-07 16:37:40 -07:00
Seb3thehacker 9dc705c8cf direct download link to obtainium 2026-10-07 15:11:06 -07:00
Seb3thehacker be981b0899 start car audio as soon as the head unit answers setup 2026-10-07 00:10:28 -07:00
Seb3thehacker dd3b845c7f stream directions to car directly 2026-10-06 23:33:18 -07:00
Seb3thehacker c57abecc62 send song data to car screens 2026-10-06 23:33:18 -07:00
Seb3thehacker dfebae93b3 higher video bitrate, scaled to the car's screen
800x480 at 30fps gets 8 Mbps instead of 4, and larger screens scale from
there. The encoder now declares the H.264 level each size needs, and the
bitrate stays within that level's limit.
2026-10-06 23:33:18 -07:00
Seb3thehacker 1af5eae8e7 usage notes switch on the Home screen 2026-10-06 23:33:18 -07:00
Seb3thehacker 25b8bbb1a5 keep the stats server out of the app repo 2026-10-06 23:33:18 -07:00
Seb3thehacker 2d5000e313 keep the stats server out of the app repo 2026-10-06 23:25:28 -07:00
Seb3thehacker 17534d5784 update checker: finds new releases, downloads and installs them
Checks GitHub's latest release once a day when the app opens and after a
drive. A new version shows as a card on Home, a notification after the
drive, and a card on the car screen at plug-in while parked. Downloads are
checked against GitHub's SHA-256 and never install while the car is
connected. Update notifications can be turned off in Settings.
2026-10-06 00:06:06 -07:00
Seb3thehacker 9620dab758 v0.2.00-alpha 2026-10-05 17:44:42 -07:00
Seb3thehacker e318b651bb leave the car's Bluetooth address out of logs 2026-10-05 17:44:42 -07:00
Seb3thehacker 3ac815eee4 setup guide shows what usage notes send 2026-10-05 17:44:42 -07:00
Seb3thehacker 10cc17bb66 usage notes preview shows the last cars sent 2026-10-05 17:44:42 -07:00
Seb3thehacker ca09d6adb8 usage notes say how they help fix cars 2026-10-05 17:44:42 -07:00
Seb3thehacker af058609dd dashboard shows GitHub's current download count 2026-10-05 17:44:42 -07:00
Seb3thehacker a4ab5b005e listen through the car's mic, fix exit on Uconnect, follow the car's night mode 2026-10-05 17:03:43 -07:00
Seb3thehacker 672a68cd1b ask for car audio on connect, media search behind experimental 2026-10-05 17:03:43 -07:00
Seb3thehacker 24d7e4c415 voice reply countdown keeps running through road noise 2026-10-05 17:03:43 -07:00
Seb3thehacker 1127d4baf7 phone typing bar sits on the keyboard, close on the left and search on the right 2026-10-05 17:03:43 -07:00
Seb3thehacker dc550ab735 fix the car screen falling behind on maps that draw nonstop 2026-10-05 17:03:43 -07:00
Seb3thehacker 5380cf0660 keep the car's drive safely button the width of its card 2026-10-05 01:47:39 -07:00
Seb3thehacker 7cc6b64ce2 ask existing users with the setup guide's usage page instead of a dialog 2026-10-05 01:39:41 -07:00
Seb3thehacker b5ff4ec22b send the first usage note after leaving the choices, not on the switch 2026-10-05 01:36:36 -07:00
Seb3thehacker 302dd6c344 show usage notes in dev builds too, but never send from them 2026-10-05 01:31:15 -07:00
Seb3thehacker 62fb8babad ask existing users about usage notes once 2026-10-05 01:27:49 -07:00
Seb3thehacker fe44576b06 dev builds send no usage notes 2026-10-05 01:24:49 -07:00
Seb3thehacker 355eb8bffd taller car keyboard, type from the phone, real media search
A box on the phone types into the car's text field. Media apps with library search show a list of results to pick from, searching a second after you stop typing.
2026-10-05 01:21:16 -07:00
Seb3thehacker 7d197bf021 fix silent audio on cars with an AAC sink, keep location out of logs
Cars like the 2022 Dacia Jogger list a compressed audio channel before the raw one, and Gearslip was sending raw audio to it. The Exit tile no longer shows as running, and the log leaves out the weather town and the car's GPS.
2026-10-05 01:21:16 -07:00
Seb3thehacker cf0c324d80 redesign the phone app's settings
One look for every section, What's new and the setup guide at the top, and the setup guide's buttons stay on screen. Recommended apps is hidden for now.
2026-10-05 01:21:16 -07:00
Seb3thehacker 5a3bbe82a0 opt-in usage notes and a stats dashboard
Release builds ask in setup and Settings whether to send a short note when the app is opened and after each drive: the version, plus the Android version, phone model and cars people tick. Nothing runs in the background. Dev builds always send. The Cloudflare Worker in stats-worker/ stores the notes and serves a private dashboard with GitHub downloads alongside.
2026-10-05 01:21:16 -07:00
Seb3thehacker b6bd6497b2 repeat the last video frame when the screen goes still
Decoders that show a frame only once the next arrives held the last change until
something else moved, so a closing menu looked a second late on LIVI.
2026-10-04 20:10:49 -07:00
Seb3thehacker 0eeb486d88 back buttons on every screen, exit to the car's own UI, smoother link
Every screen reached from Home has a themed back button in its header. A new Exit tile
asks the car to show its own interface, as Android Auto's does. All writes to the car
now go through one thread, so reading never waits on a write; LIVI no longer stalls
for two seconds at a time. Touches go to the front of the main thread's queue.
2026-10-04 19:57:43 -07:00
Seb3thehacker 1adeb6f7e1 wait for video acks instead of dropping frames
With one frame allowed in flight (LIVI), dropped frames forced keyframe repairs, which
caused more drops. LIVI went from 345 forced keyframes a minute to none.
2026-10-04 14:35:54 -07:00
Seb3thehacker bc0d6302d3 fix touch on head units with a second screen
LIVI lists an empty input for its cluster display before the real touchscreen, so every
tap was ignored. Pick the video and input that belong to the main screen.
2026-10-04 14:24:06 -07:00
Seb3thehacker 1341b4a08a fix LIVI not connecting
The head unit speaks first and gave up while the phone spent a second unlocking its
certificate before reading. Read straight away and unlock the certificate alongside it,
and keep it unlocked between connections.
2026-10-04 14:07:35 -07:00
Seb3thehacker c6b7f0e178 voice reply keeps listening for cancel, mic asked for in setup
The card now closes after no, cancel or no answer instead of popping back up. The
setup guide asks for the microphone even with car audio off, and its adb commands use
the installed package name. Sensor events are logged once per type plus a count.
2026-10-04 13:40:09 -07:00
Seb3thehacker d3592457cf hold marker in the theme engine, status badges on app icons
Any control with a press-and-hold action now shows it: a corner peel on Tactile and
Keycap that opens while held, a dot on Flat. Working/partial/broken badges moved onto
the app icon. Spotify and Deezer are marked partial since they need opening on the phone.
2026-10-04 13:36:11 -07:00
Seb3thehacker 024850bf48 fix car sensor channel, mark Metrolist working
Sensors live in service field 2, not 5 (that's the mic), so the channel never opened.
Message ids were also one off and the start request was missing min_update_period.
2026-10-02 15:51:15 -07:00
Seb3thehacker 96d16d048c reccomend apps to install during setup 2026-10-02 15:28:54 -07:00
Seb3thehacker 1b44d2d798 feature update and screenshots 2026-10-02 13:33:52 -07:00
Seb3thehacker e4725233dd Readme tagline update 2026-10-02 11:44:10 -07:00
Seb3thehacker 913e4af133 song search 2026-10-02 11:43:28 -07:00
Seb3thehacker 07d164ac74 voice reply improcement 2026-10-01 21:24:42 -07:00
Seb3thehacker 01a7ae1930 v0.1.10-alpha 2026-10-01 20:48:10 -07:00