Jump to content

First attempt at basic hardware hacking: Modifying / Cloning Vintage Car Hardware


doctor_tran

Recommended Posts

I'm a complete n00b on hardware. I understand fundamentals of how electronics work but nothing about microcomputers or controllers. 

Wanted to share my first attempt at it in the hopes of showing other that it's somewhat straight forward and not as intimidating as it can seem. The logic I used can be applied to anything else. It also helped that I had a specific objective I wanted to accomplish. Having a specific mission in mind is always helpful in motivation. I recommend anyone trying to get into anything new have an objective they are trying to reach. 

I collect and work on vintage cars from the 80's up through the early 2000's. Some parts are no longer available (NLA) and used parts can cost a fortune. So to create a "backup" for myself and develop a process to help other collectors of my specific cars, or similar, I wanted to be able to clone electronic components that are NLA. 

The cars I'm focused on for this specific project are Alpina E36 models (BMW 3 series from 1995 thru 1999 that have been modified by a Bavarian company called Alpina). One of the options available from Alpina was a secondary digital display in front of the instrument cluster to display additional information. This display has specific versions for automatic transmission and manual transmission cars, and the difference was that the manual cars displayed battery voltage while the automatic cars displayed what gear the car was in. According to the parts diagrams, there is a computer under the dash that controlled the display. 

image.thumb.jpeg.5fc8a9d9501eb6784d049bb1ed3aa5dd.jpeg

 

The display computer for automatic cars are still available for purchase, but the manual versions are long gone. Meaning someone who has a failed computer or wants to convert their car to manual will run into trouble. Through other means, I already confirmed that the display themselves are electronically identical so I'll mainly focus on the display computer. 

I suspected that the hardware between the 2 version of the computers were the same (or nearly the same). Fortunately, I have 2 Alpina E36 cars, one manual and one automatic. Pulled both computers out and started comparing them. For those curious, I own a 1996 Alpina B3 3.2 Touring and a 1996 Alpina B8 4.6 Touring.

image.thumb.jpeg.14483f722b0f47d9837bc5d3c03517bc.jpeg

image.thumb.jpeg.aa8ebcbb272bebf197b09c5b12c387d4.jpeg

To summarize my findings, they are essentially the same except for some additional pins wired up to control a separate gear indicator computer. The computer has an NEC D8749HC microcomputer chip on the board and an NEC PD7001 analog to digital converter chip. Everything else were just dumb electronic components. This means theoretically one can change the firmware of an automatic computer to convert it into a manual computer. 

Doing some googling on those 2 chips, I determined that any firmware would be stored on the D8749HC. Looking up spec sheets is key in trying to figure out what's going on. You don't need to understand all the inner workings, just enough to know where firmware may be stored and what kind of chip it is for programming purposes. Upon further digging, I determined that the D8749HC chip is part of the Intel MCS-48 family of microcontroller. This is important in determine how to program the chip. 

A very popular programmer on the market is the XGecu TL866 or T56. However, they do not support the MCS-48 family of chips. After looking around, I was able to find that the only consumer available programmer that supported the MCS-48 was the Willem Programmer. There are various versions out there so it may be different from what I'm showing here. This programmer requires a hardware parallel port (USB to parallel will not work) so I had to fire up an old Windows XP laptop. The USB port on the board is only for additional power. 

image.thumb.jpeg.bb6952f20e5271cb807f5f438d03893b.jpeg

 

I carefully desoldered the microcomputer from the boards and was able to successfully read the firmware off of the chips into a BIN file. I purchased additional D8749HC chips to copy any version of the firmware I want while keeping the originals stored safely somewhere. I also soldered on a socket onto the board so I can easily install or remove the chips in the future. 

image.thumb.jpeg.4b0ee548a91ecae0d8a0399da3446766.jpeg

image.thumb.jpeg.f5491c738263432af1b35173d4d7c5a0.jpeg

 

It was a general success and now I am able to repair or modify any display computer for this model car. 

Since I have the 2 BIN files now, I'll eventually reverse engineer the firmware to see if I can somehow add additional features to the computer (like a custom start up sequence). That'll be an adventure for another weekend. 

image.thumb.jpeg.d00f3dfb3881a17b35312ff778a6fcbf.jpeg

 

  • Like 10
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...