Giter Site home page Giter Site logo

edc15-eoi's Introduction

edc15-eoi

This is a simple tool I created to be able to easily tell the precise time of End of Injection event in PD TDI engines.

Screenshot of the application

Getting started

  1. Download & install the latest version of Python from: https://www.python.org/downloads/
  2. Download this repository as a zip and open a console window in that directory
  3. Run pip install -r requirements.txt to install the dependencies
  4. Run py eoi.py to test if the program's working

Usage

Run the following commands to get started quickly:

git clone https://github.com/krook1024/edc15-eoi.git
cd edc15-eoi
python -m pip install -r requirements.txt
py ./eoi.p -h

Listing available codeblocks

Let's imagine we have a file called current.bin, in that case we can run

py eoi.py -f current.bin -l

to list the avaiable codeblocks. The output will look something like this:

 Available codeblocks in current.bin
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚   CodeBlock ID โ”‚ Start   โ”‚ End     โ”‚ ID location   โ”‚ Gearbox type   โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚              2 โ”‚ 0x717ee โ”‚ 0x817ed โ”‚ 0x77a50       โ”‚ Manual         โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

Showing actual duration & EOI

After finding out the codeblock ID, we can go ahead and run the program like this:

py eoi.py -f current.bin -c 2 

and it will show all the necessary maps and calculations.

If you want to also show the tables in a graphical view, you can use

py eoi.py -f current.bin -c 2 -p

Notes

  • You can run py eoi.p -h to print the documentation of each argument.
  • The order of the arguments don't matter, as long as all required arguments are set.

edc15-eoi's People

Contributors

krook1024 avatar

Stargazers

 avatar  avatar  avatar Joshua Baldwin avatar

Watchers

 avatar

edc15-eoi's Issues

Working only on specific EDC15P bins

I was able to load only a specific set of BINs
Apart from CURRENT.bin (AJM bundled in repo) it works on original Golf IV AJM BIN (EDC15P+) but everything else ended up with error below.

Traceback (most recent call last):
File "/home/noveria/edc15-eoi/./eoi.py", line 3, in
from maps import soi, selector, durations
File "/home/noveria/edc15-eoi/maps.py", line 5, in
soi = Map(
File "/home/noveria/edc15-eoi/edcmap.py", line 58, in init
self.load()
File "/home/noveria/edc15-eoi/edcmap.py", line 87, in load
line.append(self.fun(unp(self.file.read(2))))
File "/home/noveria/edc15-eoi/edcmap.py", line 11, in unp
return unpack("<h", byte)[0]
struct.error: unpack requires a buffer of 2 bytes

I am attaching some of the BINs I was using for testing
TestBINs.zip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.