I'm trying to get a handle on how this all works, and at the same time document it for placement into the wiki on this site (as more understanding is built)
As more of a general info thread than an ME7 specific thread. And hopefully folks don't find this type of thread or questioning a waste of time.
How do you go about identifying a candidate ECU for flashing in circuit, through ODB port or other method?
I am assuming you have to open ECU and identify memory chip.
look up datasheet on memory chip to find out if it is re-flashable or not.
Identify if chip can be flashed in circuit (called out somewhere on datasheet?)
Identify if pins required to flash chip in circuit are taken out anywhere on circuitboard.
Are there standard symbols and specification that should be looked for in terms of the communication and boot setting pins?
For example the AM29F800BB-70SI that was in my 2001 a4 b4 1.8t box. Datasheet
http://pdf1.alldatasheet.com/datasheet-pdf/view/55524/AMD/Am29F800BB-70SI.htmlThe datasheet indicates it can be flashed in-system...
This device is designed to be programmed in-
system with the standard system 5.0 volt VCC supply."
Ok, there's one answer... but now we need to be sure the board has been made to allow this... as well as better understand the protocol...
Is this an important hint?
The device is entirely command set capatible with the JEDEC single-power-supply Flash standard.'
It appears from the datasheet that the 'CE' (Chip Enable), 'OE' (Output Enable) and 'WE' (Write Enable) are particularly important for reading from or writing to the chip.
DQ8–DQ15
BYTE#
BYTE#
= VIL
Operation CE# OE# WE# RESET# A0–A18 DQ0–DQ7 = VIH
Read L L H H AIN DOUT DOUT High-Z
DIN DIN High-Z
Write L H L H AIN
These appear to control the chip state or expectancies, i.e. prepare to write or prepare to read from the memory.
If I am reading this correctly, the following pin(s) are actually used for the data transfer...
DQ15/A-1 = DQ15 (data input/output, word mode),
A-1 (LSB address input, byte mode)
So, in order to program this chip in circuit, the CE, WE and OE have to be manipulated correctly, and then the DQ15/A-1 is passed data. Is that accurate?
Is there generally some device such as a max232 which sits between the USB Dongle and the flash chip itself to change the level to 0-5v? Or do the dongles themselves put out 0-5 volts for communication?
Is there generally some other logic device between the dongle and the chip to control the CE, WE and OE pins after taking input from the dongle?
And, what pin is used to get into boot mode (for the folks that have been using Galletto with other vehicles)-- is this the 'RESET' pin which does the following?
The hardware RESET# pin terminates any operation
in progress and resets the internal state machine to
reading array data. The RESET# pin may be tied to the
system reset circuitry. A system reset would thus also
reset the device, enabling the system microprocessor
to read the boot-up firmware from the Flash memory.'
Thanks for any insight that can be given... and if these are mundane questions with answers easily availabe through other documentation, please point toward some..
Camden