Giter Site home page Giter Site logo

elm327-bt's Introduction

There's not much here yet unfortunately :( I do hope to get around to adding some proper documentation at some point. Until that time, I have listed some important bits of information down below.

  • This board is designed around the ELM327 v2.1 and also compatible with v2.2. If you're going to use a newer firmware version, please check the changelog and / or compare its documentation to the v2.1 datasheet to check for compatibility.
  • The ELM327L is not pin-compatible with the ELM327, even though it has the same features in the same package. On the ELM327 (what this board is designed for) pin 6 can be pulled high or low to set the RS232 baud rate on powerup / reset. On the ELM327L there should be a capacitor (10uF tantalum or ceramic with low ESR, less than 5 Ohms) between pin 6 and GND. If you do pick the ELM327L I recommend you either replace the header with a capacitor footprint in the schematic and pcb layout or simply stick a capacitor in the header footprint during production.
  • I have built this design myself and it works properly, although so far I have only been able to test it with the ISO14230 protocol which uses the K-line and optionally the L-line for communication with the car.
  • The LP2951 (less current and shutdown capability) is a replacement for the 317L (as suggested in the ELM327 datasheet), but its logic is inverted. So after building the project you must send the following configuration commands to the ELM327 (this is a one-time thing): AT PP 12 SV 00 and AT PP 12 ON. Failure to do so will not do any damage, however SAE J1850 PWM (Ford) and SAE J1850 VPW (GM) communication will not work and may interfere with the car's communication bus.
  • When selecting a Bluetooth module, pay attention to its voltage levels. This pcb is designed to supply 5V to the module and has a voltage divider in the ELM327's TX line to communicate at 3V3. The reason for this seemingly odd design is that 5V power & data BT modules are few and far between, yet I wanted to avoid squeezing a 3V3 supply on the board just for the module. While a voltage divider in the ELM327's TX line is not as elegant as a proper level converter, it has worked well for me at a 38k8 baud rate (higher rates not yet tested).
  • On the same note, the BT module communicating at 3V3 to the ELM327's RX line is out-of-spec for the ELM327. Its RX input pin is configured to use Schmitt trigger waveshaping and therefore requires an input voltage between 2V9 (typical) and 4V (maximum) to register a HIGH input. So it can work and in my experience often does, but it's not exactly the most robust design choice. That would be to use a level converter circuit.
  • While on the subject of Bluetooth modules, I opted for Bluetooth version 2.0+EDR. Another widely available option is Bluetooth version 4.0BLE, but the BLE (Bluetooth Low Energy) part makes it less suited for this project. It's a protocol intended for short communications (like reading a temperature sensor once a minute), it's not designed with a continuous connection in mind. It's also not always supported by older devices. Consequently, you may have trouble connecting to a BLE module for this project, even when using a device with support for it.

If you have any questions or feedback, feel free to send me an email at [my Github username]@gmail.com.

elm327-bt's People

Contributors

spartelfant 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

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.