Electronics-Related.com
Forums

Bit rot in micro controllers?

Started by Joerg December 11, 2021
On 12/12/2021 9:12 AM, Wond wrote:
> On Sat, 11 Dec 2021 11:51:11 -0800, Joerg wrote: > >> Just repaired our fridge when, according to Murphy's law, the next >> appliance became shaky. Our pellet stove has twice refused to be turned >> off. Unfortunately, instead of analog it's all buttons that are operated >> via port pins of a micro controller. Pressing several of those >> willy-nilly made the on/off button work, at least long enough to turn it >> off. When the circuit board is cold the botton always works but not when >> warm after running the stove overnight. >> >> The micro controller is a Winbond W78E52BF-24 running on a 12MHz >> crystal. It is based on what they call electrically erasable MTP-ROM >> with which I assume they mean EEPROM. Date code is 2001 and that is also >> when we had that pellet stove installed. >> >> Can these things develop loss of flash memory (bit rot) this soon, after >> only two decades? Any remedy short or reprogramming or is it toast? > > OTOH adding wood to the stove is a pleasant chore, even in the middle > of the night.
Would you make the same claim wrt "pellets"? :>
On Sat, 11 Dec 2021 11:51:11 -0800, Joerg <news@analogconsultants.com>
wrote:

>Just repaired our fridge when, according to Murphy's law, the next >appliance became shaky. Our pellet stove has twice refused to be turned >off. Unfortunately, instead of analog it's all buttons that are operated >via port pins of a micro controller. Pressing several of those >willy-nilly made the on/off button work, at least long enough to turn it >off. When the circuit board is cold the botton always works but not when >warm after running the stove overnight.
I don't want a kitchen stove that is uP controlled. That's a horrible environment for cheap electronics. If you want to buy a non-digital kitchen range, expect to pay a large multiple over the GE-type electronic junk. Wolf, Viking, Bosch do good brass. Our house came with a double oven. For some reason, one section has electronic controls and one has the classic pneumatic-mechanical thermostat. Guess which one still works. -- I yam what I yam - Popeye
On 12/12/21 3:06 AM, Sylvia Else wrote:
> On 12-Dec-21 9:36 pm, Jasen Betts wrote: >> On 2021-12-12, Sylvia Else <sylvia@email.invalid> wrote: >>> On 12-Dec-21 11:14 am, Jeff Liebermann wrote: >>>> On Sat, 11 Dec 2021 11:51:11 -0800, Joerg <news@analogconsultants.com> >>>> wrote: >>>> >>>>> The micro controller is a Winbond W78E52BF-24 running on a 12MHz >>>>> crystal. It is based on what they call electrically erasable MTP-ROM >>>>> with which I assume they mean EEPROM. Date code is 2001 and that is >>>>> also >>>>> when we had that pellet stove installed. >>>>> >>>>> Can these things develop loss of flash memory (bit rot) this soon, >>>>> after >>>>> only two decades? Any remedy short or reprogramming or is it toast? >>>> >>>> MTP-ROM is suppose to be good for up to 1 million write cycles: >>>> <https://anysilicon.com/semipedia/multi-time-programmable-mtp-memory-ip/> >>>> >>>> However, after only 1,000 erase/write cycles, the erase/write voltages >>>> begins to change.&nbsp; See Fig 15: >>>> <https://onlinelibrary.wiley.com/doi/full/10.4218/etrij.15.0114.1428> >>>> &nbsp;&nbsp;&nbsp;&nbsp; "After 1,000 erasing/writing cycles at a program >>>> &nbsp;&nbsp;&nbsp;&nbsp; voltage of &plusmn;6 V with a write time of 5 ms, the >>>> &nbsp;&nbsp;&nbsp;&nbsp; VT of a programmed cell is lowered from 2.92 V >>>> &nbsp;&nbsp;&nbsp;&nbsp; to 2.9 V and the VT of an erased cell is raised >>>> &nbsp;&nbsp;&nbsp;&nbsp; from -1.3 V to -0.5 V." >>>> If the MTP-ROM device initially worked properly, and then slowly >>>> started failing to recognize button pushes, that might be the problem. >>>> Assuming you run the pellet burner for half the year and turn it >>>> on/off once per day, that would be: >>>> &nbsp;&nbsp;&nbsp; 180 days * 1 cycle/day * 20 years = 3,600 erase/write cycles >>>> which might be sufficient to see the problem. >>>> >>>> Note:&nbsp; I don't have any experience with the Winbond W78E52BF-24. >>>> Therefore, I don't know if it has this problem. >>>> >>>> >>> It doesn't seem likely that the system is writing its flash every time >>> it is turned on, or off. Indeed, it doesn't sound like it has a reason >>> to write its flash at all, with flash being used merely because it was >>> cheaper than getting a custom ROM. >>> >>> Sylvia >> >> It could be storing thermostat settings in eeprom,&nbsp; but that seems >> unrelated to the fault reported. >> > > Even where the device stores some information, I would expect it to do > so only when the information changes. >
It definitely doesn't commit any button presses to EEPROM as it forgets every single one of them after a power outage.
>> >> if it doesn't like the heat the fault is probably some heat sensitive >> part, >> an electrolytic capacitor for example. >> > > I'm inclined to agree that that's more likely. >
That sure is my hope though then I'd expect the LED bar graph to become iffy and it doesn't. -- Regards, Joerg http://www.analogconsultants.com/
On 12/12/21 9:18 AM, Don Y wrote:
> On 12/12/2021 3:56 AM, Tom Gardner wrote: >> On 12/12/21 00:26, Sylvia Else wrote: >> >>> It doesn't seem likely that the system is writing its flash every >>> time it is turned on, or off. Indeed, it doesn't sound like it has a >>> reason to write its flash at all, with flash being used merely >>> because it was cheaper than getting a custom ROM. >> >> Such things are done in some instruments, to save the >> current control settings between sessions. > > I don't believe that device can "program itself" at the byte level. > I suspect it is just an EPROM alternative, as Sylvia suggested. >
Yup, looks like it. -- Regards, Joerg http://www.analogconsultants.com/
On 12/12/21 4:15 AM, John Walliker wrote:
> On Sunday, 12 December 2021 at 09:38:30 UTC, Michael Schwingen wrote: > >>> Can these things develop loss of flash memory (bit rot) this soon, after >>> only two decades? Any remedy short or reprogramming or is it toast? >> Quite probably yes - I remember a series of TFT monitors some years ago >> where that happened to the on-board controller. Raising/lowering VCC may >> help a bit (if it is not read-protected, you might try to read the memory at >> different VCC levels and see if you can get correct data, and then >> re-program).
Oh, that doesn't sound good. In that case I'd rather redesign it to fully analog. Seems like less work and then it'll never fail again.
> > My HP vector network analyzer developed "bit rot" when it was around 25 years > old. One bit in one of the many uv-erasable eproms changed state. I found > it by varying the supply voltage and looking for the first bit to change. I > programmed a new eprom with the edited data and it has been working fine > ever since.
My Wavetek 23 funtion generator lost EPROM content as well but not after 20 years. I still have some HP gear, HP3577A and HP4191A. Time to let those go I guess, now that I retired. -- Regards, Joerg http://www.analogconsultants.com/
On 12/12/21 1:46 AM, Martin Brown wrote:
> On 11/12/2021 19:51, Joerg wrote: >> Just repaired our fridge when, according to Murphy's law, the next >> appliance became shaky. Our pellet stove has twice refused to be >> turned off. Unfortunately, instead of analog it's all buttons that are >> operated via port pins of a micro controller. Pressing several of >> those willy-nilly made the on/off button work, at least long enough to >> turn it off. When the circuit board is cold the botton always works >> but not when warm after running the stove overnight. >> >> The micro controller is a Winbond W78E52BF-24 running on a 12MHz >> crystal. It is based on what they call electrically erasable MTP-ROM >> with which I assume they mean EEPROM. Date code is 2001 and that is >> also when we had that pellet stove installed. >> >> Can these things develop loss of flash memory (bit rot) this soon, >> after only two decades? Any remedy short or reprogramming or is it toast? > > My instinct would be there is a failing electrolytic capacitor somewhere > that is allowing the CPU to see glitches that blind it to the on/off > button. ...
I hope so as that's wasy to fix :-) Have to wait for warmer days to look though because the missus doesn't like it cold downstairs.
> ... Some polling algorithms are a bit stupid so another button stuck > down might also have the same effect. You might have hoped that there > would be a failsafe emergency stop button on something that makes fire! > > I never trust CPUs for safety interlocks! There is good reason. >
Luckily this stove has hardware safety interlocks for vacuum and proof of fire which the CPU cannot override. -- Regards, Joerg http://www.analogconsultants.com/
On 12/12/21 3:05 AM, Tom Gardner wrote:
> On 11/12/21 19:51, Joerg wrote: >> Just repaired our fridge when, according to Murphy's law, the next >> appliance became shaky. Our pellet stove has twice refused to be >> turned off. Unfortunately, instead of analog it's all buttons that are >> operated via port pins of a micro controller. Pressing several of >> those willy-nilly made the on/off button work, at least long enough to >> turn it off. When the circuit board is cold the botton always works >> but not when warm after running the stove overnight. >> >> The micro controller is a Winbond W78E52BF-24 running on a 12MHz >> crystal. It is based on what they call electrically erasable MTP-ROM >> with which I assume they mean EEPROM. Date code is 2001 and that is >> also when we had that pellet stove installed. >> >> Can these things develop loss of flash memory (bit rot) this soon, >> after only two decades? Any remedy short or reprogramming or is it toast? > > I'd look for other solutions before considering bit rot. > > Obviously the connectors and switches need to be examined > and possibly IPA or DeOxit applied. > > Electrolytic capacitors are the next failure point. Sometimes > they are obviously "distressed", sometimes subtly faulty. > > Check the PSU rails for voltage and transients, of course. > > I had an SMPS where something would: > &nbsp; - take a minute to start > &nbsp; - turn off then on, immediately start > &nbsp; - turn off for an hour then on, 50s to start > &nbsp; - turn off for 12 hours then on, 60s to start > Debugging that was one /good/ use case for a DSO. > > Turned out to be a dicky electrolytic fed by a high > value resistor; it was almost as if the capacitor > was so "dry" had to reform the barrier before it > would work.
This has a linear power supply but yes, when the weather gets warmer I'll take it apart and check. -- Regards, Joerg http://www.analogconsultants.com/
On 12/12/21 8:54 AM, Martin Brown wrote:
> On 12/12/2021 16:02, Hul Tytus wrote: >> In the 60's & 70's 20 years was mentioned as a life span for diffused >> silicon. Somebody's diffusion rate. > > Diffusion rate is *very* temperature dependent. I can't see a small > microcontroller at a modest clock rate running particularly hot. >
However, this one live in a pellet stove. Though it doesn't get sizzling hot, you can still touch it. -- Regards, Joerg http://www.analogconsultants.com/
On 12/12/21 9:19 AM, Don Y wrote:
> On 12/12/2021 9:12 AM, Wond wrote: >> On Sat, 11 Dec 2021 11:51:11 -0800, Joerg wrote: >> >>> Just repaired our fridge when, according to Murphy's law, the next >>> appliance became shaky. Our pellet stove has twice refused to be turned >>> off. Unfortunately, instead of analog it's all buttons that are operated >>> via port pins of a micro controller. Pressing several of those >>> willy-nilly made the on/off button work, at least long enough to turn it >>> off. When the circuit board is cold the botton always works but not when >>> warm after running the stove overnight. >>> >>> The micro controller is a Winbond W78E52BF-24 running on a 12MHz >>> crystal. It is based on what they call electrically erasable MTP-ROM >>> with which I assume they mean EEPROM. Date code is 2001 and that is also >>> when we had that pellet stove installed. >>> >>> Can these things develop loss of flash memory (bit rot) this soon, after >>> only two decades? Any remedy short or reprogramming or is it toast? >> >> &nbsp;&nbsp; OTOH adding wood to the stove is a pleasant chore, even in the middle >> of the night. > > Would you make the same claim wrt "pellets"?&nbsp; :> >
:-) A friend tried that for kicks, throwing small chunks of oak and pine into the burn pot. The results was that he had to replace the bearings of the exhaust blower which was a nasty job. In hindsight I should have installed a wod stove downstairs, just like we did upstairs. Less complicated, no misson-critical electronics and, therefore, more reliable. -- Regards, Joerg http://www.analogconsultants.com/
On 12/12/21 9:17 AM, Don Y wrote:
> On 12/11/2021 12:51 PM, Joerg wrote: >> Just repaired our fridge when, according to Murphy's law, the next >> appliance became shaky. Our pellet stove has twice refused to be >> turned off. Unfortunately, instead of analog it's all buttons that are >> operated via port pins of a micro controller. Pressing several of >> those willy-nilly made the on/off button work, at least long enough to >> turn it off. When the circuit board is cold the botton always works >> but not when warm after running the stove overnight. >> >> The micro controller is a Winbond W78E52BF-24 running on a 12MHz >> crystal. It is based on what they call electrically erasable MTP-ROM >> with which I assume they mean EEPROM. Date code is 2001 and that is >> also when we had that pellet stove installed. >> >> Can these things develop loss of flash memory (bit rot) this soon, >> after only two decades? Any remedy short or reprogramming or is it toast? > > More likely something analog -- power supply sag/spikes, bad caps, a > floating configuration pin, etc. > > Can you verify that the processor is actually *running* when it > "misbehaves"? > (i.e., activity on ANY pins?)
It is definitely running because it continues to issue pulses for the auger motor, feeding the pellets into the burn pot. -- Regards, Joerg http://www.analogconsultants.com/