Code Monkey home page Code Monkey logo

volvo_linbus's Introduction

VOLVO LIN BUS READER

Simple Arduino + MCP2004 based reader. Reads steering wheel keys via LIN bus.

Part of retrofitting of Android Auto to Volvo RTI project.

Tested with Volvo V50 2006.

Scheme

Arduino UNO + MCP2004 LIN transceiver.

Connector

Connection to LIN bus can be found behind Volvo Infotainment Control Module (ICM).

Video instructions how to remove stereo from Volvo V50 floating dash:
https://www.youtube.com/watch?v=Xo5NpBt04qs

LIN Message

A message on LIN is called a frame and consist of the following parts:

  1. Synchronisation interrupt. Used to wake slave nodes that are in sleep mode. Synchronisation field. The synchronisation field helps slave nodes to synchronise with their master node's clock frequency, in order for messages sent to be received correctly.
  2. Identification field. Contains information about the contents of the message. All nodes can read and respond to a message, yet only one node has the right to send a response to the message. Which node has the right to answer the message (send response data) is evident from the identifier.
  3. Data information. The data sent can be two to eight bytes long. The data information is sent with the least significant bit first.
  4. Checksum. The checksum is a way for slave notes to check whether the received message has been transferred correctly, or if any disturbance can have occurred during the transmission which has corrupted the data. If an error has occurred in a message during transmission from the master node to the slave node, i.e. the checksum calculated by the slave node does not correspond, the slave node will erase the message and await the next message sent from the master node.

References

Credits

Frame checksum calculation based on Arduino LINBUS Gadgets code.

volvo_linbus's People

Contributors

laurynas 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

Watchers

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

volvo_linbus's Issues

lin bus isue

Hello.
Did you know that icm is master of lin?
I trying different chip but no success

Connect it with Android Radio

Hello there,

this is an interesting project I think! Nice Results.
I have equipped my V50 with an Android Radio connected via AUX cable to be able to use Apple CarPlay in my 2012 Volvo. Problem is I can't use the Steeringwheel controls on the back because they are not connected.

Do you think I can make it work via your solution? So connect the Lin cable to MCP2004 to maybe ESP8266 and then via USB to the Android Radio. What do I need for the Radio to recognize the inputs? Can I make the ESP8266 with your code will be recognized as keyboard or how does this work?

Hope you can give me some advices.

Greetings
Erik

Break read

Hi,

I see in your code, you don't read the 13 bits "break" in LIN frame, how does it work then?

Thanks

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.