I would very much like this to work in my e31! I wonder if the circuitry is similar enough to retrofit the modified e36 OBC?
The e31 display has only one connector and I believe a separate computer to calculate input variables (possibly this could be bypassed?)
^pic borrowed from BMW M Registry
2.8 Z3 coupe + 6 speed || 200kW electric 1970 Jaguar XJ6
Screen pin 11 is a clock feed, so there are only 3 common lines to both drivers. most likely a serial interface...
b) Valentine 1 is a MUST! I've run across a document somewhere that talked about how to communicate with and talk to the V1. I think you can get it from Valentine themselves. Others have done this; witness the stealthone product that existed for awhile.
c) What about the ability to use the SD card to store data from things like the oil pressure, temp, etc?
'95 325iS - auto to manual swap done!
I'll draw the SD card socket on the main board, and then those things will be on later software revs. The idea we had with m2pc was that the firmware should have everyday stuff, things that are on 24/7 and in your M-F conmute. Everything else should be on the carpc which is much easier to program.
I'll look into the V1.
[quote=Bryson;15518026]I would very much like this to work in my e31! I wonder if the circuitry is similar enough to retrofit the modified e36 OBC?
The e31 display has only one connector and I believe a separate computer to calculate input variables (possibly this could be bypassed?)
Worst case you plug in the power, gnd, speed reed switch and forget the rest.... or maybe you can retrofit 100% of the funcionality....
Last edited by Mefis; 02-12-2009 at 09:26 AM. Reason: Automerged Doublepost
http://store.nexternal.com/shared/St...t=products.asp
If this link does not work, go to http://www.bmw2002.com/ and click on E36 parts, then click on engine parts. The oil cooler adapter is top of the page. It costs $150.00 not the $100.00 I remembered but is still a good way to go if you want a clean looking installation for the sensors.
Regarding the E31 retrofit, I'm not sure how much functionality you will get if there's no fuel consumption reading or if the CHECK CONTROL module isn't like the E36.
Rats, the oil cooler adapter only works with E36's with the metal bolt on top... mine is the one-piece plastic top with "bolt" molded in plastic.
I hand-cut some protoboard to fit where the PCB was in my OBC:
(sorry for junky iPhone pic)
Next steps for me are:
1) Build PC parallel port logic analyzer to "sniff" the data lines going to the display to reverse-engineer the protocol used to send text to the display PCB.
2) Desolder the cables from my test OBC and solder them into my prototype unit so I can start reading signals from the E36 sensors, etc.
More updates to follow!
Ok I just got my test unit powered up on the bench and took the first logic analyzer snapshot. During this capture the OBC was displaying nothing on the main display, and "1:13 AM" on the clock:
Inputs are mapped as follows:
1 - OBC Display Header Pin 4
2 - OBC Display Header Pin 5
3 - OBC Display Header Pin 6
4 - OBC Display Header Pin 7
5 - OBC Display Header Pin 8
6 - OBC Display Header Pin 9
7 - OBC Display Header Pin 10
8 - OBC Display Header Pin 11
Last edited by m2pc; 02-13-2009 at 03:04 PM. Reason: Automerged Doublepost
1999 ///M3 TiAg | Heated Power Vaders | DDM Projector36 5000K 55W HIDs | DDM 3000K 35W HID Fogs
DDM Smoked Corners | DDM Weighted Shift Knob | K&N CAI | Mishimoto AL Rad w/Zionsville AL Shroud
Stewart HiPo Water Pump | Samco Hose Kit | 16" SPAL Puller Fan | Viper 5701LE Security
E36 OBC is now open! Join the effort: BF.C Thread | openOBC Wiki
I did more searching and came up with a couple of options:
1. http://us.st12.yimg.com/us.st.yimg.c...s_2017_1548936
2. http://www.speedograph-richfield.com..._lines.html#TP
The first is at http://www.jt-designs.com/ and I think it is the cleaner approach. The second is a lower cost option that will require a little more work to get the install looking good. Both of these approaches will work with the type of oil filter on the 328i M52 engine and on the bolted style filter cap models with M50 and S50 engines. The OEM oil pressure sensor is mounted at the base of the oil filter housing. It screws into the housing with an M12 X 1.5 thread. The adapters screw into the stock location and provide 1/8 NPT threaded ports in addition to the stock M12 X 1.5 port. I am going to try to get a pic of the stock set up tomorrow. I have an S52 on a stand in my garage and it should be easy to get a good look.
I also found VDO oil pressure and temperature senders mentioned multiple times. Next step is to find out if info exists on the resistance profile for these sensors. If these sensors are simple variable resistors, doesn't that mean there has to be a resistor close to the microcontroller to set up a voltage divider to measure resistance of the sensor? Does that also mean there has to be a voltage source with enough current capability to feed the divider? Aftermarket gauges probably have this circuitry built into the gauge display module. (I am going to look at the Megasquirt site to see how they measured water temperature. Their method should answer these questions.)
BTW, did I mention that IMO oil temp, water temp, and oil pressure are the most important parameters to measure? If running forced induction, I would add inlet air temp, A/F ratio, and exhaust temp to that list.
I am a EE with over 15 years experience with analog instrumentation in gas turbine test cells and Navy aircraft. My specialties were engine control systems and drivetrain health monitoring systems. I was primarily a diagnostician and troubleshooter. Now, I manage other contractors doing the work. I don't have experience with embedded programming but your project has really sparked some interest in me. (I did play around with Atmel AVRs around 7 years ago but never went beyond basic tutorials.) Is there a good PIC starter kit that would let me experiment with what you are doing? I looked on Microchip's web site and noticed that there are multiple options for evaluation boards. It is not clear if any have the pin outs I would need to interface with the display and sensors involved in this project. I don't know if I will learn quickly enough to contribute any code but I am very interested in trying.
Last edited by Mark185; 02-13-2009 at 10:26 PM.
Wow those look like very cool products for this application. Doesn't Jim Powell (DDM Tuning) have something to do with JT Designs?
Yes a simple voltage divider is all that's needed. Each A/D input port should be able to provide enough current for the divider network to operate properly. It's a simple matter of tying the input to +5V with a given resistor, and letting the sensor ground it out with a varying resistance, resulting in a varying voltage drop.
Wow, that's an impressive background! I'm mostly self-taught, dabbling in various electronics/computer programming projects.
My main line of work is actually web/eCommerce/database development. One of my main goals with the openOBC project is to sharpen my EE skills!
I use an older programmer (PicStart Plus) that's RS-232 and can program most devices. Microchip has an IDE (MPLAB) that allows you to write programs in either assembly language or C/C++. That same application also drives the programming device, allowing you to "burn" your compiled programs to the actual PIC chip.
They also make a cheaper USB-powered device that's just as effective, but you have to wire up your own socket.
I will compile a list of resources for beginners once I launch the official openobc.org website, in the next couple weeks.
Right now I'm bogged down with decyphering the display protocol for the OBC's LCD module...
Once that is out of the way we can begin the really fun stuff!
Last edited by m2pc; 02-14-2009 at 03:23 AM.
1999 ///M3 TiAg | Heated Power Vaders | DDM Projector36 5000K 55W HIDs | DDM 3000K 35W HID Fogs
DDM Smoked Corners | DDM Weighted Shift Knob | K&N CAI | Mishimoto AL Rad w/Zionsville AL Shroud
Stewart HiPo Water Pump | Samco Hose Kit | 16" SPAL Puller Fan | Viper 5701LE Security
E36 OBC is now open! Join the effort: BF.C Thread | openOBC Wiki
i did some quick searching and still can't find the document i saw once that talks about interfacing with the V1.
in the meantime, i found several links that might help:
http://www.kc8unj.com/radar/
http://www.mp3car.com/vbulletin/user...ne-one-pc.html
hopefully that's helpful, if not - please ignore!! Just trying to help.....
'95 325iS - auto to manual swap done!
Man, this is totally awesome. I've been wanting to do something like this since I first got my E36.
I would really like to see a version of this done with no GPS and no GSM...just the PIC. I already have a GPS, and am not interested in spending the extra dough for the GSM integration, etc.
I've done a bit of uController programming and such. Don't know if I will be able to help out, but I will if I can.
It would be great if you could run a JTAG header off the unit so a ribbon cable could be run over to the footwell or glove box so we could flash new code to the PIC without needing to pull the unit out of the dash.
So the V1 is basically a "brain" and "display" module, with a serial interface? If so, it'd be trivial to interface with!
We're budgeting the board space for the GPS module, but you can leave it disconnected if you like. I'm planning for an external RTC (real-time clock) chip for use if/when the GPS module is omitted. Having the GPS onboard does enable a lot of functionality, such as a self-setting clock based on the U.S. atomic clock, as well as an altimeter, accurate speedometer for time/distance/mileage calculations, and other useful functions.
We're going to have an ICSP header on the board, so you can reprogram the PIC using 5 wires connected to any PIC programmer. Once we get our website up, there will be an area where you can grab the latest code and hardware reference design documents, so you can expirement on your own and post your findings to the site.
UPDATE: Ribbon cables connecting Display Board -> Logic Board inside my OBC have been unsoldered and replaced with Molex-type connectors.
This will make it easier to move from the OEM Logic Board to the openOBC logic board.
Last edited by m2pc; 02-17-2009 at 02:26 PM. Reason: Automerged Doublepost
1999 ///M3 TiAg | Heated Power Vaders | DDM Projector36 5000K 55W HIDs | DDM 3000K 35W HID Fogs
DDM Smoked Corners | DDM Weighted Shift Knob | K&N CAI | Mishimoto AL Rad w/Zionsville AL Shroud
Stewart HiPo Water Pump | Samco Hose Kit | 16" SPAL Puller Fan | Viper 5701LE Security
E36 OBC is now open! Join the effort: BF.C Thread | openOBC Wiki
Well, I was skeptical but this is actually going somewhere so I'm in for the ride.
Greak job Shadowpuck! Is a very good start.
There will be one DB9 port to choose between GSM funcitonality or V1 interface.
Awesome!!
Well... according to the data posted by shadowpuck, the V1 can be interfaced with a standard 9pin serial port. We will accommodate this on the openOBC design. the software is to be dealt with later
We have been working with a PC based logic analyzer (parallel port) but is to slow to capture all the data flowing into the port to hack the protocol, given that we find no datasheet. Note that sometimes we capture 4 clock cycles and sometimes 3. This suggest 2 pulses are going into one PC acquisition.
Solutions are a)get a real logic analyzer which i don't have or b) weld a slower quartz crystal on the existing OBC, this will make the clock slower and we should be able to read the data with the PC. this is the next step...
Thanks Pete!! The slower crystal should be on the mail, if that fails, I may drive up there! Appreciate the offer!
Excellent, this will get resolved one way or another!
1999 ///M3 TiAg | Heated Power Vaders | DDM Projector36 5000K 55W HIDs | DDM 3000K 35W HID Fogs
DDM Smoked Corners | DDM Weighted Shift Knob | K&N CAI | Mishimoto AL Rad w/Zionsville AL Shroud
Stewart HiPo Water Pump | Samco Hose Kit | 16" SPAL Puller Fan | Viper 5701LE Security
E36 OBC is now open! Join the effort: BF.C Thread | openOBC Wiki
just wanted to pop in and say, this sound really interesting. Good luck with everything
Hi All!
This is just to report some progress with the screen interface. The slower crystal worked very well. Here the output of some program to convert the text back from the serial interface acquired with the pc based analyzer:
Some additional dificulties in catching the very first characters to initialize the display, but i'll play around to get those. Somehow the config is back to german language.
The next step will be to drive this screen with the parallel... stay tuned.
all e31s operate on a similar m-bus to the early e36s IIRC, the difference between the two is that the e36 is an OBC and display, the e31 has an underdash OBC and in console display only. The fuel consumption is calculated in the same fashion as the e36, e30, etc, barring that there are 12 cylinders and different size injectors to compensate for. Speed signal should be the same, just curious if the e31 has more inputs for the check control errors. Do you possibly have a list of the errors in an e36 to compare the e31 against?
I'm planning on following your lead once the project is complete regardless of speculation on the e31 side
I also have a V1 and OBC integration is more than welcome
Last edited by Bryson; 03-09-2009 at 04:03 PM.
2.8 Z3 coupe + 6 speed || 200kW electric 1970 Jaguar XJ6
Very nice so far. Nice to see that some progress is being made, and rather quickly I might add.
Very cool project. Wish I had the time to offer more currently. I should be able to contribute to the basic framework once you guys get it going though.
Reminds me of back in the day; my Uncle and I once reverse engineered Pioneer's databus with an o-scope. That was a major pain.
Good luck, great progress!
1996 BMW 328iC - Sold.
2007 G35x - Daily Tourer.
2005 Subaru Impreza - Nasty weather entertainment.
1988 Mazda RX7 - LS1/2004r swap, 3600 RPM stall, heads/cam/TC76 Turbo, 2 Step, E85, Corvette Dana36 Rear, full suspension, yada yada... Bottled evil.
I'll be back in the game once my E36 quits breaking on me (fixing all my PS hoses and oil leaks has kept me away from the openOBC).
Thankfully Mefis is working on it so the project's not dead yet!
1999 ///M3 TiAg | Heated Power Vaders | DDM Projector36 5000K 55W HIDs | DDM 3000K 35W HID Fogs
DDM Smoked Corners | DDM Weighted Shift Knob | K&N CAI | Mishimoto AL Rad w/Zionsville AL Shroud
Stewart HiPo Water Pump | Samco Hose Kit | 16" SPAL Puller Fan | Viper 5701LE Security
E36 OBC is now open! Join the effort: BF.C Thread | openOBC Wiki
This project needs to go somewhere. I like where it's going, and I really like where it could be going. Something much like it has been somewhere on my absurdly long list of projects to do for a long time but I can never manage to keep one project on the table long enough to finish it. Hopefully having multiple people involved will keep this one from dying. Let me say right off the bat that I am "in" and quite capable of contributing to this, but that I come and go from time to time.
Random thoughts:
I looked in to interfacing with radar detectors a while back. The V1 is easy to interface with, but I didn't want to exclude the non-V1 crowd from the fun. I believe that most radar detectors have an external speaker output. A microcontroller would be able to universally interface with any radar detector by processing the analog audio signal. Each user could use a "learn" mode to teach it what the various sounds meant. Like so many other things, I looked in to this far enough to make sure it was doable, but never actually picked it up and ran with it.
Somebody mentioned SD cards at some point. They interface very well with pics thanks to the fact that they have an spi interface in addition to the SD protocol or whatever they call it. So pick a pic with an spi interface so later on you don't have to choose between picking a new one or bitbanging.
Speaking of SD cards, am I really the only one who would rather have a german chick say "the temperature has dropped below three degrees celsius - drive with care" rather than just that annoying "DING" and the flashing obc message? PCM wav files on a fat16 sd card + i2c interface on a pic + pwm output on a pic + access to audio preamps behind the factory stereo = german chick talking to you. Do it.
Someone also mentioned can bus. As it happens, this is exactly what I was working on when I was last active on the forums. I needed access to the can bus so I could hear when the door opened so the german chick could greet me. Unfortunately, I got busy with other things and haven't thought about it in months. I seem to recall concluding that I had hit a brick wall until I could find someone with carsoft/gt1 so I could use a logic analyzer to figure out what's going on. It seems that (on my e36) the can bus is not used for normal car operation and is only activated when an appropriate diagnostic tool is hooked up to initiate communication with various modules, so there just isn't any way I can analyze the communication if it isn't communicating. I also seem to recall that it is standard can for the most part, but has some kind of bmw specific initialization that is required before the modules will respond to anything.
I had previously given up on trying to find information on the e36 can bus, so please somebody chime in if you have any input on it. I'm about to take google for another spin, but I don't expect to find what I need. I only expect to find enough information to remind me of the exact circumstances that caused me to give up before. Also, if anyone has carsoft or a gt1 (or anything else I may not know about which will communicate with the car via can bus) it would be greatly appreciated if you could find another member close by with a logic analyzer and set a date to get together. I'm not attempting to volunteer anyone, but I'm pretty sure that I speak for everyone when I say that can bus will be an extremely valuable addition to a project like this. Those two wires are the most powerful wires in the entire car, feature-wise. You couldn't ask for better bang for your buck. I myself am located in the ArkLaTex area and I will drive for this.
Last edited by benemorius; 06-25-2010 at 01:45 PM.
Bookmarks