Informatic / espenc

ESP8266 LWIP driver for ENC28J60 ethernet module
16 stars 5 forks source link

Firmware keep reseting (NodeMCU) #1

Open rosmianto opened 6 years ago

rosmianto commented 6 years ago

I tested your code and enc28j60 is successfully linked up, but the code keep restarting itself roughly every second.

 ets Jan  8 2013,rst cause:4, boot mode:(1,7)

wdt reset
user_main.c:user_init:20] hey?
[driver/espenc.c:enc28j60_init:279] interrupts enabled
[driver/espenc.c:enc28j60_init:281] initializing
[driver/espenc.c:enc28j60_init:297] initializing hardware

 ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x40100000, len 31296, room 16 
tail 0
chksum 0xae
load 0x3ffe8000, len 892, room 8 
tail 4
chksum 0x0e
load 0x3ffe8380, len 1408, room 4 
tail 12
chksum 0xfa
csum 0xfa
\0x8c\0xe2\0x02\0xec\0x12\0x82n\0xec\0x92r\0x82\0xf2n|\0xec\0x0cl\0x0clll`\0x02\0x8c\0xe2r\0x92l\0x8c\0xda\0xd5\0xcd\0x95\0xc9\0xbduser_main.c:user_init:20] hey?
[driver/espenc.c:enc28j60_init:279] interrupts enabled
[driver/espenc.c:enc28j60_init:281] initializing
[driver/espenc.c:enc28j60_init:297] initializing hardware
[driver/espenc.c:enc28j60_init:346] hardware ready, rev: 7
[driver/espenc.c:espenc_init:357] new_netif: 1073671068
[driver/espenc.c:espenc_init:366] network: en; up: 0
[driver/espenc.c:espenc_init:370] etharp: 32
[driver/espenc.c:enc28j60_link_output:132] output, tot_len: 350
[driver/espenc.c:enc28j60_link_output:134] link is up: 1
[driver/espenc.c:enc28j60_link_output:135] pktcnt: 2
[driver/espenc.c:enc28j60_link_output:155] before transmission: 41
[driver/espenc.c:enc28j60_link_output:166] transmission success
[driver/espenc.c:interrupt_handler:233]  *** INTERRUPT (49 / 3) ***
[driver/espenc.c:interrupt_handler:236] pktCnt > 0
[driver/espenc.c:enc28j60_handle_packets:180] reading ptr: 0000
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:192] next ptr: 0258
[driver/espenc.c:enc28j60_handle_packets:193] packet len: 590 (24e)
[driver/espenc.c:enc28j60_handle_packets:194] rx status: c0
[driver/espenc.c:enc28j60_handle_packets:209] reading 590 to 3ffeef40
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:213] packet received, passing to netif->input
[driver/espenc.c:enc28j60_link_output:132] output, tot_len: 350
[driver/espenc.c:enc28j60_link_output:134] link is up: 1
[driver/espenc.c:enc28j60_link_output:135] pktcnt: 3
[driver/espenc.c:enc28j60_link_output:155] before transmission: 41
[driver/espenc.c:enc28j60_link_output:166] transmission success
[driver/espenc.c:enc28j60_handle_packets:180] reading ptr: 0258
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:192] next ptr: 04b0
[driver/espenc.c:enc28j60_handle_packets:193] packet len: 590 (24e)
[driver/espenc.c:enc28j60_handle_packets:194] rx status: c0
[driver/espenc.c:enc28j60_handle_packets:209] reading 590 to 3ffeef40
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:213] packet received, passing to netif->input
[driver/espenc.c:enc28j60_link_output:132] output, tot_len: 42
[driver/espenc.c:enc28j60_link_output:134] link is up: 1
[driver/espenc.c:enc28j60_link_output:135] pktcnt: 3
[driver/espenc.c:enc28j60_link_output:155] before transmission: 41
[driver/espenc.c:enc28j60_link_output:166] transmission success
[driver/espenc.c:enc28j60_handle_packets:180] reading ptr: 04b0
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:192] next ptr: 051e
[driver/espenc.c:enc28j60_handle_packets:193] packet len: 100 (64)
[driver/espenc.c:enc28j60_handle_packets:194] rx status: 3c0
[driver/espenc.c:enc28j60_handle_packets:209] reading 100 to 3ffeef40
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:213] packet received, passing to netif->input
[driver/espenc.c:enc28j60_handle_packets:180] reading ptr: 051e
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:192] next ptr: 058c
[driver/espenc.c:enc28j60_handle_packets:193] packet len: 100 (64)
[driver/espenc.c:enc28j60_handle_packets:194] rx status: 3c0
[driver/espenc.c:enc28j60_handle_packets:209] reading 100 to 3ffeef40
[driver/espenc.c:readBuf:81] readBuf()
[driver/espenc.c:enc28j60_handle_packets:213] packet received, passing to netif->input
[driver/espenc.c:interrupt_handler:246] PKTIF interrupt
[driver/espenc.c:interrupt_handler:252] TXIF interrupt
[driver/espenc.c:interrupt_handler:233]  *** INTERRUPT (01 / 0) ***
[driver/espenc.c:espenc_init:371] dhcp_start(): 0

ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x40100000, len 31296, room 16 
tail 0
chksum 0xae
load 0x3ffe8000, len 892, room 8 
tail 4
chksum 0x0e
load 0x3ffe8380, len 1408, room 4 
tail 12
chksum 0xfa
csum 0xfa
Informatic commented 6 years ago

I'm actually really surprised someone did anything with my code except for grinning. :)

I'll take a look into that next week or so?

It seems like what you're getting is reset line reset cause... (according to https://github.com/esp8266/Arduino/issues/1013#issuecomment-321831455)

How did you connect Your ENC28J60? You don't want to connect RESET pin on ENC28J60 to ESP8266. (In fact, ENC28J60 RESET pin sequence is not supported at all at the moment, as far as I remember)