Can bus decoder od bmw 02
Перейти к содержимому

Can bus decoder od bmw 02

  • автор:

Can bus decoder? stereo problem

so i did research on this awesome forum and found it could be a faulty ice ipod module looked in the trunk and it wasnt there looked under passenger side under glove box and it wasnt there so i took the center console and radio out wasnt there but when i pulled the radio out there was a can bus decoder for a 3 sieres should it be 5 series?

theres a brown and white wire thats not plugged in on the lcm any idea on what this goes to could it be my problem?

last thing is there is an annoying noise that is coming from my speakers and it is relivent with my rpm possible alt diode?

kind of at wits end with this electrical problem so if anyone has any ideas on where the module could be or about the can bus or the lcm greatly appreciate it!

Installation

Integrating with the E46 requires just one cable, tapping into the CAN bus data of the E46’s instrument cluster.

Required parts

E46 integration cable.jpg

DIY Cable

To make your own cable, you’ll need the following:

  • Crimp tool
  • Wire cutter
  • Wire stripper
  • Philipps screwdriver
  • Multimeter
  • 22-26 gauge wire
  • RJ 45 (Ethernet) cable, ~6ft
  • Shrink tubing (optional, electrical tape will work too, but not look as nice)
  • Posi-tap connectors (2) — Do *not* cut the CAN wires during this installation, use wire taps (Posi-taps work very well)
  • Butt connectors (2) for 22 gauge wire
  • Flashlight
  • RaceCapture/Pro with Bluetooth
  • Android tablet
  • An E46 😉

Estimated Time

2-3 hours, depending on level of wiring experience. The most time consuming part is splicing the CAN, power and ground wires into the RJ45 cable.

RaceCapture/Pro installation (Race / Spec E46)

We recommend installing RaceCapture/Pro on the transmission tunnel to the right of the driver’s seat. This is near the center of rotation to get the best effect from the on-board IMU (Accelerometer + Gyro)

RCP install E46.jpg

CAN wires

The CAN+/CAN- wires are located in 2 places: under the driver’s side dash above the footrest or in the DME panel. For these instructions it is assumed you are using the wires under the dash.

CAN wire colors are as follows:

  • Yellow/Red = CAN+ (high)
  • Yellow/Brown = CAN- (low)

They are a twisted pair in or attached to the main wiring harness under the driver’s side dash above the dead pedal.

Remove bottom of dash

You will have to remove the panel below the steering wheel via 3 philipps screws, a plastic thumb screw (turn 90 degrees and pull) behind the pedals and a press fit plastic screw on the transmission tunnel (pull the tiny center pin out first, then the larger screw).

Once you have removed the panel you should see a large wiring harness above the dead pedal.

Locate CAN wires

Look for a twisted pair of wires that are Yellow/Brown and Yellow/Red like so:

Canwires.jpg

Those are the 2 wires you need to *tap* into, not cut.

Tapping CAN wires

To tap into the wires, you’ll first need to tease them apart because they are very tightly wound. Peel back some of the black cloth tape wrapping the harness and gently pull the wires apart. This may take some time. You’ll want to have enough room for 2 fingers in between the wires.

Tapping the wires via Posi-taps (recommended) is easy. Pull the top off the Positap, place the wire in it and tighten. Verify you’ve tapped the wire by loosening and checking for a hole in the wire.

Positaps.png

Once you’ve tapped both it will most likely look like this:

Can-tapped.jpg

Create CAN wiring for RaceCapture/Pro

Now that you’ve tapped the CAN wires, cut two 6 foot lengths of solid wire, strip both ends and attach one to CAN+ and CAN-. Make sure to label them or you’ll have to keep looking under the dash. Yellow/Brown is CAN- and Yellow/Red is CAN+.

Where you run these two wires is dependent on where RaceCapture/Pro is. You can either run them down the driver’s side of the car, next to the dead pedal or find a way to route them into the center dash and out below the CD player/HVAC controls. For these instructions we routed them next to the dead pedal, under the floor mat and taped them onto the transmission tunnel next to the driver hidden away. (Our RaceCapture/Pro was installed on the center rear seat)

Power and ground wiring

Note: You can skip this section if you already have power wired to RaceCapture/Pro and don’t want to change it.

RaceCapture/Pro MK1 owners: do not wire in power or ground via CANx module; connect power via terminal block only.

Option #1: OBD-II port power

Using the same cable used for the CAN bus connection you can tap into power on the OBD-II port, for a clean 4 wire connection:

E46 CAN OBD2 power.png

BMW E46 power, ground and CAN bus connections to RaceCapture/Pro

Connection BMW RaceCapture/Pro (RJ45 cable)
+12v Yellow-Red (OBD-II connector) Brown
Ground Brown (OBD-II connector) Orange/White
CAN High Yellow/Red Orange
CAN Low Yellow/Brown Green/White

