diff --git a/CARS.md b/CARS.md new file mode 100644 index 0000000..3a8c992 --- /dev/null +++ b/CARS.md @@ -0,0 +1,49 @@ +# Cars + +Drivers who share usage notes tell us which cars Gearslip works in. This list comes from +those notes, and from our own testing. A car shows up here once Gearslip has reached its +screen at least once. + +The year is the one the car reports. Some cars report the year of the head unit instead, +and some don't say. + +## Works + +| Car | Year | Head unit | +|---|---|---| +| Audi | | MIB2+ (Alpine) | +| Audi | | Harman | +| Chevrolet, with myChevrolet | 2019, 2020, 2021 | myChevrolet | +| Chevrolet, with MyLink | 2017 | MyLink | +| Dacia | | Media Nav (LG ULC 4.1) | +| Dacia | | LG ULC 4.5 | +| Ford | 2018 | SYNC 3.0 (Panasonic) | +| Ford Fiesta | 2019 | SYNC 3.2 (Panasonic) | +| Ford Fusion | 2018 | SYNC 3.1 (Panasonic) | +| Jeep Cherokee | 2019 | Uconnect 8.4 (Delphi) | +| MG | 2019 | Desay SV | +| Ram 1500 | 2018 | Uconnect 8.4 (Panasonic) | +| Škoda | 2018 | MIB Standard2 (TechniSat) | +| Subaru Outback | 2020 | Denso | +| Toyota RAV4 | 2020 | Pioneer T1 | +| Volkswagen | 2018 | MIB Standard2 (Delphi) | +| Volkswagen | 2024 | ICAS3 | +| Volvo XC90 | 2022 | SPA Plus (Mitsubishi Electric) | +| Wuling | 2021 | Desay SV | +| [LIVI](https://github.com/f-io/LIVI), the open-source head unit | | | + +## Not working yet + +| Car | Year | What happens | +|---|---|---| +| Honda | 2016 | The connection drops before Gearslip reaches the screen. | +| Honda | 2019 | The connection drops before Gearslip reaches the screen. | +| Mitsubishi Attrage | 2020 | The connection drops before Gearslip reaches the screen. | + +Some cars reject Gearslip's certificate before they say what they are, so they can't appear +here by name. Most of these are from around 2020 or later. + +## Add your car + +Turn on usage notes in Gearslip's setup or Settings, and drive once. If your car is missing +or listed wrongly, open an issue. diff --git a/README.md b/README.md index c448b8e..ee9845d 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,8 @@ An Android Auto alternative built for everyone. ## Which cars work Most cars work. Starting around 2020, some cars added newer security standards that reject -Gearslip's certificate, and Gearslip can't run in those cars. +Gearslip's certificate, and Gearslip can't run in those cars. [CARS.md](CARS.md) lists the +cars drivers have confirmed. ## What Gearslip is diff --git a/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/AboutLinks.kt b/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/AboutLinks.kt index 943d58e..c2ea293 100644 --- a/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/AboutLinks.kt +++ b/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/AboutLinks.kt @@ -19,6 +19,7 @@ import androidx.compose.ui.platform.LocalContext internal object GearslipLinks { const val MATRIX = "https://matrix.to/#/!mf0_mgBd5KqKpc9FfX_wHp1jFCcwAtPrndIn_oGIyMk?via=matrix.org" const val SOURCE = "https://github.com/Seb3thehacker/gearslip" + const val CARS = "$SOURCE/blob/main/CARS.md" fun open(context: Context, url: String) { runCatching { diff --git a/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/HelpScreen.kt b/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/HelpScreen.kt index c34ec5a..f2152b9 100644 --- a/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/HelpScreen.kt +++ b/gearslip/src/main/java/app/seb3thehacker/gearslip/ui/HelpScreen.kt @@ -28,6 +28,7 @@ import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp @@ -97,6 +98,7 @@ private val USB_AUDIO = listOf( fun HelpScreen(onBack: () -> Unit, onRequestCallScreening: () -> Unit) { val car = remember(onRequestCallScreening) { inTheCar(onRequestCallScreening) } val usb by CarSettings.pipeAudio.collectAsState() + val context = LocalContext.current Scaffold( containerColor = MaterialTheme.colorScheme.background, @@ -125,8 +127,12 @@ fun HelpScreen(onBack: () -> Unit, onRequestCallScreening: () -> Unit) { "Most cars work. Starting around 2020, some cars added newer security " + "standards that reject Gearslip's certificate, and Gearslip can't run in those cars.", style = MaterialTheme.typography.bodyLarge, - modifier = Modifier.padding(16.dp), + modifier = Modifier.padding(start = 16.dp, end = 16.dp, top = 16.dp), ) + FilledTonalButton( + onClick = { GearslipLinks.open(context, GearslipLinks.CARS) }, + modifier = Modifier.padding(16.dp), + ) { Text("See the full list") } } Steps("Before your first drive", FIRST_DRIVE) Steps("In the car", car)