GithubHelp home page GithubHelp logo

opelbidproject's Introduction

OpelBidProject

This project is a work in progress. Interacting with a vehicle's CAN bus can be risky. Do note that you try this at your own risk.

Simple Raspberry Pi based retrofit project for Opel Bid Display. It gets data from LS-CAN (also known as GMLAN) over the OBD II connector. It shows the clock, air temperature, speed, rpm, engine temperature, fuel percentage, elapsed time, driven distance, average speed and open doors. Also, it flashes hazard lights when the gear is in reverse and it should close windows when the car is locked but these functions are not working properly for now. I sniffed some CAN ids myself but most of them are from this repo. Some data such as fuelCapacity is hard coded for Opel Zafira check them if your car is different model.

Python Dependencies

  • PyQt5
  • PySide2
  • python-can
  • easysettings
  • rpi-backlight

Hardware

  • Raspberry Pi 3B+
  • Waveshare 4.3-inch Capacitive Touch Display (DSI)
  • MCP2515 CAN bus module (should be modified to work with Raspbery Pi. check this repo to see how to modify and configure it.)
  • DC-DC 24V/12V to 5V 5A Buck Converter (one of these)
  • XY-J02 12 V Time Delay Relay Module (one of these)
  • Male OBDII Connector

Diagram

diagram

Assembling

Mounted Raspberry Pi directly to the display and added a metal back-cover which is cut in laser machine to attach cooler fan on then put it inside the box of original bid display. I didn't disconnect the bid display, removed all the parts except the board, secured it by wrapping it with something soft and heat resistant then put it somewhere inside the dashboard. We put the MCP2515 module somewhere more accessible to easily replace it when it fails, it's not in the place seen in the image below. The Buck converter and time delay relay are located in the glovebox in a box.

assembling assembling2 power

Could Be Improved

  • A real-time clock module could be helpful because GMLAN gives time data but it has not any date data and I needed to format the given time data in an ugly way. (see)
  • Boot time could be improved by building a custom Linux environment with buildroot. (see)
  • Sometimes cranking the engine causes brownout I guess due to the current decrease. Ups can be added to solve this problem.
  • I should quit dealing with electronics.

Screenshots

ss1 ss2 ss3 ss4 ss5

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.