ESP8266 Developer Zone The Official ESP8266 Forum 2018-07-21T20:29:43+08:00 https://bbs.espressif.com:443/feed.php?f=65&t=11544 2018-07-21T20:29:43+08:00 2018-07-21T20:29:43+08:00 https://bbs.espressif.com:443/viewtopic.php?t=11544&p=22171#p22171 <![CDATA[Fatal Exception 28]]>
Here is the error output I'm getting:

Code:

ets Jan  8 2013,rst cause:2, boot mode:(3,6)
                                                                               
load 0x3ffe8000, len 884, room 16             
tail 4                                                         
chksum 0x9d
load 0x3ffe8380, len 808, room 4                                 
tail 4                           
chksum 0xa1                       
load 0x40100000, len 24688, room 4           
tail 12                     
chksum 0x8f                               
csum 0x8f                                       
rf_cal[0] !=0x05,is 0xFF               
rf cal sector: 1019                                 
freq trace enable 1                               
rf[112] : ff                                     
rf[113] : ff                                           
rf[114] : ff                                       
w_flash
                                                 
SDK ver: 2.2.1(6ab97e9) compiled @ Jun  7 2018 13:59:14
phy ver: 3125_15, pp ver: 250.31
                                                                               
compile time:Jul 21 2018 14:16:49
                                             
mode : softAP(5e:cf:7f:a4:54:1a)
add if1             
dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
         
[b]Fatal exception 28(LoadProhibitedCause):
epc1=0x40101bbe, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000004, depc=0x0
0000000[/b]



According to my linker output .map file, there is phy_change_channel() at the address 0x40101bb4


This is my code:

Code:

void ICACHE_FLASH_ATTR
[b]user_init[/b](void)
{
    char buf[128] = { 0 };
    os_printf("compile time:%s %s\r\n", __DATE__, __TIME__);
    system_init_done_cb(sdk_init_done_cb);
}
void ICACHE_FLASH_ATTR
[b]sdk_init_done_cb[/b](void) {
    os_printf("test");
    system_soft_wdt_feed();


My linker was missing two functions, so I've put it into my code, but I believe this is not correct. But wasn't able to find any documentation related to them.

Code:

void ICACHE_FLASH_ATTR [b]__wrap_system_restart_local[/b]()
{
}

void ICACHE_FLASH_ATTR [b]__wrap_register_chipv6_phy[/b]()
{   
}

What can be possibly wrong? I'm struggling with it for several days :)))))))

One more thing - if I flash the RF cal sector (which wasn't flashed in the case above) it won't show basically anything.

Statistics: Posted by sedlacek.david — Sat Jul 21, 2018 8:29 pm


]]>