Code Monkey home page Code Monkey logo

libretuner's Introduction

WARNING:

This project is no longer maintained.

LibreTuner

Open source engine tuning software for Mazda platforms

Interested in contributing? Join the Discord server

Screenshots

Main Window

Supported vehicles

  • 2005-2007 Mazdaspeed6 / Mazda 6 MPS / Mazdaspeed Atenza
  • MX-5 NC (Only editing)

Supported Interfaces

  • J2534 interfaces with CAN support.
  • OBDLink SX
  • ELM327 devices (but many cheap knock-offs have been known to have issues)
  • SocketCAN

Planned support

  • Mazdaspeed3 (Gen 1 & 2)
  • First Generation RX-8

Layout

All interesting code lives at lib/LibLibreTuner.

Building

Requirements

  • Qt5
  • CMake 3.10 or higher
  • A compiler that supports C++17

Build instructions

Linux

  1. git clone https://github.com/Libretuner/LibreTuner.git
  2. cd LibreTuner
  3. git submodule update --init --recursive
  4. cd LibreTuner
  5. cmake .
  6. make
  7. ./LibreTuner

Windows

TODO. (Use Qt Creator with MSVC)

libretuner's People

Contributors

jcmnn avatar sa12123 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

libretuner's Issues

Implement datalogging

  • Datalogging window
  • Window for analyzing previous logs

Add PIDs for these platforms:

  • Mazdaspeed6
  • Mazdaspeed3

Make Logger thread safe

If a line is added to the log from another thread, it could block the gui thread. Logger should be changed to emit an appended() signal so Qt can handle threads with the slot & signal system.

Poke: is this alive? :)

Just wondering... :) rusEFI community is looking for an open source tuning software to adopt for rusEFI

Build Instructions Linux Debian

Unable to build at first pass:

root@jakka351-debian-gnu-linux:~/Downloads/LibreTuner#     cd LibreTuner
bash: cd: LibreTuner: No such file or directory
root@jakka351-debian-gnu-linux:~/Downloads/LibreTuner#     cmake .
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:10 (include):
  include could not find load file:

    /home/agl/Downloads/LibreTuner/conanbuildinfo.cmake


CMake Error at CMakeLists.txt:11 (conan_basic_setup):
  Unknown CMake command "conan_basic_setup".


-- Configuring incomplete, errors occurred!
See also "/home/agl/Downloads/LibreTuner/CMakeFiles/CMakeOutput.log".
root@jakka351-debian-gnu-linux:~/Downloads/LibreTuner#     make
make: *** No targets specified and no makefile found.  Stop.
root@jakka351-debian-gnu-linux:~/Downloads/LibreTuner#     ./LibreTuner
bash: ./LibreTuner: No such file or directory
root@jakka351-debian-gnu-linux:~/Downloads/LibreTuner# 

Going to try simplified branch + few others

Restructure datalink users

Downloaders, flashers, dataloggers, and diagnostics should accept a PlatformLink rather than their required interfaces to abstract initialization. They should throw an exception if the required interface could not be created. This also allows for download/flash methods to use more than one interface.

Enhance tune editor

The following features should be added to the tune editor at some point:

  • Filling a set using an expression - useful for creating MAF calibrations
  • Exponential Regression - useful for determining the current MAF calibration voltage curve

Trouble building on macOS (10.13.1)

After installing all the essential dependencies such as Boost and qt5 I started to get errors for the modules in the lib directory so I manually downloaded those repo's from GitHub since the googletest and GSL folders were empty from their respective links on GitHub and ran cmake .

I got the following warnings:

CMake Warning at /usr/local/Cellar/cmake/3.7.2/share/cmake/Modules/FindBoost.cmake:761 (message):
  Imported targets not available for Boost version 106700
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.7.2/share/cmake/Modules/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.7.2/share/cmake/Modules/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:10 (find_package)


CMake Warning at /usr/local/Cellar/cmake/3.7.2/share/cmake/Modules/FindBoost.cmake:761 (message):
  Imported targets not available for Boost version 106700
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.7.2/share/cmake/Modules/FindBoost.cmake:865 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.7.2/share/cmake/Modules/FindBoost.cmake:1454 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:10 (find_package)

Regardless of the warnings, it created a Makefile and I ran the make command and got the following error:

CMake Warning (dev) at copy-headers.cmake:5 (configure_file):
  configure_file called with unknown argument(s):

   Research/LibreTuner/lib/GSL/gsl/ECU

This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Error: File /Users/peter/Desktop/ECU does not exist.
CMake Error at copy-headers.cmake:5 (configure_file):
  configure_file Problem configuring file


make[2]: *** [lib/GSL/gsl/gsl_inline.h] Error 1
make[1]: *** [lib/GSL/CMakeFiles/copy-headers.dir/all] Error 2
make: *** [all] Error 2

Sorry if this issue since a bit confusing, tried by best to give the most detailed description I could. Really appreciate the work you're trying to distribute to the community, I can't wait to get my hands on the codebase and contribute!

Cheers,
Peter

Project files

ROM and tune files are greatly in need of restructuring.

Issues with the current system:

  • Tunes cannot be easily transferred to different systems. Tunes depend on their base ROMs to be in the libretuner directory, so both the ROM and tune need to be transferred.
  • Two ROMs cannot share the same ID.

They could be combined into project directories where ROMs are the "base" and tunes can be created within the ROM. Definitions could also be added to the project.

Add Mazdaspeed definitions

Each firmware version will need to be collected and added to this list for analysis.

Mazdaspeed6:

  • L38K
  • L3M7

Mazdaspeed3:
Unknown

CX-7:

  • L37L

Organize sources

As the project grows larger, the source files are becoming a mess. They should be organized into sub-directories and modules should have their own namespaces.

I am organizing components into a new library in lib/LibLibreTuner on the intolib branch. All database-related code will go in the main sources as they're closely tied to Qt.

Rewrite status:

  • Tune editor
  • Datalogger
  • Diagnostics
  • Downloader
  • Reprogrammer
  • Session scanner

Put opened tables into a tab view

Instead of opening a window for each table and graph, put them in tab views. Graphs will have their own tabs. There should be a way to split the tab views to view multiple tables/graphs simultaneously.

README Images

This issue is for uploading images for use in the README without cluttering the main branch.

main

2dtable

image

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.