ST Microcontroller ST30F772A - Page 1
Forum section: electronics / general

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 12, 2019, 12:59:11 am
content: Hello,I have run into something in my hobby of fixing instrument clusters and other electronics. Long story short the 2007-2014 GM truck/SUV has a ST30F772A Microcontroller that fails. it seems to be a bond wire or something because if you heat them up they will work until it cools back off. I uploaded a video on it and another tech chimed in and said its a pretty common issue. I know its obsolete but It seems I can find some old stock of them from china but I have no idea how to flash them. Obviously step one would be to dump a good one then just flash the new ones with that image. how would one go about dumping/flashing. I'm guessing I would need some sort of JTAG or something like that? I dont have a datasheet for the ST30F772A but I found ST30F772i would they happen to be the same?BTW to be clear this is out of my skill level but I want to learn. Thanks in advance guys/girls!

author: jhpadjustable
author_rank: Frequent Contributor
timestamp: November 12, 2019, 10:28:26 am
content: Yes, it's that simple. But that's not simple. Don't assume youcandump a good one. Almost any microcontroller offers some sort of code protection feature which disables access to the flash via the debug/test port. Automakers tend to use code protection widely for reasons good (protecting emissions components from tampering), bad (John Deere's spare parts racket) and ugly (protecting emissions components from auditing).You have to read the datasheets and other supporting documentation. Unfortunately, data on that particular chip seems to be hard to come by. But if you google you may find tools and software to do it from the shady types who reset odometers.

author: GromBeestje
author_rank: Frequent Contributor
timestamp: November 12, 2019, 09:46:32 pm
content: ST30F772i sounds close enough. Probably some other features or package.On first glance it seems neither JLinkExe nor OpenOCD support ST30-series MCU.So... even if you can connect with JTAG, and the device has no protection enabled, it is not a trivial task to read or write flash.

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 12, 2019, 11:00:24 pm
content: So I took a picture. It has a header on it. I dont think its Jtag because its got 1 ground and 4 pins at 5volts. Jtag is only 3.3 or 1.8 volts correct?after looking at it today I don't think the ST30F772A and ST30F772i have the same pinout.Quote from: GromBeestje on November 12, 2019, 09:46:32 pmBummer but I am going to still look into this more. Thank you for checking the software I was about to do that after looking into how jtag works openocd was about to get installed to look at it..

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 13, 2019, 12:38:13 am
content: I looks like UDE2+ and MemTool is what I need... I am guessing this is something out of my budget since i cant find it on eBay and the PLS Home wants me to call for a quote... call for quote = can't afford.

author: GromBeestje
author_rank: Frequent Contributor
timestamp: November 13, 2019, 09:45:48 am
content: Quote from: Fixed_Until_Broken on November 12, 2019, 11:00:24 pmJTAG is whatever voltage the MCU runs on. If the MCU runs at 5 Volts, JTAG runs at 5 Volts.If it does full JTAG, you'll have TMS TCK TDO TDI for the data. You'll need at least a GND. VCC is optional and serves as a reference voltage for the debugger. Some debuggers require this as they do level shifting. Modern ST parts are 5 Volt tolerant on their JTAG pins. I don't know if this was the case in the era of this chip. Nevertheless, I'd expect at least 5 pins if it were a JTAG connector. So this might work.One thing about JTAG is, even if you don't know the chip, you should be able to scan the chain and see something is there. So you should be able to verify this is a JTAG port.

author: DBecker
author_rank: Frequent Contributor
timestamp: November 13, 2019, 06:55:14 pm
content: Most automotive ECU MCUs are 5V using robust (older, well proven, stable) processes. That's changing, but more slowly than you might expect. Automotive sensors typically output a 5V ratiometric analog or 5V swing digital (PWM or SENT protocol) signal, and the designers are understandably conservative. There is still a niche market for improved 5V MCUs, with most of the designs running a modern low-voltage core with 5V I/O structures.BTW I wouldn't expect a broken bond wire to act that way. That would be more likely to cause crashes with vibration than failure when cold.

author: temperance
author_rank: Super Contributor
timestamp: November 13, 2019, 07:22:58 pm
content: An other thing to try is to see if the external oscillator starts. Those devices boot from an internal RC oscillator and then try to switch on the external oscillator. They have a register where it signals if the oscillator started...If not, try feeing a 4MHz signal into the oscillator input.

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 13, 2019, 10:42:39 pm
content: Quote from: DBecker on November 13, 2019, 06:55:14 pmYes most sensor are in the 5 volt range. The cluster doesn't actually deal with any of the sensors in GM stuff newer than 03 but I am sure all the MCU's are 5 volt on them anyway but they probably could have gotten away with 3.3 in the cluster. The PCM, BCM deal with all the sensors. The cluster gets all the data via GM 1 wire. the MCU is definitely 5 volt on here.What do you think the failure is than? I was just guessing it was the only thing I could think of that heat could change.Quote from: GromBeestje on November 13, 2019, 09:45:48 amwhat tool would you suggest. I was going get a BUSBLASTER but it looks like that only supports 3.3v or 1.8v anything like this support 5 volt jtag?

