Embedded Controllers AGAIN

greenspun.com : LUSENET : Electric Utilities and Y2K : One Thread

I have been following Y2K and Embedded Controllers for a while and have been in contact with some manufaturers of the afore mentioned items.

Its 1985 so lets design an embedded controller.

Trivia Question .. How many different designs are there in use today?

We take a DS1287A, a Motorolla 6800, An EEprom and maybe use an AISC to store our firmware. We use the DS1287a RTC as a timer only (its cheaper). We want to get fancy and allow this to do a lot of functions. During the design stage of the controller, we start running into problems but finally do some work arounds to get things working. (any software designers or engineers run into this problem before?) We do all our testing and everything works properly. We do our run on AISC's, assemble the controller and make a small fortune. Of course we advanced (impossible) the RTC, with an embedded battery to maintain the time to 2000 where it rolls over to 00 and checked that all functions will work under those conditions. No, I don't remember doing that test. The above story is purely hypothetical, but simplifies the story of the embedded controller. Date use ,or lack of date use may not be relevant to potential problems.

Is my information incorrect? How do we test if we can't access the clock. Changing the time on a microwave oven does not alter the RTC. No I don't care if microwave ovens fail and burn all our food. If the problem exists, there will be no power to run them.

Does anyone have any comments on this. I will be watching closely over the next few days.

Tom Vardon CNE CET

-- Anonymous, February 24, 1998

Answers

I think that Tom is very close to the mark with his hypothesis on the design of embedded equipment. For some time now I have thought along the same lines, except I don't believe that the design engineers (pre late 90s) would have even thought about testing for the Year 2000 at all.

Even equipment designed in the late 90s I have my doubts have been design with the Year 2000 in mind.

Regards, Kim Smith

-- Anonymous, February 24, 1998


Thanks for the input Kim. I'm happy get a response on this already. Just to let people know, I was being a bit(?) facetious on the fact that a designer tested for 2000 at that time. I recall working on a design for a control system in November 1996 and Y2K was not mentioned at that time. (Isn't that a software (COBOL) problem?) This system consisted of 52 P@ID's, each with a lot of control. I'll bet it's not compliant.

-- Anonymous, February 25, 1998

I am also interested if this "Holy Grail" of a Y2K embedded system problem exists. To rephrase the question, does a device exist, with no apparent date source (keyboard, or other communication line to enter a date), or date output, that could fail on 1/1/2000 or any other spike date? It would have to have a factory set, battery backed, RTC, that meets the above conditions, but I am not aware of any example (and we have found plenty of other Y2K problems at my nuclear power plant. Does anyone have a single concrete example of this type of Y2K problem, or is it just a possibility/myth to keep our minds open to all the possibilities.

-- Anonymous, March 10, 1998

I've designed and programmed embedded controllers for 8 years and the whole scenario does not make sense. RTC chips don't come with the current date and year programmed into them and the when the manufacturers make them, they haven't got a clue when they will be used. They are stored on the shelf with either a random value or some default value (00) in their registers. In order to keep time they need power and a clock signal (a precision frequency square wave). Think of this: when RTCs are built into PCs they still need a battery or capacitor backed oscillator and CMOS static RAM chip attached in order to keep the date current while the power is off. So when production takes the RTC chip off the shelf and places it into the printed circuit board, it probably starts out with some date other than the correct one. Then, unless the device has a way to set the date (including the year), the year is just a byte size counter that increments once a year (one year after the device was first powered up, assuming the device is never powered down). If the device is powered down, the RTC probably resets itself to the factory default or some random number. If you cannot access the clock to set it, it has probably never been set. I would not lose any sleep over it.

-- Anonymous, April 06, 1998

Response to Embedded Controllers AGAIN

> RTC chips don't come with the current date and year programmed into > them and the when the manufacturers make them, they haven't got a > clue when they will be used. They are stored on the shelf with > either a random value or some default value (00) in their registers. > In order to keep time they need power and a clock signal (a > precision frequency square wave). Think of this: when RTCs are built > into PCs they still need a battery or capacitor backed oscillator > and CMOS static RAM chip attached in order to keep the date current > while the power is off.

Actually, you ca buy real-time clock "chips" with all that stuff built in; they'll keep time just as well sitting on a shelf as they would in a system. But I can't imagine a system that used one that didn't have a means of setting the time and date. There are two reasons for this:

1) The manufacturer of the equipment utilizing the RTC module does not know what time-zone the thing will installed in, so he *has* to give the end-user a means of setting the correct time and date.

2) Long-term drift. Over a typical life of 10 years, these things will drift. One part per million is still about 30 seconds in a year. Again, this necessitates giving the user a means of entering the correct time and date.

Thus, I think you can be 99% certain that a particular piece of equipment does not care what date it is if there's no means of setting the time and date.

Thankfully, I have a clear conscience. None of the stuff I've designed over the years knows (or cares) what the date is.

-Uwe-

-- Anonymous, April 07, 1998



I think that Steve Shannon has hit the nail on the head without realizing it. His reference to the default time in the RTC chip was "(00)", notice that the value only contains two digits. This will not be a problem unless the using device does some kind of averaging, forward projections, etc. The number of systems that this will cause a problem should be few and probably will not be found until they fail.

-- Anonymous, April 07, 1998

I'd like to thank Steve Shannon and Bill King for their responses. I wish I had more direct experience with embedded controllers. If steve is correct in his analysis, why is there a battery in the DS-1287A. I can't see it being put there for any reason other than to maintain the time. Why are medical devices failing so much. They have embedded controllers, must do time stamps, but I don't think they do much time calculations. (or do they?. Can sombody please clarify these comments. Tom Vardon

-- Anonymous, April 08, 1998

Moderation questions? read the FAQ