Prior to the emergence of this Ethernet issue, I was able to correctly flash various tagged versions of the firmware to the board. For those cases, Pinging is reliably successful and proper responses can be received from the board. For example, considering that stabilizer.py
hasn't been updated since v0.3.0, using this frontend would get an ok
on v0.3.0, or a parse error
on v0.4.0 / 0.4.1.
However, some time after numerous reflashing the board, the Ethernet begins to break.
$ tshark -f "host 192.168.1.79"
Capturing on 'eno1'
### Start Pinging the board that has been powered, I get replies.
1 0.000000000 Micro-St_26:b8:26 → Broadcast ARP 42 Who has 192.168.1.79? Tell 192.168.1.116
2 0.000176686 Microchi_d2:89:a1 → Micro-St_26:b8:26 ARP 60 192.168.1.79 is at 04:91:62:d2:89:a1
3 0.000180615 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0024, seq=1/256, ttl=64
4 0.000420384 192.168.1.79 → 192.168.1.116 ICMP 98 Echo (ping) reply id=0x0024, seq=1/256, ttl=64 (request in 3)
5 1.047154568 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0024, seq=2/512, ttl=64
6 1.047364219 192.168.1.79 → 192.168.1.116 ICMP 98 Echo (ping) reply id=0x0024, seq=2/512, ttl=64 (request in 5)
7 2.071126156 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0024, seq=3/768, ttl=64
8 2.071347588 192.168.1.79 → 192.168.1.116 ICMP 98 Echo (ping) reply id=0x0024, seq=3/768, ttl=64 (request in 7)
9 3.095137617 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0024, seq=4/1024, ttl=64
10 3.095361057 192.168.1.79 → 192.168.1.116 ICMP 98 Echo (ping) reply id=0x0024, seq=4/1024, ttl=64 (request in 9)
### Start using `stabilizer.py`, e.g. `python -m stabilizer -c 0 -p 1.0`.
11 6.562644070 192.168.1.116 → 192.168.1.79 TCP 74 59600 → 1235 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 SACK_PERM=1 TSval=335328363 TSecr=0 WS=128
### There seem to be intermittent outgoing packets from the board...
### However, `stabilizer.py` keeps polling for responses while there has been none.
12 6.562989099 192.168.1.79 → 192.168.1.116 TCP 66 1235 → 59600 [SYN, ACK] Seq=0 Ack=1 Win=5792 Len=0 MSS=1460 WS=1 SACK_PERM=1
13 6.563003995 192.168.1.116 → 192.168.1.79 TCP 54 59600 → 1235 [ACK] Seq=1 Ack=1 Win=64256 Len=0
14 6.563287760 192.168.1.116 → 192.168.1.79 TCP 151 59600 → 1235 [PSH, ACK] Seq=1 Ack=1 Win=64256 Len=97
### TCP retransmissions from my computer happen.
15 6.767079080 192.168.1.116 → 192.168.1.79 TCP 151 [TCP Retransmission] 59600 → 1235 [PSH, ACK] Seq=1 Ack=1 Win=64256 Len=97
16 6.975075893 192.168.1.116 → 192.168.1.79 TCP 151 [TCP Retransmission] 59600 → 1235 [PSH, ACK] Seq=1 Ack=1 Win=64256 Len=97
17 7.383108497 192.168.1.116 → 192.168.1.79 TCP 151 [TCP Retransmission] 59600 → 1235 [PSH, ACK] Seq=1 Ack=1 Win=64256 Len=97
18 8.215082051 192.168.1.116 → 192.168.1.79 TCP 151 [TCP Retransmission] 59600 → 1235 [PSH, ACK] Seq=1 Ack=1 Win=64256 Len=97
19 9.879078601 192.168.1.116 → 192.168.1.79 TCP 151 [TCP Retransmission] 59600 → 1235 [PSH, ACK] Seq=1 Ack=1 Win=64256 Len=97
20 12.066799297 192.168.1.116 → 192.168.1.79 TCP 54 59600 → 1235 [FIN, ACK] Seq=98 Ack=1 Win=64256 Len=0
21 13.010963441 192.168.1.116 → 192.168.1.79 TCP 74 59602 → 1235 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 SACK_PERM=1 TSval=335334812 TSecr=0 WS=128
22 13.011233708 192.168.1.79 → 192.168.1.116 TCP 60 1235 → 59602 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0
23 13.143117939 192.168.1.116 → 192.168.1.79 TCP 151 [TCP Retransmission] 59600 → 1235 [FIN, PSH, ACK] Seq=1 Ack=1 Win=64256 Len=97
24 13.143390122 192.168.1.79 → 192.168.1.116 TCP 60 1235 → 59600 [ACK] Seq=1 Ack=99 Win=5840 Len=0
25 13.143444053 192.168.1.79 → 192.168.1.116 TCP 60 1235 → 59600 [FIN, ACK] Seq=1 Ack=99 Win=5840 Len=0
26 13.143468326 192.168.1.116 → 192.168.1.79 TCP 54 59600 → 1235 [ACK] Seq=99 Ack=2 Win=64256 Len=0
### Halting `stabilizer.py`. Now try to Ping again, but I get no more replies.
27 15.512267842 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=1/256, ttl=64
28 16.536139917 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=2/512, ttl=64
29 17.559131304 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=3/768, ttl=64
30 18.583151300 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=4/1024, ttl=64
31 19.607132085 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=5/1280, ttl=64
32 20.631157921 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=6/1536, ttl=64
33 21.655130647 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=7/1792, ttl=64
34 22.679144554 192.168.1.116 → 192.168.1.79 ICMP 98 Echo (ping) request id=0x0025, seq=8/2048, ttl=64