Reframe homepage for multi-vehicle scope
Homepage copy was BMW-centric — now reflects that K-Line supports 400+ vehicles across BMW, Ford, Honda, Toyota, VW, and more. Primary CTA changed from Circuit Design to Vehicle Compatibility. Added regional LinkCard grid with anchors to vehicle-compatibility page.
This commit is contained in:
parent
612a5e94de
commit
6efaaa4ac4
@ -1,16 +1,16 @@
|
|||||||
---
|
---
|
||||||
title: K-Line
|
title: K-Line
|
||||||
description: BMW I/K-Bus + OBD-II K-line interface for ESP32 with PC817 optocoupler isolation
|
description: "ESP32 K-line interface for automotive diagnostics and module control — BMW I/K-Bus, Ford, Honda, Toyota, VW, and 400+ vehicles"
|
||||||
template: splash
|
template: splash
|
||||||
hero:
|
hero:
|
||||||
tagline: Multi-protocol automotive bus library for ESP32. Optocoupler-isolated hardware interface with SPICE-validated circuit design.
|
tagline: "ESP32 interface for automotive K-line buses. Read diagnostics, control modules, and talk to ECUs across hundreds of vehicles — with optocoupler isolation and SPICE-validated circuit design."
|
||||||
actions:
|
actions:
|
||||||
|
- text: Vehicle Compatibility
|
||||||
|
link: /reference/vehicle-compatibility/
|
||||||
|
icon: right-arrow
|
||||||
- text: Circuit Design
|
- text: Circuit Design
|
||||||
link: /reference/circuit-design/
|
link: /reference/circuit-design/
|
||||||
icon: right-arrow
|
icon: right-arrow
|
||||||
- text: Firmware Architecture
|
|
||||||
link: /reference/architecture/
|
|
||||||
icon: right-arrow
|
|
||||||
variant: minimal
|
variant: minimal
|
||||||
- text: Source Code
|
- text: Source Code
|
||||||
link: https://git.supported.systems/warehack.ing/i-k-bus-board
|
link: https://git.supported.systems/warehack.ing/i-k-bus-board
|
||||||
@ -18,38 +18,44 @@ hero:
|
|||||||
variant: minimal
|
variant: minimal
|
||||||
---
|
---
|
||||||
|
|
||||||
import { Card, CardGrid } from '@astrojs/starlight/components';
|
import { Card, CardGrid, LinkCard } from '@astrojs/starlight/components';
|
||||||
|
|
||||||
## What is this?
|
## Two protocols, one board
|
||||||
|
|
||||||
An ESP32-based interface board for talking to BMW's proprietary body/instrumentation bus (I-Bus and K-Bus) and OBD-II K-line diagnostic ports. Uses PC817 optocouplers for galvanic isolation from the vehicle's 12V electrical system.
|
K-Line is an ESP32 library and hardware interface for the single-wire buses found in cars from the mid-90s through late 2000s. It handles two distinct protocols that share the same physical layer:
|
||||||
|
|
||||||
The firmware library — **K-Line** — handles both protocols through a shared transport layer, with separate protocol handlers for BMW's multi-master bus and OBD-II's master/slave diagnostic sessions.
|
- **BMW I/K-Bus** — the body control network on E31 through E87 chassis. Lights, locks, windows, climate, steering wheel controls, instrument cluster. Multi-master, 9600 baud.
|
||||||
|
- **OBD-II K-line** — the ISO 9141 / ISO 14230 diagnostic protocol used by Ford, Honda, Toyota, VW, Chrysler, and dozens more. Read PIDs, clear DTCs, talk to ECUs. Master/slave, 10400 baud.
|
||||||
|
|
||||||
|
The hardware uses PC817 optocouplers for galvanic isolation between the ESP32 and the vehicle's 12V electrical system. The circuit is SPICE-validated — every signal path simulated in LTspice before soldering.
|
||||||
|
|
||||||
<CardGrid>
|
<CardGrid>
|
||||||
<Card title="Two Protocols, One Board" icon="setting">
|
<Card title="400+ Vehicles" icon="open-book">
|
||||||
BMW I/K-Bus (9600 baud, 8E1, XOR checksum) and OBD-II K-line (10400 baud, 8N1, mod256 checksum) share the same physical layer but have completely different framing and initialization. K-Line handles both.
|
BMW, Ford, Honda, Toyota, VW, Audi, Mercedes, Volvo, Subaru, Mazda, Hyundai, Kia, Chrysler, and more. Any car with ISO 9141 or KWP2000 diagnostics.
|
||||||
</Card>
|
</Card>
|
||||||
<Card title="SPICE Validated" icon="approve-check">
|
<Card title="SPICE Validated" icon="approve-check">
|
||||||
Every circuit path simulated in LTspice before soldering. Three parameter sweeps identified the R2=220 ohm fix for 3.3V ESP32 compatibility. Six netlists document the full operating envelope.
|
Eight netlists cover both signal paths, three parameter sweeps, and two bus impedance scenarios. The R2=220 ohm fix for 3.3V ESP32 was found through simulation, not guesswork.
|
||||||
</Card>
|
</Card>
|
||||||
<Card title="Code Reviewed" icon="warning">
|
<Card title="Reviewed and Hardened" icon="warning">
|
||||||
Two rounds of code review caught concurrency bugs (64-bit torn reads, TX loopback race), protocol issues (UART pin detach no-op, timeout underflow), and missing safety checks. All fixed.
|
Two code review rounds caught ISR race conditions, protocol framing bugs, and timeout underflows. Defensive design throughout — checksums validated, echo verified, sessions kept alive.
|
||||||
</Card>
|
</Card>
|
||||||
<Card title="Three ESP32 Variants" icon="laptop">
|
<Card title="Three ESP32 Variants" icon="laptop">
|
||||||
Builds for ESP32 (Xtensa), ESP32-C3 (RISC-V), and ESP32-S3. PlatformIO project with per-board pin overrides.
|
Builds for ESP32 (Xtensa), ESP32-C3 (RISC-V), and ESP32-S3. PlatformIO project with per-board pin configuration.
|
||||||
</Card>
|
</Card>
|
||||||
</CardGrid>
|
</CardGrid>
|
||||||
|
|
||||||
## Supported Vehicles
|
## Supported vehicles
|
||||||
|
|
||||||
**BMW I/K-Bus:** E31 (8 Series), E38 (7 Series), E39 (5 Series), E46 (3 Series), E52 (Z8), E53 (X5), E83 (X3), E85 (Z4), E87 (1 Series)
|
<CardGrid>
|
||||||
|
<LinkCard title="BMW I/K-Bus" description="E31, E38, E39, E46, E52, E53, E83, E85, E87 — plus MINI R50/R52/R53 and Range Rover P38A" href="/reference/vehicle-compatibility/#bmw-i-bus-and-k-bus" />
|
||||||
|
<LinkCard title="European" description="Ford Fiesta/Focus/Mondeo, VW Golf/Passat, Audi A4/A6, Mercedes C/E-Class, Volvo S60/V70, Fiat, Alfa Romeo, Peugeot, Renault, Opel" href="/reference/vehicle-compatibility/#k-line-by-manufacturer" />
|
||||||
|
<LinkCard title="Japanese" description="Honda Civic/Accord, Toyota Corolla/Camry, Nissan Altima/Sentra, Mazda3/MX-5, Subaru Impreza/Legacy, Mitsubishi Lancer" href="/reference/vehicle-compatibility/#k-line-by-manufacturer" />
|
||||||
|
<LinkCard title="Korean and American" description="Hyundai Elantra/Sonata, Kia Optima/Sorento, Chrysler/Dodge/Jeep — Wrangler, Cherokee, Ram, Neon, PT Cruiser" href="/reference/vehicle-compatibility/#k-line-by-manufacturer" />
|
||||||
|
</CardGrid>
|
||||||
|
|
||||||
**OBD-II K-line:** Any vehicle using ISO 9141-2 or ISO 14230-4 (KWP2000) diagnostic protocols
|
## Project status
|
||||||
|
|
||||||
## Project Status
|
Hardware circuit is SPICE-validated. Firmware builds clean across all three ESP32 environments. Next: breadboard prototype, loopback testing, and vehicle testing on BMW E46 K-Bus and Ford Fiesta K-line.
|
||||||
|
|
||||||
Hardware circuit is SPICE-validated. Firmware builds clean across all environments. Next steps: breadboard prototype, loopback testing, and vehicle testing.
|
|
||||||
|
|
||||||
## Attribution
|
## Attribution
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user