Skip to content

thatdevsherry/dashuki

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dashuki

Graphical dashboard for my beloved suzuki.

Successor to suzui-rs.

Written in C, using raylib for the GUI.

Note: Still a WIP, but is already running live in my car in place of suzui-rs.

screenshot

simulation.mp4

First look on YT

Main workflow

# Set up `.env` from `.env.sample`.
# For local run, modify DATA and SETTINGS path to some dir.
# Buildroot var required only for cross-compile.
cp .env.sample .env

# Create PTY using `socat`
socat -d -d pty,raw,echo=0 pty,raw,echo=0

# Run simulator from my old prototype (has some changes to ignore baudrate on PTY)
uv run python sim.py /dev/pts/{MASTER} --echo

# Run on PC for local dev
make debug DEVICE=/dev/pts/{SLAVE}

# Run on PC with actual VAG KKL cable (e.g. ttyUSB0)
make debug DEVICE=/dev/ttyUSB0

# Cross-compile arm64 binary using buildroot cross-compiler toolchain & sysroot
make pi

Phase 1 (complete)

Feature parity with suzui-rs.

  • Engine Speed
  • Desired idle
  • ISC flow duty
  • Inj. pulse width
  • Ignition advance
  • IAT
  • ECT
  • Voltage-mapped Throttle position
  • Throttle angle
  • MAP
  • Baro
  • Calc. load
  • Battery voltage
  • Vehicle speed
  • Flags (EL, AC, PSP, RAD)
  • Instant fuel use
  • Instant fuel average
  • Trip fuel used
  • Trip fuel average
  • Trip distance
  • Reset trip (by toggling EL a few times)

Goodies that weren't present in suzui-rs:

  • Odometer
  • Menu (keyboard/controller control)

Menu (WIP)

  • Toggle diag params
  • Toggle fuel avg unit (km/L, L/100km)
  • Reset trip
  • Toggle RPM/idle numbers
  • DTC read
  • DTC clear
  • Actuate ISC
  • Actuate fixed spark

Phase 2

Hold your horses. Polish phase 1 first (animations, menu, DTCs, C code quality etc).

AI Notice

No claude code, no {INSERT_TRENDING_SLOP_MACHINE_HERE}. All code is brain-generated.

AI use is limited to web chat interface. Asked during explorations and pointers to concepts for further reading.

No "skim generated code; good to go".

AI is nice for exploration. It told me I could utilise buildroot for cross-compiling. That's good. Adding slop is not.

About

Graphical dash for my Suzuki, works over Suzuki Serial Data Line

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Contributors