author: thm_w
author_rank: Super Contributor
timestamp: November 14, 2019, 01:52:08 am
content: Quote from: Fixed_Until_Broken on November 13, 2019, 10:42:39 pmThere are so many things that can be affected by raising temperature: resistance goes up, capacitance goes down, voltage references drift, etc.Have you tried specifically heating other parts of the board? Does the problem go away fastest when its the IC that is heated, or could it be another component? Cooling makes it fail faster? Does that large SMD capacitor test ok?If you can get an oscilloscope (or even DMM) on the test points/supplies and compare failed state / working state voltages that may give you clues as well.

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 14, 2019, 03:42:24 am
content: Quote from: thm_w on November 14, 2019, 01:52:08 amCaps are all good. Here is the Video I did on it.https://youtu.be/rWpVXiy3ItAand Jeff and I talked about it a little more out side of the commit section. basically just saying that I would look into flashing them.

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 19, 2019, 04:28:17 am
content: Sorry its been a few days haven't really messed with this project. I looked again an I had the chip oriented wrong with the datasheet.The ST30F772I pin out looks like its probably the same and that TP9-13 are Jtag.TP9 JTDOT10 JTCKT11 JTMST12 JTDIT13 JTRSTSo now my question is what is a decent tool that supports 5 volt jtag? I'd start poking at this thing to see if I can get anywhere. the ft2232h tools look like they are tolerant to being feed 5 volts?

author: thm_w
author_rank: Super Contributor
timestamp: November 19, 2019, 11:36:17 pm
content: Quote from: Fixed_Until_Broken on November 19, 2019, 04:28:17 amhttps://www.allaboutcircuits.com/technical-articles/getting-started-with-openocd-using-ft2232h-adapter-for-swd-debugging/Seems like it would work as the pin is 5V tolerant. It will output 3.3V (should be fine).Personally I use a j-link v9 clone that has a 3.3/5V switch, but I don't see ST30F772A in the list of supported devices.

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 22, 2019, 02:01:25 am
content: I went a head and got both a J-link clone and FT2232H on the way from china so I will report back once they get here in 2 weeks to a month. It was less than $25 for both so if it doesn't pan out my feeling will not be hurt and I am sure I can find something else to poke at with them.

author: poorchava
author_rank: Super Contributor
timestamp: November 22, 2019, 07:35:09 am
content: Actually it probably won't be fine, unless the uC has a TTL compatible GPIO (HCT style).Stanard CMOS typically has VIL <0.3VDD and VIH>0.7VDD, which at 5V is 1.5 and 3.5V respectivaly. So having VOH at 3.3V max it might not work reliably. Kind of depends on particular unit.

author: Scrts
author_rank: Frequent Contributor
timestamp: November 22, 2019, 02:38:06 pm
content: Did you try removing the conformal coating and reheating/resoldering the pins? I work in automotive and I've never seen a TQFP microcontroller having issues with wire bonding inside the package, when the micro is automotive grade... It goes through extensive high-heat and cold testing, thermal shock, etc... But I've seen issues with conformal coating a lot, because the thermal expansion coefficient is different than the PCB.

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: November 23, 2019, 01:45:33 am
content: Quote from: Scrts on November 22, 2019, 02:38:06 pmYes and since Pics or didn't happen I've attached one now. Sorry for the crap photo Ive got a really nice Amscope but a crap camera for it. I'd take more but its hard to see on the camera. that stuff was PIA to get off its more like a wax than anything.Quote from: poorchava on November 22, 2019, 07:35:09 amI figured that would be the case thats why I got both. The FTDI tool seemed like a great piece of gear to have around and for $11 I was sold lol.

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: December 16, 2019, 10:39:18 pm
content: Update.So I got the clone Jlink... it was usless junk just showed up as SN-1 and didn't respond to the software. That is what you get for being cheap. So I just bough a real Jlink (I did go with EDU since I am just learning here I am not doing production or anything)... Success I get a clean dump off it Pretty confident in the dump since a lot of it is in plain English

author: Fixed_Until_Broken
author_rank: Regular Contributor
timestamp: December 17, 2019, 09:58:01 pm
content: https://youtu.be/hbp7o86-uhoso I recorded getting a successful dump and Flashing it. Next update will be in a month or so when I get one of the MCUs from china ordered it last night.