0x1f0 has indeed the wheel speeds. This is the signal information:
ID 0x1f0/496
Signal wheel 1: startbit 0, bit length 12, Intel LSB, unsigned, gain 1/16 (0.0625)
Signal wheel 2: startbit 16, bit length 12, Intel LSB, unsigned, gain 1/16 (0.0625)
Signal wheel 3: startbit 32, bit length 12, Intel LSB, unsigned, gain 1/16 (0.0625)
Signal wheel 4: startbit 48, bit length 12, Intel LSB, unsigned, gain 1/16 (0.0625)
I'm not sure about which wheel is which signal yet.
See this plot for some results:
Thanks for verifying it. Did you turn Right or Left first? The inside wheel wheels will be slower. The inside rear the slowest?
So if you turned right first perhaps this is how it'd work out?
Wheel 1 Left Front
Wheel 2 Right Front
Wheel 3 Left Rear
Wheel 4 Right Rear.
If left turn was first reverse right and left?
Want to look at ARBID 0x1F3? I think it is the steering angle. (if your car has that sensor).
Seeing this reminds me of something I'd like to make. An Arduino based low tire sensor. Check wheel speeds and look for mismatches. For cars with the steering angle could exclude turning (my wifes car doesn't have that sensor). Should be an easy program to write. Could set a light on the dash easy enough. With a little extra work could put a message on the radio display and mute the music. My wife has a tendancy to drive on flat tires. So I'll probably make this.
Currently I'm still working on my DIY Ipod interface controlled by the factory radio buttons (or wheel buttons). It's 90% finished and currently am doing some time debugging it (its playing music and I'm checking to ensure it doesn't hangup). I'm using the "ibus analyzer" to simiulate the radio button press over the K-bus. Being able to interface with both the Can and I bus opens up all sorts of customization possiblities.
Oh I should also say if anyone wants me to do any testing with my Instrument cluster let me know now. As at the end of June I'm moving back to the USA and my instrument cluster will be in a box on a boat for many weeks. No telling how long until I get it set up again. (I'll bring my Arduino in my suitcase).
Hey guys,
This is a bit on/bit off topic. I'm having an issue with my speedo jumping when I crank the car or turn on the HVAC. It almost seems like noise on the line. This only started AFTER my M3 diff swap.
Explanation/possible cause:
While I was doing my M3 diff swap last week I ran the battery down (left the key on). I put the battery charger on the car (was supposed to trickle charge) but something blew in the charger and it over-volted and blew my battery (didn't "explode" but ballooned it BAD). I'm wondering if there could be a resistor/diode/cap/etc. on the bus that could have been damaged by the over-volt. All the other gauges work fine (no spikes) and the speedo works fine AS LONG AS I don't turn the HVAC on. If I turn the HVAC on (with AC on or off), I get jumping in the speedo.
Thanks,
Chris
Chris
Is was already working on the steering angle but didn't post the results yet (needed to verify the sign thing below). I'm not aware of the contents of ID 0x1F3 yet.
The steering wheel angle and the steering wheel speed which I found are present in:
- ID 0x1F5 / 501
- Steering angle startbit: 0
- Steering angle bit length: 15
- Steering angle bit order and type: Intel LSB, unsigned
- Steering angle gain: 0.045
- Steering angle sign bit: bit 15
- Steering angle velocity is identical as above except from:
- Steering angle velocity startbit: 16
- Steering angle velocity sign bit: bit 31
Normally one would expect that these kind of signals are of the two's complement signed type (e.g. 16 bits long). Unfortunately we have to use a sign bit to extract the signedness of the angle and velocity and calculate the angle and velocity during post-processing. Cost me some time to sort this out. I'm not sure about the accuracy of the gain though.
Sorry was reading the wrong line. Yes 0x1F5. Looks like you are well on your way to sorting it out. I didn't spend a lot of time on it but it didn't look simple. You have confirmed my suspicion.
Does sound like it could be noise. The speedometer I have does not get it's signal from either bus but from a seperate line providing the speed pulse directly from the ABS unit. Might check that line out and ensure it's not shorting with something or being interfered with in some way.
Thaniel.
Last edited by Thaniel; 05-06-2013 at 05:34 AM.
Sorry thought I'd passed the pulse per mile to you. Perhaps I just thought I did. I counted approximately 39450 pulses per mile. Somewhere in the WDS I read it is a 10V Square wave 50% duty cycle. WDS calls it "Signal Processed wheel speed, rear left". From what I saw on the diagrams I looked at the ABS wheel sensor signal is fed to the ABS and then it puts out the "Signal Processed wheel speed, rear left". That signal goes to the DME, IKE and a few others. Again that's on the diagrams I looked at. One thing we haven't talked much about is there are many different Can bus versions in the E46 and the modules all have to be on the same one. Who knows maybe one of the later versions ditches the sperate signal for speed and uses the can bus. It's on the can bus several times so would make sense to use it. The cluster I have (2001 if I remember right) the speed signal comes in on pin 19 of x11175 connector. I've had to feed it a pulsed signal to make the speedometer move regardless of what I send over the can bus.
Yes Tach is Can bus.
Might also check to ensure your ABS sensors on the new rearend are sending the proper signals. I thought Bikealarmblair had issues with that on his swap.
Gents, just something way off the topic, and I can't get info from the audio section of the forum, can I bench test an e46 Blaupunkt or Alpine Business CD Radio without connecting it to the bus, ie power and speakers so I can do repairs on the unit??
and how can it be done? so sorry to go off topic t his stage..
2003 X5 4.6is - for sale
2006 X5 L83 5.3 6l80 swapped in progress - for sale
1999 528i 5.7L 4l60e swapped w/ 31 spline 8.8 cobra diff - for sale
2007 ZX-10r - sold
1987 R-10 SWB L83 5.3L 6L80e swapped
www.87chevy.com
i do apologize for your rise in blood pressure after reading my offensive post
Well issue resolved.
When I installed the M3 rear, I used M3 wheel sensors in the trailing arms. Everything I read said the E46 and M3 sensors were different lengths and not compatible, so I figured the Z4 sensors wouldn't work unless they were spaced out. So using M3 sensors just seemed the logical solution.
Well after your statement, I got to thinking that I might as well give the original Z4 wheel sensors a shot. Turns out the M3 and Z4 wheel sensors are dimensionally identical. I pulled the M3 sensors, installed the Z4 sensors, and problem instantly went away.
So, moral of the story is to keep the sensors that came with the car (if at all possible).
Chris
2003 X5 4.6is - for sale
2006 X5 L83 5.3 6l80 swapped in progress - for sale
1999 528i 5.7L 4l60e swapped w/ 31 spline 8.8 cobra diff - for sale
2007 ZX-10r - sold
1987 R-10 SWB L83 5.3L 6L80e swapped
www.87chevy.com
Hello Thaniel,
took several days searching for information and more I read not hear him too.
Currently I have a arduino one and the canbus module shield. I have a instrument cluster of bmw e46.
What I would do is make the box work with iRacing simulator. At present the data extract iRacing what I have achieved. What I have currently have a display and LED for rpms, speed and fuel consumption. The information provided iRacing delivery via the USB port of arduino and a small program in c #.
The problem I have is that I see no way to run the table in e46. I'd appreciate enviases Connection scheme of wires to plug in and if you had a small code that just did that moved the needle speed. I could really use a bit to understand how it works sending information to the table and that I understand and execute the action.
Sorry for my English.
My email is curro@miatleti.com.
Thanks
Last edited by cloniko; 05-25-2013 at 02:27 PM.
Jeez, you sure know your Voodoo science... Honestly, I don't understant much of what was said in this thread but it's very interesting nevertheless. Keep up the good work.
Hello again. I haven't disappeared. Been playing with the Ipod and I/Kbus instead of can so not been posting too much. I did pick up new Arduino board for fun. An Arudino Mega ADK. It has muliple hard serial input/outputs. Debugging my ipod interface was driving me nuts as I couldn't have the PC screen AND the ipod AND ibus all connected at the same time. Not needed when it is being used but great for debugging. The Mega allows for easy debugging. Got the project far enough that I really needed to test it on the real equiptment. So for about $6 I found at BMW radio. Apparently it's not uncommon in germany to use a BMW radio in a non BMW car. So I was even able to buy the connector for the back of the radio from german ebay. Though spent more on the connector then the radio. Anyway....
IMG_1243.jpg
Notice the text on the display. Been learning more about ibus comunication. Think it could be handy in our car customization. If nothing else putting messages or data on the radio display can be fun.
I'll send you an e-mail.
Yes. I'd looked at trying to refit the BMW system but seemed like there was cost/availability and version incompaitiblity problems. So a simple device might work and seems to me an easy program to write. Think this may be my next electronics project.
I'll be back to my house in the States June 28th. No immediate plans to go back to the EU after that so I can do some car projects.
Thanks. I'll try to make it more visual once I have some cars to play with again.
Thaniel
I am still lurking, and you've made some great progress, keep going
- Thaniel, may I ask for your help on a project of mine ?
- I'm trying to buy a e46 M3 used cluster to apply on a pc car simulator.
- Now the m3 cluster I'm after has that warming up lights/ shift lights on the tachometer and I would very much like to make them work if I manage to get the cluster. Do you think you have on your annotations any info regarding canbus ids for them ?
- Thank you for your time.
It could be that the shift lights are controlled by the Instrument cluster and not the ECU. Try sending the RPM signal and see what happens. If the lights are controlled sperately I expect that it would be in either IDs 0x316, 0x329 or 0x545. My bet would be 0x545 since it has the check engine, cruise, overheat, etc. lights. If you buy and M3 cluster try sending it varoius messages and see what happens. Could also try to get a data sample from an M3 car when it is lighting the lights and compare messages. All the data I have is from non M.
If you or anyone is able to get the IKE's firmware ".bin" file of an M instruement cluster (using PA soft or similar). I'd like to have a copy. I'm curious to know if the computer part of the IKE is the same and a non M could be flashed with M's firmware. This would make control of the MPG gauge easy or could be made to show something else easily.
Thaniel
Last edited by Thaniel; 06-05-2013 at 04:56 AM.
Hi, I bought one on ebay. As soon as I get it and If the cluster eeprom is the M35080 or something (from my research) alike I think I can read it.
I do not have access to any M3 nearby or far lol so it will be a almost blind start if it wasn't for your research. I'll keep you posted as soon has I get it.
Bookmarks