Note: These color codes assume EIA-T568B RJ45 cable (check printing on the cable to confirm)

Option #2: Center arm-rest power

An easy and convenient source for power is under the coin holder in the center armrest. Pull the cup holder and coin holder out. Beneath them will be a cloth/foam wrapper containing a cellular phone connector. It contains 12v switched power and ground. Pull it gently towards the back of the car, then up to get more slack. Pull apart the foam to get to the wires.

The 12v wire is purple/white, ground is brown. *Note*: there is also a tan wire that looks very similar to brown. Compare the two and pick the darker one.

Splice power and ground wires

You can tap these wires if needed, for these instructions we cut them.

Cut 2 pieces of solid wire about 3ft long or appropriate length needed. Cut the 12v and ground wires and connect them to the wires you just made. Tape or add shrink tubing as necessary. Label the wires 12v and ground.

E46powerground.jpg

CAN Bus connection

In order for RaceCapture/Pro to read CAN data you need to connect the CAN+/CAN- wires to a RJ45 (ethernet cable).

Cut one end off the RJ45 cable and pull apart all the wires.

Identify and label the CAN1 High, CAN1 Low, 12v and ground wires via a multimeter.

For a standard RJ45 cable (EIA T568B) the colors are:

  • Orange: CAN1 High
  • Green/white: CAN1 Low
  • Brown: Power
  • Orange/white: Ground

Use the following diagram:

Canrj45.png

You will end up with something that looks like this:

Rj45labeled.jpg

Once you have identified and labeled the wires, strip them and attach to the CAN wires and power/ground wires from the car. RJ45 wires are very thin, you will want to loop them around the thicker wires and add tape or shrink tubing.

Configure RaceCapture/Pro

Set Baud Rate

Ensure CAN1 baud rate is set to 500K

Setup CAN1 500K baud.png

E46 CAN bus Preset

After wiring is complete, load the E46 CAN preset under Setup / CAN Mapping:

E46 CAN preset.png

After loading the preset, write the configuration back to RaceCapture.

Verifying real-time data

Start the engine, and then navigate to Dashboard / Raw Channels View to verify you are receiving data.

Additional resources

  • http://aimsportsystems.com.au/download/ecu/stock/bmw/BMW_Mini_100_eng.pdf — AIM docs for e46 M3 CAN codes
  • http://www.diyelectriccar.com/forums/showthread.php/my-can-bus-gauge-solution-bmw-84882.html
  • http://www.beisansystems.com/misc/SEIMENS_MS_420_ENGINE_CONTROL_SYSTEM.pdf
  • http://www.bmwtech.ru/pdf/e46/ST034/2%20Driver%20Information%20Internet-1.pdf
  • http://www.gadgetgangster.com/news/54-new-projects/556-the-car-kracker.html
  • http://www.reslers.de/IBUS/index.html
  • http://www.bimmerforums.com/forum/showthread.php?1887229-E46-Can-bus-project
  • http://forum.e46fanatics.com/showpost.php?p=15754605&postcount=5

Can bus decoder od bmw 02

I’m new here and I don’t know if any of you had this problem before:

So I bought this aftermarket radio on AliExpress Link ( https://www.aliexpress.com/item/4000. 548bb90axJv4Iw ) The Radio Looks really awesome as it has carplay.

The thing is after I installed the radio I was thinking that everything was plug and play but, for some reason is not being like that.

I’m currently having 2 issues that I don’t know if they’re related but they seem so:

1 Issue — After everything is installed, and you turn on the radio. after +/- 10 minutes of usage the Android Canbus Decoder starts beeping and won’t stop. You can turn off the radio, turn off the car, remove the car keys and lock the car. but the beep sounds won’t stop at all. The only way to stop it is really by unplugging the decoder box and the cables from the android unit.

2 Issue — since I installed the radio and had the first problem above. when this issue starts to happen after a few minutes my cluster console always comes up with a battery red light and a yellow ABS light. I’ve checked the e90’s hidden menu and it seems that the alternator starts to freak out and drops the charging voltage to 10.9V.

We could say there’s a alternator issue. but here’s the weird part:
If remove the decoder and unplug the radio connectors. the car seems to be back to normal again, and the alternator voltage after a few minutes comes back to normal and starts charging the car.

Shouldn’t these radio just be plug and play ? Am I’m missing anything on the connectors?!

I’ve been looking for forums but I can’t find anything about this stuff. Glad If someone can help me

Can bus decoder od bmw 02

this is a guide at using CAN-bus (not OBD-II) with G8x. disappointed BMW turned the M Laptimer into trash, i started looking at AIM SOLO2 DL for better track telemetry after using RaceChrono/TrackAddict/Harry’s Laptimer with ODB-II dongles (OBDLink MX+, CX+, Kiwi3). honestly, the SOLO2 seems great. it’s kinda expensive, but you really get a lot from it, both hardware and software wise. AIM’s really only downside is there camera offerings are complete garbage.

if i had a dedicated track car with a roll cage, i probably would have just setup the AIM SOLO2 in a permanent way and moved on with my life. while trying to find a SOLO2 DL in stock with CAN-bus wiring harness, i decided to go over to the RaceChrono forums and see what is going on there. turns out, RaceChrono supports DIY devices over Bluetooth LE.

this is my adventure with CAN-bus and G8x platform using RaceChrono Pro iOS app, ESP32 adruino CAN-bus device, and hacking the CAN-bus data for the G8x platform. this is a work in progress, but i feel like i am at the point things are better than they ever were and its highly usable on the track.

spreadsheet of the CAN-bus data i have decoded so far: https://docs.google.com/spreadsheets. it?usp=sharing

  • https://www.adafruit.com/product/5477
  • https://copperhilltech.com/can-bus-f. ing-for-esp32/
  • https://smile.amazon.com/dp/B004D0C2RC
  • https://smile.amazon.com/LotFancy-St. /dp/B07Q3G1VG2
  • https://smile.amazon.com/gp/product/B095VVR4LB
  • https://smile.amazon.com/gp/product/B06WGN56V2
  • https://smile.amazon.com/dp/B09BDX9L66
  • https://smile.amazon.com/dp/B07FWCJ7QF
  • https://smile.amazon.com/dp/B084GDLSCK
  • https://smile.amazon.com/dp/B094GZ6CPZ
  • https://smile.amazon.com/gp/product/B075WBDYZZ
  • https://smile.amazon.com/gp/product/B00ANZRT4M
  • https://copperhilltech.com/pican-2-c. -raspberry-pi/
  • https://copperhilltech.com/esp32-wif. an-bus-module/

(PT stands for powertrain??)

one such connection is in the passenger side footwell. CAN-bus wires are always twisted pairs, making them easy to identify. i used posi-taps to tap into the existing wires without messing with the complex factory wiring harness. i used JST connector so i could easily connect/disconnect devices.

CAN-bus cabling color code:
CAN High -> Yellow/White
CAN Low -> Yellow/Black

with this basic connection i was able to see ~1750 can frames per second. basically every message broadcasted by PT-CAN.. so really barely 20 kbps of messages on a 500 kbps CAN-bus.












adding the wire + jst connector, making sure to twist the wires before covering them up for neat install






step 2: figuring CAN-bus data

car makers do not share this data usually, so i setup a Raspberry Pi 3/4 + PiCan2 hat so that i can use tools like candump and cansniff to log and analyze the CAN-bus data afterward.

this is a boring, time consuming step that i can go into more details if people wanted, but i assume no one cares really.

  • RPM 100hz
  • throttle 100hz
  • gear 50hz
  • longitudinal acceleration 50 hz
  • lateral acceleration 50 hz
  • yaw rate 50 hz
  • speed 50 hz
  • wheel speed (for each wheel) 50 hz
  • battery voltage 10 hz
  • air temperature 1 hz
  • steering angle 5 hz
  • coolant temperature ~5 hz
  • engine oil temperature ~5 hz
  • gearbox shift speed (S1,S2,S3) 10 hz
  • brake pressure front
  • brake pressure rear
  • intake temperature
  • fuel level

step 3: assembly ESP32 arduino device

I went with an Adafruit S3 feather ESP32 board, mainly because it had BLE 5.0, battery connector, USB-C for charging / serial port: https://www.adafruit.com/product/5477. I originally tried a Adafruit Huzzah32 ESP32 board, but the USB micro-B was annoying since GoPro and Racebox Mini are all USB-C. Also the Huzzah32 was an older ESP32 with Bluetooth 4.0, but even if i sent the entire CAN-bus of 25 kbps, i would still have plenty of bluetooth LE bandwidth in either 4.0 or 5.0.

ESP32 chip contains a CAN-bus chip, but you still need a transceiver, so went with the feather wing CAN-bus transceiver, so it all fit in a nice little package. i still have to 3d print a case for all this.

this did require some basic soldering. but because i got a feather ESP32 and feather wing can-bus transceiver, i just had to solder all PINs, even though the transceiver only uses 2. made for a solid build without a lot of guess work or arduino knowledge.







step 4: racechrono

RaceChrono is awesome. far and above TrackAddict and Harry’s Laptimer IMHO and for the DIY crowd, the only track software that support this kind of thing.

in racechrono, once your ESP32 is up and running, you can go to settings and other devices and add a bluetooth LE, can-bus device.

then you can add channels and provide formulas converting any raw CAN-bus data into human readable values. i have included a column in that spreadsheet of the racechrono formulas i use.



step 5: source code for ESP32 device

i wrote my own customer CAN-bus driver stack to greatly optimize the read-only track telemetry case. looking to do the same for the Bluetooth LE driver as i think the arduino BLE drivers are what’s bottlenecking this entire situation.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *