User Tools

Site Tools


architecture

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
architecture [2026/08/09 18:29] – external edit 127.0.0.1architecture [2026/08/10 01:14] (current) – external edit 127.0.0.1
Line 10: Line 10:
  
   * **[[hardware:mainboard|Head unit]] (infotainment)** — a Freescale **i.MX6** running **Android 4.4.2**, paired with a **Renesas RL78** MCU. The SoC runs the UI; the MCU is the gatekeeper to the vehicle. They talk over a serial **UART**. This is the computer these pages mostly work on — see [[hardware|Hardware & OS]].   * **[[hardware:mainboard|Head unit]] (infotainment)** — a Freescale **i.MX6** running **Android 4.4.2**, paired with a **Renesas RL78** MCU. The SoC runs the UI; the MCU is the gatekeeper to the vehicle. They talk over a serial **UART**. This is the computer these pages mostly work on — see [[hardware|Hardware & OS]].
-  * **[[hardware:tbox|TBox]] (telematics)** — the always-on cellular gateway: a **Quectel AG35** LTE modem plus an **NXP S32K144** MCU. It reaches the head unit over **USB/IP**, taps the CAN bus, and used to phone home over cellular — see [[hardware:tbox|TBox teardown]] and [[connectivity|Connectivity]].+  * **[[hardware:tbox|TBox]] (telematics)** — the always-on cellular gateway: a **Quectel AG35** LTE module (which runs its own embedded **Linux** and hosts the telematics software) paired with an **NXP S32K144** MCU. The same split as the head unit repeats here — the Linux side never touches the CAN bus itself; it hands commands to the MCU over a **serial link**, and only the MCU is wired to the vehicle CAN transceiver. It reaches the head unit over **USB/IP**, and used to phone home over cellular — see [[hardware:tbox|TBox teardown]] and [[connectivity|Connectivity]].
   * **[[canbus|Vehicle CAN bus]]** — the shared nervous system. The real ECUs live here: **VCU** (vehicle control), **BMS** (the HV battery), **BCM** (body), **HVAC**, **TPMS**, and more.   * **[[canbus|Vehicle CAN bus]]** — the shared nervous system. The real ECUs live here: **VCU** (vehicle control), **BMS** (the HV battery), **BCM** (body), **HVAC**, **TPMS**, and more.
   * **Displays** — four panels, but only two are driven by the head unit: the **centre touchscreen** (LVDS) and the **right driver panel** (HDMI). The **main instrument cluster** and left panel are a **separate ECU** that reads the CAN bus directly — the head unit cannot draw on them.   * **Displays** — four panels, but only two are driven by the head unit: the **centre touchscreen** (LVDS) and the **right driver panel** (HDMI). The **main instrument cluster** and left panel are a **separate ECU** that reads the CAN bus directly — the head unit cannot draw on them.
Line 34: Line 34:
  
   * The **instrument cluster** is its own ECU — it //displays// values (SoC, outside temperature, warning lamps) that other modules broadcast. If the module feeding it goes quiet, a value can look **stuck** on the last/substituted reading.   * The **instrument cluster** is its own ECU — it //displays// values (SoC, outside temperature, warning lamps) that other modules broadcast. If the module feeding it goes quiet, a value can look **stuck** on the last/substituted reading.
 +  * The car keeps its **general-purpose computers one hop away from the live CAN bus** — twice over. The head unit's Android side and the TBox's Linux side both talk to the vehicle only through a dedicated microcontroller (RL78, S32K144) sitting between them and the wire. Neither general-purpose OS has a direct CAN connection of its own.
   * **Drive-enable is gated by an immobilizer** — the body control module and the motor controller authenticate each other at power-on, and only then can the car reach "Ready". This blocks //driving//, not diagnostics or preconditioning.   * **Drive-enable is gated by an immobilizer** — the body control module and the motor controller authenticate each other at power-on, and only then can the car reach "Ready". This blocks //driving//, not diagnostics or preconditioning.
   * Swapping any control module needs **online coding** with a manufacturer tool — the main obstacle to keeping an orphaned car serviceable.   * Swapping any control module needs **online coding** with a manufacturer tool — the main obstacle to keeping an orphaned car serviceable.
architecture.1786292981.txt.gz · Last modified: by 127.0.0.1