1. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Now a Download Plan!
  2. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  3. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules

Driving real gauges

Discussion in 'DIY peripherals' started by fastdruid, Jun 16, 2011.

  1. sarge351

    sarge351 New Member

    Joined:
    Jul 17, 2014
    Messages:
    1
    Balance:
    442Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    Arduino
    To: FastDruid

    Like you, I am interested in building a Real Car. Specifically, I am interested in building a Mazda RX-8. Furthermore, I want to do an LSX swap into the RX-8. After speaking with experts in the field, it sounds like the mechanical swap is fairly straightforward, but that the electronics is the difficult part. More specifically, the CAN bus and the gauges are the difficult part. After reading your thread, it sounds like you may be the World Expert in working with the RX-8 gauge cluster and the Mazda CAN bus.

    Would it be possible to get more help from you concerning an LSX conversion in a Mazda RX-8? I guess this would entail getting the GM E38 ECM for the LS3 motor to communicate with the Mazda Tachometer cluster through the CAN bus.
  2. fastdruid

    fastdruid New Member

    Joined:
    Jun 16, 2011
    Messages:
    22
    Balance:
    57Coins
    Ratings:
    +8 / 0 / -0
    I may be able to sell you a board to do that as I'm getting a batch of boards made up for CANBUS comms and have a MOQ of 5....

    I don't know what the tacho output on the GM E38 is but it'll either be pulse (5v or 12v) or CAN so should be pretty trivial.

    You're still going to lose the stability control etc though but you can at least stop the light from coming on.

    PM me your email address...
  3. tadythefish

    tadythefish Active Member

    Joined:
    Jul 8, 2009
    Messages:
    148
    Occupation:
    Process automation engineer
    Location:
    Slovenia
    Balance:
    695Coins
    Ratings:
    +95 / 1 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    does anyone have a arduino sketch for driving fiat or BMW gauges?
  4. Sigma

    Sigma New Member

    Joined:
    Feb 25, 2015
    Messages:
    2
    Balance:
    146Coins
    Ratings:
    +0 / 0 / -0
    Im building a cluster with the arduino and the canbus shield. hoping to run Assetto Corsa. could anyone help with this??
  5. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    18,603
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    133,079Coins
    Ratings:
    +10,256 / 48 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    • Friendly Friendly x 1
  6. Sigma

    Sigma New Member

    Joined:
    Feb 25, 2015
    Messages:
    2
    Balance:
    146Coins
    Ratings:
    +0 / 0 / -0
    Awesome thank you for your help! but I dont see anything with canbus.

    I have few programs and cant figure out which one i can use to (ACorsaArduinoConnector, ACTI, and x-sims) but i cant figure out how to send the info to my shield. Im running Assetto Corsa

    I would like to make it as simple as possible. by using my arduino and my can-bus shield and communicate with a OBD2 cluster. If anyone can help me or give me pointer. is anyone else working on this?
  7. Helium

    Helium New Member

    Joined:
    Jul 22, 2015
    Messages:
    7
    Location:
    Earth
    Balance:
    380Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    Arduino
    Why didn't I read this earlier? I already bought some old BMW E36 dashboard without CAN bus :(.
    I even chose it because it has no CAN bus.

    But driving the gauges shouldn't be that hard to do (I guess you just need some square waves and maybe analogue signals for temperature and gas). But I'm not sure if it's possible to drive the display so I planned on replacing it.
  8. BigMetalFan

    BigMetalFan New Member

    Joined:
    Sep 11, 2016
    Messages:
    3
    Location:
    Russia
    Balance:
    214Coins
    Ratings:
    +0 / 0 / -0
    Sorry for bumping old thread, but have anyone got the trip meter to work?
    Byte [1] at ID 420h seems to do nothing to it, any thoughts?
  9. dahfl

    dahfl New Member

    Joined:
    Feb 21, 2014
    Messages:
    29
    Occupation:
    Administrator
    Location:
    Mülheim Ruhr
    Balance:
    485Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, 6DOF
    Hello,
    for my project i have now 3 questions.

    1) someone has an idea how i can turn off seat belt?

    2) the fuelgauge can connect with a poti. But which pins?
    Or can i also control this with the arduino? (this work with my e36 tacho)

    3) control of the tripmeteter would be nice

    regards Andreas
  10. fastdruid

    fastdruid New Member

    Joined:
    Jun 16, 2011
    Messages:
    22
    Balance:
    57Coins
    Ratings:
    +8 / 0 / -0
    It's been a long time since I looked at this...

    ) I don't have the wiring diagram to hand but I seem to recall that it's another set of pins which connects to the seatbelt module.
    2) See the diagram on page two, last three, pins 27.28 and 29.
    3) IIRC Trip meter is incremented in something like 0.025m increments, you flip the byte between the different values 0x10, 0x11, 0x17 which increments the trip by 0.1m per cycle and then that in turn increments the odometer every mile.
  11. BigMetalFan

    BigMetalFan New Member

    Joined:
    Sep 11, 2016
    Messages:
    3
    Location:
    Russia
    Balance:
    214Coins
    Ratings:
    +0 / 0 / -0
    Thank you for the reply!
    I was in doubt regarding the byte
    I see now that it isn't sort of counter, but instead only defined set of exactly 3 values can be observed
  12. dahfl

    dahfl New Member

    Joined:
    Feb 21, 2014
    Messages:
    29
    Occupation:
    Administrator
    Location:
    Mülheim Ruhr
    Balance:
    485Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, 6DOF
    3)
    ok a short test with trip work fine. Thank you.
    but it must be dependent on the speed ? how can calculate the real trip in a game ? any ideas ?

    PHP:
    byte trip[3] = {0x10,0x11,0x17};
    int x=0;
    ...
    for (
    x=0;x<2;x++){
      
    CanSend(message_id_420,0x98,trip[x],0x00,0x00,0x01,0x00,0x00,0x00);
    ....
    2)
    for the gauge i think you mean 2T, 2R and 2P ?

    1)
    is it possible to switch off the signal seat belt? I read the signal comes from another k-bus .
  13. BigMetalFan

    BigMetalFan New Member

    Joined:
    Sep 11, 2016
    Messages:
    3
    Location:
    Russia
    Balance:
    214Coins
    Ratings:
    +0 / 0 / -0
    distance is speed integrated over time
    finite differences method will do
  14. fastdruid

    fastdruid New Member

    Joined:
    Jun 16, 2011
    Messages:
    22
    Balance:
    57Coins
    Ratings:
    +8 / 0 / -0
    The original signal comes from the ABS HU/CM which monitors the 4 wheels and then gives the speed signal as well as works out the distance to trigger the trip. It's reasonably trivial to work out distance from the speed and time elapsed and trigger the trip that way.
  15. fastdruid

    fastdruid New Member

    Joined:
    Jun 16, 2011
    Messages:
    22
    Balance:
    57Coins
    Ratings:
    +8 / 0 / -0
    K-line is theoretically possible, it's a one wire 12v bus which is relatively trivial to write to from TTL voltages but I don't have a clue what it needs in terms of data....

    Plus I don't know if it would need two way communication which makes things much trickier.

    Easiest way truth be told would be to open it up and either de-solder, destroy or cover over the seat-belt warning led!
  16. pup

    pup New Member

    Joined:
    Apr 30, 2017
    Messages:
    3
    Location:
    Russia
    Balance:
    200Coins
    Ratings:
    +0 / 0 / -0
    There's seem to be some mistake? 0.025*3=0.075, not 0.1?
    Moreover, supposing, we're moving 120km/h. It is 33 m/s, right? Supposing, it requires 3 flips for 0.1m. Then, it means 990 can messages per second, right? that means, these can messages are sent almost once a ms? I've read that this dashboard expects can messages each 20-500ms. Which of these above statements is true?

    And one more question: is it possible to feed data to the dashboard from different devices? rpm from one board, speed - from another one?
  17. fastdruid

    fastdruid New Member

    Joined:
    Jun 16, 2011
    Messages:
    22
    Balance:
    57Coins
    Ratings:
    +8 / 0 / -0
    It's a mistake, it's kilometres not metres! :)
    It's been a long time since I looked at this, I can't recall now if there was a fourth byte (which doesn't actually do anything) but or if it was just the three. Either way 0.033km or 0.025km increments.

    Yes, that's how it works in the car. Although you can't send different bytes under one ID with different devices. So for example you couldn't send speed and RPM from different devices as they are both under ID201.
  18. pup

    pup New Member

    Joined:
    Apr 30, 2017
    Messages:
    3
    Location:
    Russia
    Balance:
    200Coins
    Ratings:
    +0 / 0 / -0
    yep! thanks alot for clarification! This means, I can send speed/rpm from one device and trip increments - from another one!

    the last thing to learn, probably, is that fuel gauge. when investigating this issue, i've bumped into some pages, explaining that there are two different sender units, and the cluster needs readings from both of them. Probably, they don't need to be hi-watt resistors, since the arrow in the cluster is not bimetallic, but rather a stepper-driven. The questions are: for a certain level, both resistors should be of the value? are they linear? how do I control the arrow, say, from arduino?
  19. pup

    pup New Member

    Joined:
    Apr 30, 2017
    Messages:
    3
    Location:
    Russia
    Balance:
    200Coins
    Ratings:
    +0 / 0 / -0
    could you guys (@dahfl, @fastdruid) please look through this logfile of can messages. I am trying to sort out the trip meter, but no luck.
    is it okay that I am sending several messages with the same second byte, after changing its value to the next one?
    If no, how do I change the other values (lamps, coolant temp) wihout incrementing the odo then?

    Attached Files:

    • 1.txt
      File size:
      146.1 KB
      Views:
      712
  20. donovan

    donovan New Member

    Joined:
    Apr 7, 2014
    Messages:
    24
    Balance:
    169Coins
    Ratings:
    +8 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, Arduino
    I god an audi a4 dash ill if i can do something with it.. btw nice job