Skip to content

elatorre20/vstrom-ecu-reader

Repository files navigation

2006 Vstrom Gear Indicator and ECU interface

This is a device that uses the diagnostic interface on a 2006 Suzuki Vstrom DL650 to provide a gear indicator. Although the exact setup is specific to my bike (it would probably also work on other year Vstroms and SV650s), it could be fairly easily modified to work with most motorcycles of a similar vintage, or any vehicle that supports the K-Line/KWP2000 interface.

Inspiration/Motivation

I came across this project on google and wanted to install it on my motorcycle. However, after looking into the technical aspects, I figured that the $50 sparkfun ELM327 board the author used was not necessary and could be eliminated with a few transistors a bit more code. I also did not like the display setup, so I wanted to change that as well.

Important links

Technical Outline

The main control module is an Arduino pro micro. You will have to provide 5v regulated power. There is some code in the repo from an earlier version in which I was going to use a Waveshare RP2040 1.28" LCD module, but it is unfinished and does not work. The timer interrupt portion used for scheduling is specific to ATMega32u4-based Arduinos and clones, as it uses the register names and interrupt handler directly. This saves 2kb of program memory compared to using the generic Arduino timer interrupt library, but may require some tweaking for other Arduino compatible boards. As K-Line communication is just a half-duplex UART, an ELM327 is not necessary and the Arduino can communicate with it directly through the Serial1 peripheral. The Arduino RX/TX are connected to the K-Line through a level shifter circuit. You can use whatever you like to do this, I used a circuit very similar to that described in the links, however be careful that you must not invert the output on the K-Line relative to the Arduino serial. My final circuit diagram is as shown. The display is an SSD1306 OLED module mounted inside the RPM dial. Like in the second video, I also added a temperature display. I used a DHT11 sensor because I had one lying around, but you could easily remove this and just used the gear display function by commenting out the associated lines.

the circuit diagram

Acknowledgement/Citations

I did not copy/paste any code in this project, but I drew heavily from all of these sources.

[1] Artur Langer. 2017. Reading OBD2 data without ELM327, part 2 – K-Line. Retrieved from https://m0agx.eu/reading-obd2-data-without-elm327-part-2-k-line.html [2] Bryan Cockfield. 2018. Adding Upgrades to a Stock Motorcycle. Retrieved from https://hackaday.com/2018/09/11/adding-upgrades-to-a-stock-motorcycle/ [3] Aaron Turner. 2017. Suzuki SV650 SDS Wiki. Retrieved from https://github.com/synfinatic/sv650sds/wiki [4] Scotty Austria. 2016. V-Strom Gear Position Indicator GPI. Retrieved from https://www.youtube.com/watch?v=Gqyt9sBvENI&ab_channel=ScottyAustria [5] motomojoDE. 2018. Suzuki Vstrom DL650 DIY Gear Indicator (2011). Retrieved from https://www.youtube.com/watch?v=plvlS--2Huw&ab_channel=motomojoDE

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages