Skip to content

Carputer-project/carputer-pcb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Carputer PCB — Combined ESP32 Sensor & Body Controller Board

PCB Render

Single 2-layer PCB with dual Feather ESP32s for the Carputer project. Designed for OBD1 vehicles (pre-1996, all makes) — taps into sensor voltages, switch signals, and diagnostic pins directly. No CAN bus required. CAN/OBD2 is an easy add — just a firmware update and an external CAN module (e.g. MCP2515 via SPI).

Overview

Feature Description
Board 160×120mm, 2-layer FR-4, through-hole assembly
MCUs 2× ESP32 DevKit V1 (sensor + body controller)
Power 12V automotive → DC-DC buck → 3.3V rail
Relay drivers 2× ULN2003A (DIP-16), 7 darlington pairs each
Connectors 3× WAGO 8-way for vehicle harness, 2-way for power

Two Modules on One Board

Slot Module Role IP Protocol
J5 Sensor ESP32 ECU tapping, door switches, DTC 192.168.4.20 (STA) UDP 5001/5002/5003
J6 Body ESP32 Relays, HVAC, joypad 192.168.4.1 (AP) TCP 5000

Circuit Sections

ECU Inputs (J5)

  • 6 voltage dividers (5.6K + 10K) — scale 0-5V ECU signals (MAP, coolant temp, TPS, speed, RPM, DTC) to ESP32 3.3V ADC
  • 2 sender pullups (120Ω to 3.3V) — fuel level, oil pressure
  • 4 digital inputs with 10K series resistors — door switches (D/P/T/H)
  • DTC read circuit — 2× 2N2222 transistors for TE1/TE2 control

Body Control Outputs (J6)

ULN2003A #1 ULN2003A #2
Door lock (GPIO 25) HVAC relay (GPIO 2)
Window up (GPIO 26) AC compressor (GPIO 4)
Window down (GPIO 27) Remote start (GPIO 5)
Interior light (GPIO 32) Fan speed 2 (GPIO 12)
Door chime (GPIO 33) Fan speed 1 (GPIO 18)

Joypad (J6)

  • 2× ADC channels (GPIO 36/Y, 39/X) — analog joystick
  • 5× digital buttons (GPIO 14, 16, 17, 22, 23) — SELECT, EXIT, etc.

PCB Files

File Description
sensormodule final.kicad_pro KiCad project
sensormodule final.kicad_sch Schematic
sensormodule final.kicad_pcb PCB layout
PCB_PLAN.md Full design plan
build_plan.md THT assembly build plan
product_description.md Product overview
voltage_divider_circuit.txt ECU voltage divider circuit & wiring
carputerpcb.png PCB render preview
*-Cu.gbr, *-Mask.gbr, *-Silkscreen.gbr Gerber files for fabrication
esp32_sensor_module_bom.csv Bill of Materials
Sample-BOM_JLCSMT.xlsx JLC SMT assembly BOM
generate_pcb.py Python PCB generation toolkit

Fabrication

Send Gerber files (sensormodule final-*.gbr + *job.gbrjob) to any PCB fab (JLCPCB, PCBWay, etc.). Board is 2-layer, 160×120mm.

Wiring

See voltage_divider_circuit.txt for ECU wiring diagram. Connectors use WAGO 8-way terminal blocks for vehicle harness interface.

System Architecture

This PCB integrates two ESP32 modules that communicate with the head unit software:

Component Firmware Repo Connects To Protocol
J5 — Sensor ESP32 esp32_sensor_module Carputer head unit UDP 5001 (sensor data), 5002 (commands), 5003 (DTC)
J6 — Body ESP32 esp32_body_controller Carputer head unit TCP 5000 (relay/audio commands)

The head unit can be either:

About

Combined ESP32 sensor + body controller PCB — KiCad project, Gerbers, schematics, BOM

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages