Re: raw data for MGF trip computer
Posted: Fri Dec 01, 2017 11:46 pm
To illustrate a bit more the magnitude of this project, here are some slides I have made so far as part of my project documentation:
Here's an overview of the different modules and components that I plan to install in my MG (click on images for a larger view):
Here you can see the modular design of the trip computer. The engine data module in the back of the car will transmit all the gathered data to the trip computer head unit in the front of the car. This will be done using the I2C standard. Likewise, the convenience module will also transmit data to the head unit via I2C. Think of I2C as a low-rent alternative to CAN. Yes, I know, not even nearly the same, but it helps to think along those lines.
Note the (hopefully visually appealing) logo I have made for the project...
This is meant to keep trademark worries to a minimum when the time comes that the whole project will be published "open-source" for anybody to recreate for free. No amount of profit that could realistically be made from selling fully-assembled MG trip computers would reimburse me for the two years I have already spent developing it. So I will be offering all the schematics, microcrontroller program codes and other data for download, for free. And all graphics will contain this logo and variations of it in lieu of the official MG logo.
Anyway, moving on, I don't have a slide for the trip computer head unit with the TFT display yet, as I'm in the process of migrating that module to a much more powerful ESP32 microcontroller, which will offer 32-bit dual-core technology at 230 MHz. But what I do have is a schematic for the engine data module:
This is the most complex part of the project so far in terms of hardware and wiring. It is where all the engine data is gathered. I never bothered to try to reverse engineer the Rover OBDI codes to get my data that way, but then, under OBDI, a lot of data that's readily available in OBDII isn't generated in the first place, such as engine oil temperature, injection timing and vehicle speed. My module measures all that.
Also, if there is ever going to be an OBDII variant of my trip computer, naturally there will be no engine data module. Instead, I will connect an OBDII interface module to the car's OBDII port. They can be had for around £20 from Sparkfun.
Next, we've got the convenience module.
This is where data such as inside and outside air temperature or the health of the exterior lights is monitored. Also, I will install a windscreen wash pump with a "third lead", which will sense when the windscreen wash level is low. I've already posted pictures of perfboard prototypes both of the convenience module and the engine data module further up in this thread.
And now here is a more detailed desciption of those wondrous lamp check modules. In short, they are a low-cost (when bought used) all-in-one solution to monitor your car's exterior lamps, and they were used in many Audi/VW vehicles in the mid-1990s to mid-2000s.
I will need two of these. The wiring of the lights is markedly different in Audi/VW cars compared to the looms found in MGFs and TFs. So much so that the easiest way to implement lamp check functionality is actually to install one such unit in the front of the car near the fuse panel under the steering wheel, which will only monitor the headlamps, and a second unit in the boot of the car where the brake- and taillight looms divide towards the individual lamps.
Well, and finally, I've got the MkI speed transducer that I have also already mentioned.
This speed transducer is necessary for MkI cars with the cable speedo, because like I said, you will not get a speed signal from the cable speedo that is accurate enough to do precise calculations with, such as fuel consumption, average speed, etc. On pre-OBDII MGF MkII, the factory speed transducer will be sufficient to measure speed accurately.
That's all, folks...
I am always open to ideas and suggestions.
Here's an overview of the different modules and components that I plan to install in my MG (click on images for a larger view):
Here you can see the modular design of the trip computer. The engine data module in the back of the car will transmit all the gathered data to the trip computer head unit in the front of the car. This will be done using the I2C standard. Likewise, the convenience module will also transmit data to the head unit via I2C. Think of I2C as a low-rent alternative to CAN. Yes, I know, not even nearly the same, but it helps to think along those lines.
Note the (hopefully visually appealing) logo I have made for the project...
This is meant to keep trademark worries to a minimum when the time comes that the whole project will be published "open-source" for anybody to recreate for free. No amount of profit that could realistically be made from selling fully-assembled MG trip computers would reimburse me for the two years I have already spent developing it. So I will be offering all the schematics, microcrontroller program codes and other data for download, for free. And all graphics will contain this logo and variations of it in lieu of the official MG logo.
Anyway, moving on, I don't have a slide for the trip computer head unit with the TFT display yet, as I'm in the process of migrating that module to a much more powerful ESP32 microcontroller, which will offer 32-bit dual-core technology at 230 MHz. But what I do have is a schematic for the engine data module:
This is the most complex part of the project so far in terms of hardware and wiring. It is where all the engine data is gathered. I never bothered to try to reverse engineer the Rover OBDI codes to get my data that way, but then, under OBDI, a lot of data that's readily available in OBDII isn't generated in the first place, such as engine oil temperature, injection timing and vehicle speed. My module measures all that.
Also, if there is ever going to be an OBDII variant of my trip computer, naturally there will be no engine data module. Instead, I will connect an OBDII interface module to the car's OBDII port. They can be had for around £20 from Sparkfun.
Next, we've got the convenience module.
This is where data such as inside and outside air temperature or the health of the exterior lights is monitored. Also, I will install a windscreen wash pump with a "third lead", which will sense when the windscreen wash level is low. I've already posted pictures of perfboard prototypes both of the convenience module and the engine data module further up in this thread.
And now here is a more detailed desciption of those wondrous lamp check modules. In short, they are a low-cost (when bought used) all-in-one solution to monitor your car's exterior lamps, and they were used in many Audi/VW vehicles in the mid-1990s to mid-2000s.
I will need two of these. The wiring of the lights is markedly different in Audi/VW cars compared to the looms found in MGFs and TFs. So much so that the easiest way to implement lamp check functionality is actually to install one such unit in the front of the car near the fuse panel under the steering wheel, which will only monitor the headlamps, and a second unit in the boot of the car where the brake- and taillight looms divide towards the individual lamps.
Well, and finally, I've got the MkI speed transducer that I have also already mentioned.
This speed transducer is necessary for MkI cars with the cable speedo, because like I said, you will not get a speed signal from the cable speedo that is accurate enough to do precise calculations with, such as fuel consumption, average speed, etc. On pre-OBDII MGF MkII, the factory speed transducer will be sufficient to measure speed accurately.
That's all, folks...
I am always open to ideas and suggestions.