On Wed, Nov 29, 2017 at 07:43:20AM -0800, will sanfilippo wrote:
> I doubt it was ever tested with no sx1276 actually connected. Where is it 
> crashing? What function is at 0x81bc?

> 
> > On Nov 29, 2017, at 6:20 AM, K Dmitry <dimka...@yandex.ru> wrote:
> > 
> > Thanks! That helped. I had to define few more pins and was able to build 
> > app. Now I'm trying to test it without SX1276 actually connected, but looks 
> > like app crashes:
> > 
> > 000000 ICSR:0x00421002
> > 000000 Assert @ 0xfb63
> > 000000 Unhandled interrupt (2), exception sp 0x200013c0
> > 000000  r0:0x00000000  r1:0x00016289  r2:0x80000000  r3:0xe000ed00
> > 000000  r4:0x0000fb63  r5:0x00000008  r6:0x00000000  r7:0x2000268c
> > 000000  r8:0xffffffff  r9:0xffffffff r10:0xffffffff r11:0xffffffff
> > 000000 r12:0x00000000  lr:0x00008dcf  pc:0x000081bc psr:0x81000200
> > 
> > Is it expected behavior when no SX1276 is present?

There are a few settings you can enable to help narrow down the cause of
the crash:

    BASELIBC_ASSERT_FILE_LINE
    SYSINIT_PANIC_FILE_LINE
    SYSINIT_PANIC_MESSAGE

With these enabled, more information will get printed to the console at
the time of the crash, including the filename and line number where the
crash occurred.  They are disabled by default to reduce code size.

You can enable these settings as follows:

    newt target amend <target-name> 
syscfg='BASELIBC_ASSERT_FILE_LINE=1:SYSINIT_PANIC_FILE_LINE=1:SYSINIT_PANIC_MESSAGE=1'

I would enable these settings, and then reproduce the crash.

To later disble these settings, you can use the following command:

    newt target amend -d <target-name> 
syscfg='BASELIBC_ASSERT_FILE_LINE:SYSINIT_PANIC_FILE_LINE:SYSINIT_PANIC_MESSAGE'

or just manually remove them from your
`targets/<target-name>/syscfg.yml` file.

Chris

Reply via email to