Skip to content
View Alifizz01's full-sized avatar

Highlights

  • Pro

Block or report Alifizz01

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Alifizz01/README.md

Alif Izzuwan: electrical engineering and electromobility

I build the tools I wish test benches came with. My B.Eng. in electrical engineering and electromobility at TH Ingolstadt ended with a thesis that reads a VW ID. Buzz's battery through the OBD-II gateway, and an internship on a hardware-in-the-loop test team showed me how much time engineers lose to missing tooling. Most of what is below comes from one of those two places: vehicle networks, battery systems, and the software and hardware that test them.

Automotive diagnostics & testing

VW ID. Buzz battery over UDS · bachelor thesis
The MEB gateway hides the BMS from the OBD-II port, so a CANedge2 logger asks instead of listens. 60 identifiers tested, three encodings the public list gets wrong, and a desktop app for logger profiles and MF4 decoding.
CAN UDS Python LaTeX
XiLoop · X-in-the-loop test bench
One test plan from a Python prototype to C firmware to a real board: SiL, PiL and HiL with the same requirements, a desktop studio and a REST API.
Python C control HiL
BusBench · protocol workbench
Ten automotive and avionics protocols (CAN, UDS/ISO-TP, AUTOSAR, DoIP, ARINC 429, MIL-STD-1553 …) implemented twice, in C and in Python, and tested against each other. Fuzzed in CI.
C Python libFuzzer
ToolBridge · APIs for GUI-only tools
Reads a Windows engineering tool (an ECU flasher, a calibration program) through UI Automation and .NET metadata and generates a Python package and REST API for it. No pixel clicking.
Python UI Automation .NET
BenchPulse · HiL lab dashboard
Which bench PC is free, who is on the busy ones over Remote Desktop, and when you can book it. One browser page for the whole lab, no install for colleagues.
Python Windows API SQLite
PiLink · verified PC ↔ USB transfer box
A Raspberry Pi between a locked-down PC and a USB stick: the PC only speaks FTP, every copy is checksum-verified before it says "done".
Python Raspberry Pi
CANsleuth · CAN reverse engineering
Hand it a CAN log: it finds fields, counters, CRCs (AUTOSAR E2E included) and exact signal encodings, and shows the evidence. Recovers all five encodings from my thesis's raw UDS data.
Python CAN UDS DBC

Battery & powertrain

GAIA · BMS simulator
PyBaMM electrochemistry for the cells and a real BMS on top: SOC estimation, protection, balancing, contactors. Fault injection, a desktop studio and Simulink blocks.
Python PyBaMM MATLAB/Simulink
AETHER · electric propulsion
GAIA's sibling for what the battery drives: give it a throttle and get the whole chain, from where the shaft settles to where every watt went.
Python modelling

Hardware

CAN-FD hardware timestamper · FPGA
A two-channel CAN-FD receiver in VHDL that timestamps every frame in hardware on one shared clock. Open toolchain rebuilt in CI, with a live capture viewer.
VHDL Lattice ECP5 CAN-FD
Automotive PCB portfolio · Altium
Three CAN-FD tools taken end to end: requirements, schematic, layout, fab outputs. A sniffer HAT for the Pi Zero 2 W, a handheld OBD-II test runner, and an isolated FPGA timestamper board.
Altium Designer CAN-FD Raspberry Pi

Desktop

Floatie · desktop fences for Windows
Live, filtered views of your Desktop and Downloads that stay where you put them, plus a Tidy with preview and undo. About 10 MB of RAM idle.
C# WPF Win32

Toolbox

Python C C# VHDL MATLAB Altium CAN LaTeX GitHub Actions

Pinned Loading

  1. BusBench BusBench Public

    Ten automotive & avionics protocols (CAN, UDS, AUTOSAR, ISO 26262, DoIP, ARINC 429, MIL-STD-1553, ARINC 653, DO-178C, FDR) in C and Python, cross-tested, fuzzed, self-traced, with a desktop workbench.

    Python

  2. CANedge2-UDS-implementation-Thesis CANedge2-UDS-implementation-Thesis Public

    Bachelor thesis (THI 2026): reading the VW ID. Buzz battery over OBD-II with UDS requests from a CANedge2 logger, plus CANedge Studio for logger profiles and MF4 decoding.

    Python

  3. fpga-can-timestamper fpga-can-timestamper Public

    Two-channel CAN-FD receiver in VHDL with hardware timestamping at the start-of-frame edge. Simulated, synthesised and timing-closed for a Lattice ECP5, verified end to end in CI.

    VHDL

  4. GAIA GAIA Public

    Battery management system simulator: PyBaMM electrochemistry for the cells, a real BMS on top (SOC, protection, balancing, contactors), a desktop studio and MATLAB/Simulink blocks.

    Python

  5. ToolBridge ToolBridge Public

    Generate a Python + REST API for Windows tools that have none (ECU flashers, calibration software, configurators) from their GUI and DLLs. No AI, no pixel matching.

    Python

  6. XiLoop XiLoop Public

    X-in-the-loop test bench: one test plan from a Python prototype to C firmware to a real board, with a desktop studio and a REST API.

    Python