Results 1 to 8 of 8

Thread: SUCCESS!!! (Writing to the BMW E46 display cluster)

  1. #1
    Join Date
    Apr 2005

    SUCCESS!!! (Writing to the BMW E46 display cluster)

    I have for some time no wanted to write text to the E46 (low) cluster to advertise speedcameras (speedlimit and distance) using for example "GATSOHunter" and "RoadRunner"

    My thought was to have the arrows flashing to draw your attention to the cluster, and then present the current speedlimit followed by the distance to the speedcamera (GATSO).

    After some digging through the web I have understood that writing to the E46 (low) cluster is not possible... WRONG!!!

    Now I have finally succeeded to do just that...

    The clue is that it MIGHT not be possible to DIRECTLY write text to the alphanumeric display, but use it's pre-defined messages kind of...
    There are afaik 3 different types of messages that can be displayed:

    -Distances in meters or feet
    -Speeds in km/h or mph
    -Temperature in degrees Celsius or Farenheit

    Maby it's possible to write "plain" text as well, this I don't know at the moment.

    Today I logged the following _DISTANCE_ codes and tested to write them back to the cluster with success:

    _HEX codes WITH checksum attached!_

    7F 05 80 44 29 30 A7 <--- 300m
    7F 05 80 44 29 25 B2 <--- 250m
    7F 05 80 44 29 10 87 <--- 100m
    7F 05 80 44 21 90 0F <--- 90m
    7F 05 80 44 21 80 1F <--- 80m
    7F 05 80 44 21 70 EF <--- 70m
    7F 05 80 44 21 60 FF <--- 60m
    7F 05 80 44 21 50 CF <--- 50m
    7F 05 80 44 21 10 8F <--- 10m
    7F 05 80 44 21 00 9F <--- 0m
    7F 05 80 44 20 00 9E <--- CLEAR DISPLAY? (this was the last code logged from the GPS -> IKE

    Here the GPS (7F) is the source and the IKE (80) is destination.
    The first DATA byte, (the fourth byte in the string) seem to be the code for "distance display". That is the "m" is displayed after the data in the display.

    The second DATA byte, (the fifth byte in the string) it is used to distinguish between 100's and 10's.

    The third DATA byte, (the sixth byte in the string) is the actual distance data.

    I have logged codes for speedlimits as well, but I have lost that log. I'm pretty sure that the format is very similar, but with another hexcode for the FIRST databyte to put the display in "speedmode" for example.

    Will test "speeddata" tomorrow...

    Kind regards

    Marc in Norway

  2. #2
    Fusion Brain Creator 2k1Toaster's Avatar
    Join Date
    Mar 2006
    Colorado, but Canadian!
    I dont have a BMW, but awesome job at getting something to display!

    Fusion Brain Version 6 Released!
    1.9in x 2.9in -- 47mm x 73mm
    30 Digital Outputs -- Directly drive a relay
    15 Analogue Inputs -- Read sensors like temperature, light, distance, acceleration, and more
    Buy now in the Store

  3. #3
    Join Date
    Apr 2005
    ... I'm in great need of some help from a VB coder now... Have to modify IBusComm a bit, but my VB skills are FAR from what is needed.

    1. I want a routine that polls the GPS data from the IBus (the HEX code for this is known), and formats this for re-sending it to RR.

    2. Make IBusComm Bi-Directional to send and receive messages to / from RR like: "SENDMSG;IBusComm;SPEEDLIMIT_90". I know there is a hack called IBusRR, but it has lost its ability to trigger RTS signals via the "ProcessEvents" module.

    Anyone up for the job?

    Kind regards

    Marc in Norway

  4. #4
    Join Date
    Apr 2005

    Writing Speedlimits to the IKE on E46 (setting OBC speedlimit)

    Hello World!

    I have now tried to write speeds to the IKE directly. I have NOT succeded...
    BUT... I have done something that's even BETTER !!! (for my goal that is...)

    I can now manipulate the OBC directly to SET a speedlimit and ACTIVATE this limit if not activated before.

    This means that I can, when approaching a GATSO, set the current speedlimit (stored in GATSO definition) to my OBC, and have it warn me with a PING and the current speed in the display in addition to the distance to the GATSO (from GATSOHunter / RR or similar) which can be written directly to the display. This means that you only have to send the speedlimit ONCE, send the distance continously and switch of the OBC speedlimit when GATSO Alert is canceled.

    My goal now is:

    FLASHING ARROWS IN CLUSTER whenever a GATSO is in close PROXIMITY -> OBC kicks in , Warning ping IF I'm over the speedlimit, -> the distance to the GATSO is diplayed and updated in the IKE.


    OK, now the codes


    Following example codes should be pretty easy to understand:

    80 09 FF 24 09 00 32 31 30 20 cs SET SPEEDLIMIT TO "210"
    80 09 FF 24 09 00 20 39 30 20 cs SET SPEEDLIMIT TO "90"
    80 09 FF 24 09 00 20 35 30 20 cs SET SPEEDLIMIT TO "50"
    80 09 FF 24 09 00 20 31 39 20 cs SET SPEEDLIMIT TO "19"
    80 09 FF 24 09 00 20 31 30 20 cs SET SPEEDLIMIT TO "10"
    80 09 FF 24 09 00 20 20 36 20 cs SET SPEEDLIMIT TO "6"
    -----------------| speed |-----

    FOURTH, FIFTH and SIXTH _DATA_ byte holds the speed.
    30h = 0, 31h = 1, 32h = 2, 39h = 9 etc
    20h = BLANK

    3B 05 80 41 09 04 cs ACTIVATE SPEEDLIMIT in OBC
    3B 05 80 41 09 08 cs DE-ACTIVITE SPEELIMIT in OBC

    Kind regards

    Marc in Tromsoe

  5. #5
    Join Date
    Feb 2008
    what program are you using to send the ibus packets?

  6. #6

  7. #7
    Maximum Bitrate bes51659's Avatar
    Join Date
    Sep 2005
    Vasastaden, Stockholms Län, Sweden, Sweden
    So Marc, how do you do? :-)

    I wanted to use the MID display for several purposes, but I guess I have the E46 low cluster that is very difficult to do this with.

    I wanted the TPMS to beep and write "high temp left right tyre" or what ever.
    I also wanted to write "PC standby" and things like that.

    Is this at all possible?

    After playing around with IBus analyzer it seems like the MID is "smart" and messages that appear is not shown on IBus when they are displayed. It is controlled internally by the MID that stores the time for instance when it was broadcasted until it is selected to be shown.

    I was lead to beleive this as no message was sent exactly when I pressed the BC button, and I also saw fuel consumption and time being sent on the IBus almost at the same time (see below). (I had been standing in the parking lot for a while. If you were wondering about 19.3 l/100km fuel consumption)

    80 0C FF 24 01 00 31 31 3A 31 31 20 20 6C "11:11 "
    80 05 BF 18 00 07 25
    F0 03 68 01 9A
    80 09 FF 24 04 00 31 39 2E 33 43 "19.3"

    Thanks for any light spread on the subject

  8. #8
    Low Bitrate
    Join Date
    May 2007
    subscribed for updates.

Similar Threads

  1. Replies: 1
    Last Post: 02-25-2007, 01:32 PM
  2. BMW 325ci Cabrio (E46) install
    By gkapog in forum Show off your project
    Replies: 12
    Last Post: 11-09-2006, 12:35 AM
  3. Replies: 5
    Last Post: 10-08-2006, 10:36 AM
  4. 2005 BMW E46 CarX audio hook-up question?
    By reggs in forum Hardware Development
    Replies: 0
    Last Post: 09-24-2005, 03:06 PM
  5. BMW E46 Trim for Lilliput ?
    By homep1 in forum General MP3Car Discussion
    Replies: 3
    Last Post: 04-03-2005, 10:23 AM


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts