FCDEV3B hardware bug: sleep mode self-reboot

Das Signal das.signal at freecalypso.org
Mon Jul 31 10:05:27 UTC 2017


On Sun, Jul 30, 2017 at 12:47:38PM -0800, Mychaela Falconia wrote:

> 1: Which of the three probe points did your posted o'scope trace come
> from: C214, C211 or C212?  Was the noise ripple exactly the same as
> far as you could tell at all 3 points, or was it greater or lesser at
> one of the points?

The trace corresponds to C214. However I did not see a difference between
the three of them, the amount of noise I would say stayed below 0.2V.

> 2: One experiment that might be able to shed some light on whether the
> power supply noise ripple we are seeing is a consequence of the reboot
> or a prelude to it and possibly its cause would be to issue a tgtreset
> command through fc-shell instead of AT+CFUN=1.  This command directly
> triggers a reboot through the watchdog, without the flurry of very
> short sleep-wake sequences which is the prime suspect in this
> investigation, so if you issue tgtreset while holding the scope probe
> on the V-DBB probe points, we'll see what a reboot looks like by
> itself, without the flurry of sleep-wake sequences.

Please have a look at the screenshots:

With AT+CFUN:
https://www.freecalypso.org/members/ds/DS1Z_QuickPrint1.png

With TGTRESET:
https://www.freecalypso.org/members/ds/DS1Z_QuickPrint2.png

The blue line corresponds to the UART TX. The first block is the message
RVT: Lost Message 04000026, then the second larger block is the RVM task
creation messages (and then periodically L1 ADC messages).

> The second required part would be for me to acquire my own oscilloscope
> - as I wrote previously, I am already looking into it.  Would you mind
> telling me what kind of oscilloscope you have used?  Looking on ebay,
> I see a number of Rigol scopes with 500 MSa/s or even 1 GSa/s sampling
> rates for around $400 or even less, which is definitely affordable, so
> I wonder if I can get the same scope you have or maybe even better.

This is a DS1054Z. It has 1 GSa/s and up to 100 MHz on one channel
(it is normally locked to 50 MHz, but there exists a free online generator
that allows unlocking features). I do recommend though that you buy it
new though instead of a used one (it costs ~$399 new), for instance from
https://www.amazon.com/dp/B012938E76 or https://www.adafruit.com/product/2145

> Wait a minute, are you saying that you are able to issue AT+CFUN=1
> right away *without* preceding it with any sleep mode commands and get
> an OK response without a reboot occurring right there at that step?
> Or you are saying that you did AT%SLEEP=2 (big sleep only) before
> AT+CFUN=1 and then AT%SLEEP=0 (disable all sleep modes) afterward?
> Please clarify.

No, AT%SLEEP=2 is required. Otherwise AT+CFUN=1 will always reboot.
However I thought AT%SLEEP=0 would reenable sleep modes, which I realize
now was a mistake.

> An fc-fsio upload to an otherwise idle modem produces a situation that
> is similar to what happens on AT+CFUN=1: no Nucleus tasks are running,
> thus the Nucleus scheduler falls into the idle loop which activates
> small sleep, but the UART interrupts act similarly to the SIM interface
> interrupts in the other case, producing a lot of short sleep-wake
> sequences back to back in rapid succession.  But it is interesting to
> note that the behaviour in this case is a dead freeze, rather than a
> reboot.

That's an interesting find! Perhaps a bug in TI's interrupt handling
mechanism them.

--DS


More information about the Community mailing list