Loading ...
Sorry, an error occurred while loading the content.

Re: I2C Slave blocks bus

Expand Messages
  • christian.heidler
    ... In ... the ... and ... temperature ... problem ... the ... all ... system ... everythings ... this ... want ... correctly? ... well its hard to explore it
    Message 1 of 4 , Nov 28, 2007
    • 0 Attachment
      --- In ADuC_ARM@yahoogroups.com, "Rick Collins" <gnuarm.2006@...>
      wrote:
      >
      > --- In ADuC_ARM@yahoogroups.com, "christian.heidler"
      > <christian.heidler@> wrote:
      > >
      > > I'm using a system with ADuC7024 (-62 I31) running as I2C slave.
      In
      > > some cases - which are not really reproducable - the ADuC blocks
      the
      > > I2C bus by pulling the signals - SDA and SCL! - to a non valid
      > > level of about 2 V.
      > >
      > > The set up of the I2C hardware (e.g. pull-up resistors) is ok
      and
      > > other peripherals on the bus (RTC, stepper motor driver,
      temperature
      > > sensor etc.) are working without any problems - until the
      problem
      > > occurs. The I2C master is a Marvel PXA270 processor.
      > >
      > > The very odd thing is that in some cases even if I switch off
      the
      > > whole system (removing power supply completely and waiting for
      all
      > > capacitors to discharge) the bus is blocked when I switch the
      system
      > > on again! When I remove the ADuC slave from the system
      everythings
      > > works fine again.
      > >
      > > I read about the er021 (I2C Slave not Releasing the Bus). But
      this
      > > seems not to be the problem because the level is not pulled low -

      > > its in an intermedate state...
      > >
      > > Did anyone have a similar problem - or better: a solution?
      >
      > I would suggest that you explore the problem a bit further. It is
      > hard to imagine an output driving the bus to an invalid voltage.
      > Also, although it may appear that the ADuC is at fault, you might
      want
      > to verify that by causing the problem, then isolating the ADuC and
      > seeing what voltage you get on the two new busses.
      >
      > When the ADuC hangs the bus, is the ADuC otherwise working
      correctly?
      > If the ADuC is crapped out at that point, you may be looking at a
      > problem with an extraneous voltage on the bus upsetting the ADuC.
      >
      > Just a few thoughts.
      >


      well its hard to explore it that way because the ADuC system is
      sealed almost completely - it's a serial product :-(

      But I discovered that it has something to do with temperature. By
      cooling it down it works. Heating it up to some more than ambient
      temperature make the problem to come up.

      By the way:
      is it important to have the exposed pad soldered to ground for
      cooling reasons?

      I will research a bit tonight

      Thanks for your thoughts
    • christian.heidler
      ... slave. ... blocks ... valid ... low - ... is ... might ... and ... a ... ADuC. ... so after weeks of testing I discovered that the ADuC itself is ok. There
      Message 2 of 4 , Feb 26, 2008
      • 0 Attachment
        --- In ADuC_ARM@yahoogroups.com, "christian.heidler"
        <christian.heidler@...> wrote:
        >
        > --- In ADuC_ARM@yahoogroups.com, "Rick Collins" <gnuarm.2006@>
        > wrote:
        > >
        > > --- In ADuC_ARM@yahoogroups.com, "christian.heidler"
        > > <christian.heidler@> wrote:
        > > >
        > > > I'm using a system with ADuC7024 (-62 I31) running as I2C
        slave.
        > In
        > > > some cases - which are not really reproducable - the ADuC
        blocks
        > the
        > > > I2C bus by pulling the signals - SDA and SCL! - to a non
        valid
        > > > level of about 2 V.
        > > >
        > > > The set up of the I2C hardware (e.g. pull-up resistors) is ok
        > and
        > > > other peripherals on the bus (RTC, stepper motor driver,
        > temperature
        > > > sensor etc.) are working without any problems - until the
        > problem
        > > > occurs. The I2C master is a Marvel PXA270 processor.
        > > >
        > > > The very odd thing is that in some cases even if I switch off
        > the
        > > > whole system (removing power supply completely and waiting for
        > all
        > > > capacitors to discharge) the bus is blocked when I switch the
        > system
        > > > on again! When I remove the ADuC slave from the system
        > everythings
        > > > works fine again.
        > > >
        > > > I read about the er021 (I2C Slave not Releasing the Bus). But
        > this
        > > > seems not to be the problem because the level is not pulled
        low -
        >
        > > > its in an intermedate state...
        > > >
        > > > Did anyone have a similar problem - or better: a solution?
        > >
        > > I would suggest that you explore the problem a bit further. It
        is
        > > hard to imagine an output driving the bus to an invalid voltage.
        > > Also, although it may appear that the ADuC is at fault, you
        might
        > want
        > > to verify that by causing the problem, then isolating the ADuC
        and
        > > seeing what voltage you get on the two new busses.
        > >
        > > When the ADuC hangs the bus, is the ADuC otherwise working
        > correctly?
        > > If the ADuC is crapped out at that point, you may be looking at
        a
        > > problem with an extraneous voltage on the bus upsetting the
        ADuC.
        > >
        > > Just a few thoughts.
        > >
        >
        >
        > well its hard to explore it that way because the ADuC system is
        > sealed almost completely - it's a serial product :-(
        >
        > But I discovered that it has something to do with temperature. By
        > cooling it down it works. Heating it up to some more than ambient
        > temperature make the problem to come up.
        >
        > By the way:
        > is it important to have the exposed pad soldered to ground for
        > cooling reasons?
        >
        > I will research a bit tonight
        >
        > Thanks for your thoughts
        >


        so after weeks of testing I discovered that the ADuC itself is ok.
        There was a problem with the soldering process that causes short
        circuits to other signals.
      Your message has been successfully submitted and would be delivered to recipients shortly.