Path: csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Joerg Newsgroups: sci.electronics.design Subject: Re: analog failures Date: Sun, 26 Feb 2017 09:46:42 -0800 Lines: 57 Message-ID: References: <26ca0bd7-436a-408b-8084-792032accf3a@googlegroups.com> <3b85856b-fb02-4edb-9223-878c9efbf7ac@googlegroups.com> <004c4a1f-ecc9-422d-a982-ce163d9224a2@googlegroups.com> <1a268f48-ccf5-4699-9f4e-44fd973f58c1@googlegroups.com> <7a46230f-a92a-4357-89a6-e6e7caa8a8db@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: individual.net /H2c8LocinX9W/3hwwcszAVUggEpUfpSYkLeHJ9ZNLunVWqB28 Cancel-Lock: sha1:qm2DX1IY/KgYnDC3WSciVXiSATQ= User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070728 Thunderbird/2.0.0.6 Mnenhy/0.7.6.666 In-Reply-To: <7a46230f-a92a-4357-89a6-e6e7caa8a8db@googlegroups.com> Xref: csiph.com sci.electronics.design:449314 On 2017-02-26 08:29, dagmargoodboat@yahoo.com wrote: > On Saturday, February 25, 2017 at 3:44:47 PM UTC-5, Joerg wrote: >> On 2017-02-24 09:02, dagmargoodboat@yahoo.com wrote: >>> On Thursday, February 23, 2017 at 1:43:23 PM UTC-5, Joerg wrote: >>>> On 2017-02-22 15:45, dagmargoodboat@yahoo.com wrote: >>>> >>>> [...] >>>> >>>>> >>>>> AIUI you can clear nearly all the i2c deadlocks by having the master >>>>> cycle the clock 9 times (or by just cycling the power :). >>>>> >>>> >>>> Thing is, my clients typically do not want to hear the word "nearly" :-) >>> >>> Which is why you'd want to design the thing so the i2c could never >>> deadlock in the first place. But if you're like me, chastened by >>> others' tales, you could include two levels of recovery so that even >>> if the inconceivable happened it could ever be a critical fault, just >>> in case. >>> >>> Reliable + (redundancy + retry) = spandex, belt, and suspenders. >>> >>> SPI can fail too if someone think's he's enabled when he isn't. What's >>> the fallback then? But that doesn't much happen, right? >>> >> >> Not really because the master enables and disables. So having a hung bus >> because or a rogue device isn't likely unless the device is physically >> damaged. > > Well that was my point-- > >> Not so with I2C where I saw cases where a power cycle made it >> all come back and work fine. For a while ... > > Such a system plainly has a flaw somewhere--a race condition or some > protocol problem--and that's obviously NOT okay. > The problem is that the issue is often not controlled by the quality of the design but by that of the circuitry inside an IC, so out of the hands of the board level designer. > I just tied five boards together in a system comprising twenty-one i2c > devices, and did it with a four-inch / two-wire bus. I2c was ideal for > that. > I2C is a great idea. It's just the implementation that often isn't sufficiently rugged. -- Regards, Joerg http://www.analogconsultants.com/