<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">No error flags as I recall. It just stopped receiving frames. I tried to figure out how to clear it in the driver, but never succeeded. The workaround was to cycle the ext12v, restarting obd2ecu between off and on, triggered by a Car-on event.<br><br>Greg<br><br><br><div class="gmail_quote">On January 3, 2022 6:54:22 PM PST, Mark Webb-Johnson <mark@webb-johnson.net> wrote:<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div class=""><br class=""></div>I don’t know the cause of the HUD bus hang, so really not sure if it is resolved or not. The SPI driver is the standard ESP IDF one now, so should be stable. But what was the state of the bus when it hung? Perhaps some error condition set in the MCP2515?<br class=""><div><br class=""></div><div>Regards, Mark</div><div><br class=""><blockquote type="cite" class=""><div class="">On 4 Jan 2022, at 10:46 AM, Greg D <<a href="mailto:gregd2350@gmail.com" class="">gregd2350@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hi Mark,<br class="">
<div class=""><br class=""></div><div class="">Trying this again... (got a 554 blocked reply the first time). apologize if it's a duplicate.<br class=""></div><div class=""><br class=""></div>
Will this fix the bus hangs we have with the HUD devices? Ref: "Can
buses stop after some time" email thread from 5/28/2019... As I
wrote at the time, a 100% way to reproduce the hang was to have a
HUD device running, <i class="">then</i> start the OBD2ECU task. I haven't
used my HUD in some time, so I don't know if this was fixed since
then. If not, that was a very quick and easy way to reproduce the
issue.<br class="">
<br class="">
Happy New Year!<br class="">
<br class="">
Greg</div><br class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 3, 2022 at 5:10 PM Mark Webb-Johnson <<a href="mailto:mark@webb-johnson.net" class="">mark@webb-johnson.net</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;" class="">An update on this.<div class=""><br class=""></div><div class="">Working with another developer, we have made some changes in a ’spimaster’ branch:</div><div class=""><br class=""></div><div class=""><ol class=""><li class="">Stop using spi_nodma fork of ESP’s standard spi code, and switch back to use the standard ESP IDF spi master.<br class=""><br class=""></li><li class="">To support >3 devices (which ESP IDF spi master doesn’t due to hardware limitations of CS line and 3x DMA channels), change to use software CS line for the MAX7317 driver (the MCP2515 continue to use hardware CS).<br class=""><br class=""></li><li class="">Confirm the changes to our MCP2515 driver related to keeping track of the last buffer read, to solve the out-of-order issue.<br class=""><br class=""></li><li class="">Confirm the fix for another related issue where we don’t block (delay) if the can tx queue is full.</li></ol><div class=""><br class=""></div><div class="">These seem better now, and I am able to establish a CAN IP connection over MCP2515. Frames come in order, and we are seeing performance around 700 frames/second - which should be adequate for our needs.</div><div class=""><br class=""></div><div class="">I’ll do some more testing over the next few days, and if no issues found merge back to master.</div><div class=""><br class=""></div><div class="">Regards, Mark.</div><div class=""><br class=""><blockquote type="cite" class=""><div class="">On 7 Jun 2021, at 12:16 AM, Michael Balzer <<a href="mailto:dexter@expeedo.de" target="_blank" class="">dexter@expeedo.de</a>> wrote:</div><br class=""><div class=""><div class=""><div class=""><div class="">Signed PGP part</div><div class="">
<div class="">
Mark,<br class="">
<br class="">
I've just found a spot-on post on this issue:<br class="">
<br class="">
<a href="https://www.microchip.com/forums/tm.aspx?m=620741" target="_blank" class="">https://www.microchip.com/forums/tm.aspx?m=620741</a><br class="">
<br class="">
Tom suggests implementing a state machine to reproduce the receive
order. His analysis & solution looks sound to me.<br class="">
<br class="">
Regards,<br class="">
Michael<br class="">
<br class="">
<br class="">
<div class="">Am 06.06.21 um 14:50 schrieb Mark
Webb-Johnson:<br class="">
</div>
<blockquote type="cite" class="">
<div class=""><br class="">
</div>
I spent quite a bit of time on this. With my standard test packet
of 11 CAN frames expected, and the standard driver, I get perhaps
4 or 5 of them (about half are lost, and some are out of order).
<div class=""><br class="">
</div>
<div class="">I made the suggested change to move
the MyCan.IncomingFrame() call out of the ‘can’ object (when
frameReceived is true) to within the
mcp2515 AsynchronousInterruptHandler itself. That allows the
handler to receive more than one frame per call and is a very
simple change. Once that is done, we can at least now try to
tune it.</div>
<div class=""><br class="">
</div>
<div class="">So I then modified the code of
mcp2515 AsynchronousInterruptHandler to loop so long as the
interrupt flag says either buffer #0 or #1 has a frame. The
result looks something like this:</div>
<div class=""><br class="">
</div>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<div class="">
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler instat=01
errflag=00 txb0ctrl=00</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler rx frame
from buffer #0 (ID 0x110 B1=54)</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler instat=23
errflag=40 txb0ctrl=00</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler rx frame
from buffer #0 (ID 0x110 B1=40)</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler rx frame
from buffer #1 (ID 0x110 B1=45)</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler Clear RX
buffer #0 overflow flag</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler instat=23
errflag=00 txb0ctrl=00</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler rx frame
from buffer #0 (ID 0x110 B1=24)</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler rx frame
from buffer #1 (ID 0x110 B1=34)</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:14px" class="">D
(63192) mcp2515: AsynchronousInterruptHandler instat=20
errflag=00 txb0ctrl=00</span></font></div>
</div>
</blockquote>
<div class="">
<div class=""><br class="">
</div>
<div class="">The actual frames on the bus are (B1 values) 54, 45, 40,
0a, 7a, d5, 0c, 14, 1c, 24, 2c, and 34. Looking at the above
debug output, we get:</div>
<div class=""><br class="">
</div>
<div class="">
<ul class="">
<li class="">Interrupt flags show buffer #0 has a frame. It
is B1=54. Good.</li>
<li class="">Interrupt flags show buffers #0 and #1 both
have frames. Buffer #0 has B1=40 and buffer #1 has B1=45.</li>
<li class="">Etc etc</li>
</ul>
</div>
<div class=""><br class="">
</div>
<div class="">That is not good. What must have happened is that the first
B1=54 frame arrived, got put in buffer #0, and interrupt was
raised. We checked the interrupt flags, found buffer #0 had
something, and read the frame ok. All is good. But what is
happening now is that between the time we checked the
interrupt flags and the time we finished reading the 13 bytes
from buffer #0, a second frame arrived and was put in buffer
#1. Then a third frame arrives and is put in buffer #0. We
loop back to check the interrupt flags and find both buffers
have frames ready. So we ready buffer #0 to get the third
frame, then buffer #1 to get the second frame. We are out of
sequence.</div>
<div class=""><br class="">
</div>
<div class="">By removing the ESP_LOGD statements, I can improve
performance enough to get 10 out of the 11 frames, but still
sometimes frames are swapped in order.</div>
<div class=""><br class="">
</div>
<div class="">By over-clocking the MCP2515 SPI bus (supposed to be 10MHz,
but I push it to 15MHz), I can get all 11 frames, but two are
out of order.</div>
<div class=""><br class="">
</div>
<div class="">I suppose I can minimise the chance of the out-of-order
issue by repeating the call to read interrupt flags after
processing buffer #0 but before checking for buffer #1. That
would at least reduce the time window to as small as possible,
but would be another SPI call and is too slow. Doing that
brings us back to losing frames.</div>
<div class=""><br class="">
</div>
<div class="">Another approach may relate to our current use of the READ
command to read 5 status registers (interrupt flags, error
flags, two skipped, then transmit buffer #0 flags). There are
two specific commands ‘read status’ (which gets
the rx and tx
buffer status flags in one byte), and ‘rx status’
(which gets
just the receive buffer status and some info on the frames
received, again in one byte). I think those are more designed
for what we are trying to do. I can try to optimise the read
loop at the start of the AsynchronousInterruptHandler to use
one of those - they are 2 SPI bytes vs 7 for what we are doing
at the moment (so more than three times as fast).</div>
<div class=""><br class="">
</div>
<div class="">I think it will also be worthwhile having a look at some
other open source mcp2515 drivers to see how other people are
doing it.</div>
<div class=""><br class="">
</div>
<div class="">Regards, Mark.</div>
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On 4 Jun 2021, at 3:02 PM, Mark Webb-Johnson
<<a href="mailto:mark@webb-johnson.net" target="_blank" class="">mark@webb-johnson.net</a>>
wrote:</div>
<br class="">
<div class="">
<div class="">
<div class="">
<div class="">Signed PGP part</div>
<div class="">
<div style="overflow-wrap: break-word;" class="">
<div class=""><br class="">
</div>
The handler can only return one frame. As it is,
if both buffers #0 and #1 have a frame, it returns
#0. I am not sure if it gets called again (seems
to depend on the interrupt gpio status).
<div class=""><br class="">
</div>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<div class="">
<div class="">// Read the interrupt pin status
and if it's still active (low), require
another interrupt handling iteration</div>
<div class=""> return
!gpio_get_level((gpio_num_t)m_intpin);</div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class="">Maybe a quick solution is to just
return true, immediately
after *frameReceived=true, if intflag=0x01
and (intstat & CANINTF_RX1IF)? That would
dispatch the incoming frame, then call back for
more (from the loop in the can object).</div>
<div class=""><br class="">
</div>
<div class="">I am not sure in general
why AsynchronousInterruptHandler uses a bool
frameReceived flag, and doesn’t just simply
dispatch the frame immediately to the can
object? That would simplify things and allow
the AsynchronousInterruptHandler to handle
receiving both frames in the same call. Given
that MCP2515 is the only driver
using AsynchronousInterruptHandler, that would
be an easy fix.</div>
<div class=""><br class="">
</div>
<div class="">Regards, Mark.</div>
<div class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On 4 Jun 2021, at 2:29 PM,
Michael Balzer <<a href="mailto:dexter@expeedo.de" target="_blank" class="">dexter@expeedo.de</a>>
wrote:</div>
<br class="">
<div class="">
<div class="">
<div class="">
<div class="">Signed
PGP part</div>
<div class="">
<div class=""> Mark,<br class="">
<br class="">
the handler is meant to read both
buffers sequentially, and on a
quick glance I don't see why it
wouldn't. But it can't hurt if you
do an audit of the code.<br class="">
<br class="">
I remember having had that
out-of-order discussion when
handling both RX buffers before
here, but don't remember the
outcome. Too bad the list archives
cannot be searched.<br class="">
<br class="">
I think it was the MCP not doing
overflows from RX buffer 1 to 0.
I.e. if buffer 1 still has a frame
on arrival, the new frame will be
lost. That means losing a frame if
the handler cannot react fast
enough, but receiving out of order
would be worse.<br class="">
<br class="">
Regards,<br class="">
Michael<br class="">
<br class="">
<br class="">
<div class="">Am
04.06.21 um 04:16 schrieb Mark
Webb-Johnson:<br class="">
</div>
<blockquote type="cite" class="">
Michael,
<div class=""><br class="">
</div>
<div class="">Good suggestion on
the timing. I think it best to
use the same timings as the
Arduino library, and have
committed that change. No
vehicle modules currently use
1Mbps on MCP2515 anyway.
Unfortunately, it didn’t
resolve my problem.</div>
<div class=""><br class="">
</div>
<div class="">Looking at the
error flags I see:</div>
<div class=""><br class="">
</div>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<div class="">
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">Error
flag: 0x23401c01</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class=""><br class="">
</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">intstat
0x23</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
ERRIF Error
Interrupt pending</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
RX0IF Rx buffer 0
full interrupt</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
RX1IF Rx buffer 1
full interrupt</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class=""><br class="">
</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">errflag
0x40</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
RX0OVR Rx buffer
0
overflow</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class=""><br class="">
</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">intflag
0x1c01</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
0x01 Implied from Rx
buffer 0 full</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class=""><br class="">
</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
0x1c = 0001 1100</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
Means RXB0 overflow.
No data lost in this
case (it went into
RXB1)</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
Means (errflag &
EFLG_RX01OVR), clear
RX buffer overflow
flags</span></font></div>
<div class=""><font face="Andale Mono" class=""><span style="font-style:normal;font-size:12px" class="">
Means (intstat &
(CANINTF_MERRF |
CANINTF_WAKIF |
CANINTF_ERRIF)), clear
error & wakeup
interrupts</span></font></div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class="">So we have CAN
frames in BOTH rx buffers #0
and #1. Looking at our driver
code
(mcp2515::AsynchronousInterruptHandler),
it seems in that case we only
read from buffer #0. From the
flow I can see, we are going
to lose that second frame.
We’re not really handling the
issue of two frames being in
the buffers when the interrupt
handler is called.</div>
<div class=""><br class="">
</div>
<div class="">As the
architecture of <span class="">mcp2515::AsynchronousInterruptHandler
can only receive one frame,
it is not so simple to fix.
We could simply read and
return the frame in buffer
#0, requesting to be called
again (return true), but
another frame may arrive
(into buffer #0) before we
get called again, and that
is going to result in
out-of-order frames.</span></div>
<div class=""><span class=""><br class="">
</span></div>
<div class="">I’ll work
on
improving the handling of this
case.</div>
<div class=""><br class="">
</div>
<div class="">Regards, Mark.</div>
<div class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">On 3 Jun
2021, at 3:07 PM,
Michael Balzer <<a href="mailto:dexter@expeedo.de" target="_blank" class="">dexter@expeedo.de</a>>
wrote:</div>
<br class="">
<div class="">
<div class="">
<div class="">
<div class="">Signed
PGP part</div>
<div class="">
<div class="">
Mark,<br class="">
<br class="">
I'd give the bit
timing a try
first, the
MCP2515 seems to
be very
sensitive for
this. I've even
had some trouble
finding a
working
configuration
for the 50 kbit
timing I've
added a couple
weeks ago.<br class="">
<br class="">
We currently use
00 / D0 / 82
which is also
the result of
the old Intrepid
timing
calculator.
That's a
propagation
segment of 1 Tq
and 3 Tq per
phase, resulting
in samling
between 50% -
62.5%.<br class="">
<br class="">
The Arduino MCP
CAN lib by Cory
Fowler also had
this previously,
but then changed
in…<br class="">
<br class="">
<a href="https://github.com/coryjfowler/MCP_CAN_lib/commit/ece730cf697fef1cbe8a90111694868168d41000" target="_blank" class="">https://github.com/coryjfowler/MCP_CAN_lib/commit/ece730cf697fef1cbe8a90111694868168d41000</a><br class="">
<br class="">
…to 00 / CA /
81, which is a
propagation
segment of 3 Tq
and 2 Tq per
phase, shifting
the sampling
window to 62.5 -
75%.<br class="">
<br class="">
Our current
configuration
scheme for the
internal SJA1000
compatible CAN
seems to sample
at 62.5 - 75% as
well, so that
would also
match.<br class="">
<br class="">
Regards,<br class="">
Michael<br class="">
<br class="">
<br class="">
<div class="">Am
03.06.21 um
07:36 schrieb
Mark
Webb-Johnson:<br class="">
</div>
<blockquote type="cite" class="">
<div class=""><br class="">
</div>
<div class="">I’m
working on an
implementation
of IP stack
over CAN for
the Tesla
Roadster. IP
frames are
encoded as a
length
followed by a
sequence of
CAN frames,
all on the
same ID. This
runs over a
1MHz bus, so
presumably the
traffic volume
could be high
at times.</div>
<div class=""><br class="">
</div>
<div class="">I
was having
problems with
this running
on CAN2, so
tried CAN1 and
it worked
perfectly.
Here are some
simple dumps
of a single
PING packet
(and single
PING response
packet):</div>
<div class=""><br class="">
</div>
<div class="">ID
#111 is used
to transmit an
IP packet, and
ID #110 is
used to
receive an IP
packet. The
special empty
data frame is
an
acknowledgment.</div>
<div class=""><br class="">
</div>
<div class="">Using
latest master
branch code
(3.2.016-196-g0aad1a9f/ota_1/edge
(build idf
v3.3.4-848-g1ff5e24b1
Jun 2 2021
09:28:58)).</div>
<div class=""><br class="">
</div>
<div class="">So,
first let’s
test with
traffic on
CAN1 (active,
1Mbps), and
listening on
CAN2 (listen,
1Mbps):</div>
<div class=""><br class="">
</div>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">TCPDUMP:</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><br class="">
</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><span style="font-family:"Andale Mono"" class="">05:57:55.980291
IP (tos 0x0,
ttl 64, id
43101, offset
0, flags [DF],
proto ICMP
(1), length
84)</span></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">
10.10.99.3
>
<a href="http://10.10.99.2/" target="_blank" class="">10.10.99.2</a>:
ICMP echo
request, id
23372, seq 1,
length 64</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0000:
4500 0054
a85d 4000 4001
b832 0a0a 6303
<a href="mailto:E..T.]@.@..2..c" target="_blank" class="">E..T.]@.@..2..c</a>.</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0010:
0a0a 6302
0800 7df8 5b4c
0001 5361 b860
..c...}.[L..Sa.`</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0020:
19f5 0e00
0809 0a0b 0c0d
0e0f 1011 1213
................</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0030:
1415 1617
1819 1a1b 1c1d
1e1f 2021 2223
.............!"#</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0040:
2425 2627
2829 2a2b 2c2d
2e2f 3031 3233
$%&'()*+,-./0123</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0050:
3435 3637
4567</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><br class="">
</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">05:57:56.436190
IP (tos 0x0,
ttl 64, id
14937, offset
0, flags
[none], proto
ICMP (1),
length 84)</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">
10.10.99.2
>
<a href="http://10.10.99.3/" target="_blank" class="">10.10.99.3</a>:
ICMP echo
reply, id
23372, seq 1,
length 64</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0000:
4500 0054
3a59 0000 4001
6637 0a0a 6302
<a href="mailto:E..T:Y..@.f7..c" target="_blank" class="">E..T:Y..@.f7..c</a>.</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0010:
0a0a 6303
0000 85f8 5b4c
0001 5361 b860
..c.....[L..Sa.`</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0020:
19f5 0e00
0809 0a0b 0c0d
0e0f 1011 1213
................</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0030:
1415 1617
1819 1a1b 1c1d
1e1f 2021 2223
.............!"#</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0040:
2425 2627
2829 2a2b 2c2d
2e2f 3031 3233
$%&'()*+,-./0123</span></font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><span style="white-space:pre-wrap" class=""> </span>0x0050:
3435 3637
4567</span></font></blockquote>
<font face="Andale
Mono" class=""><span style="font-style:normal" class=""><br class="">
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">Traffic
(as shown on
PC the other
end of the can
log tcp
connection):</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><br class="">
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 45 00 00
54 a8 5d 40 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 40 01 b8
32 0a 0a 63 03</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 0a 0a 63
02 08 00 7d f8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 5b 4c 00
01 53 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 19 f5 0e
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 14 15 16
17 18 19 1a 1b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 24 25 26
27 28 29 2a 2b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 45 00 00
54 3a 59 00 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 40 01 66
37 0a 0a 63 02</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 0a 0a 63
03 00 00 85 f8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 5b 4c 00
01 53 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 19 f5 0e
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 14 15 16
17 18 19 1a 1b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 24 25 26
27 28 29 2a 2b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 34 35 36
37</blockquote>
<br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">CAN1
active:</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1CER
TX_Queue T11
111 40 01 b8
32 0a 0a 63 03</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 45 00 00
54 a8 5d 40 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 40 01 b8
32 0a 0a 63 03</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1CER
TX_Queue T11
111 5b 4c 00
01 53 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 0a 0a 63
02 08 00 7d f8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 5b 4c 00
01 53 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1CER
TX_Queue T11
111 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 19 f5 0e
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1CER
TX_Queue T11
111 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 14 15 16
17 18 19 1a 1b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1CER
TX_Queue T11
111 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 24 25 26
27 28 29 2a 2b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1T11
111 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 45 00 00
54 3a 59 00 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 40 01 66
37 0a 0a 63 02</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 0a 0a 63
03 00 00 85 f8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 5b 4c 00
01 53 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 19 f5 0e
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 14 15 16
17 18 19 1a 1b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 24 25 26
27 28 29 2a 2b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">1R11
110 34 35 36
37</blockquote>
<br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">CAN2
listen:</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 45 00 00
54 a8 5d 40 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 40 01 b8
32 0a 0a 63 03</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 0a 0a 63
02 08 00 7d f8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 5b 4c 00
01 53 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 19 f5 0e
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 14 15 16
17 18 19 1a 1b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 24 25 26
27 28 29 2a 2b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
111 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2CER
Error intr=10
rxpkt=14
txpkt=0
errflags=0x23401c01
rxerr=0
txerr=0
rxinval=0
rxovr=0
txovr=0
txdelay=0
txfail=0
wdgreset=0
errreset=0</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 40 01 66
37 0a 0a 63 02</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 19 f5 0e
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 45 00 00
54 3a 59 00 00</blockquote>
</font></blockquote>
</blockquote>
<div class=""><br class="">
</div>
<div class="">Conclusion
is that the
CAN1 traffic
looks fine,
and the PING
packet gets a
good reply.
All
successful.
But the CAN2
listen is
missing a few
packets and
the last
packet is out
of order.</div>
<div class=""><br class="">
</div>
<div class="">Now,
let’s test
with traffic
on CAN2
(active,
1Mbps), and
listening on
CAN1 (listen,
1Mbps):</div>
<div class=""><br class="">
</div>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<div class=""><font face="Andale
Mono" class="">TCPDUMP:</font></div>
<div class=""><font face="Andale
Mono" class=""><br class="">
</font></div>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<div class=""><font face="Andale
Mono" class=""><span class="">
<div class="">06:00:33.004060
IP (tos 0x0,
ttl 64, id
58240, offset
0, flags [DF],
proto ICMP
(1), length
84)</div>
</span></font></div>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span class="">
<div class="">
10.10.99.3
>
<a href="http://10.10.99.2/" target="_blank" class="">10.10.99.2</a>:
ICMP echo
request, id
23393, seq 1,
length 64</div>
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span class="">
<div class=""><span style="white-space:pre-wrap" class=""> </span>0x0000:
4500 0054
e380 4000 4001
7d0f 0a0a 6303
<a href="mailto:E..T..@.@" target="_blank" class="">E..T..@.@</a>.}...c.</div>
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span class="">
<div class=""><span style="white-space:pre-wrap" class=""> </span>0x0010:
0a0a 6302
0800 7cc8 5b61
0001 f161 b860
..c...|.[a...a.`</div>
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span class="">
<div class=""><span style="white-space:pre-wrap" class=""> </span>0x0020:
8b0f 0000
0809 0a0b 0c0d
0e0f 1011 1213
................</div>
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span class="">
<div class=""><span style="white-space:pre-wrap" class=""> </span>0x0030:
1415 1617
1819 1a1b 1c1d
1e1f 2021 2223
.............!"#</div>
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span class="">
<div class=""><span style="white-space:pre-wrap" class=""> </span>0x0040:
2425 2627
2829 2a2b 2c2d
2e2f 3031 3233
$%&'()*+,-./0123</div>
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><span class="">
<div class=""><span style="white-space:pre-wrap" class=""> </span>0x0050:
3435 3637
4567</div>
</span></font></blockquote>
<font face="Andale
Mono" class=""><span class=""><br class="">
</span></font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">Traffic
(as shown on
PC the other
end of the can
log tcp
connection):</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 45 00 00
54 e3 80 40 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 40 01 7d
0f 0a 0a 63 03</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 0a 0a 63
02 08 00 7c c8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 5b 61 00
01 f1 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 8b 0f 00
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 14 15 16
17 18 19 1a 1b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 24 25 26
27 28 29 2a 2b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">tx:
#111 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 45 00 00
54 3a 5a 00 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 0a 0a 63
03 00 00 84 c8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 8b 0f 00
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">rx:
#110 40 01 66
36 0a 0a 63 02</blockquote>
</font></blockquote>
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">CAN2
active:</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2CER
TX_Queue T11
111 40 01 7d
0f 0a 0a 63 03</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 45 00 00
54 e3 80 40 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 40 01 7d
0f 0a 0a 63 03</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2CER
TX_Queue T11
111 5b 61 00
01 f1 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 0a 0a 63
02 08 00 7c c8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 5b 61 00
01 f1 61 b8 60</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2CER
TX_Queue T11
111 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 8b 0f 00
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 0c 0d 0e
0f 10 11 12 13</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2CER
TX_Queue T11
111 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 14 15 16
17 18 19 1a 1b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 1c 1d 1e
1f 20 21 22 23</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2CER
TX_Queue T11
111 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 24 25 26
27 28 29 2a 2b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 2c 2d 2e
2f 30 31 32 33</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2T11
111 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><br class="">
</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 54 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 45 00 00
54 3a 5a 00 00</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2CER
Error intr=15
rxpkt=3
txpkt=12
errflags=0x23401c01
rxerr=0
txerr=0
rxinval=0
rxovr=0
txovr=0
txdelay=5
txfail=0
wdgreset=0
errreset=0</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 0a 0a 63
03 00 00 84 c8</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 8b 0f 00
00 08 09 0a 0b</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 34 35 36
37</blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">2R11
110 40 01 66
36 0a 0a 63 02</blockquote>
<br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">CAN1
listen:</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class="">1R11 111
54 00<br class="">
1R11 110</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
1R11 111 45 00
00 54 e3 80 40
00<br class="">
1R11 111 40 01
7d 0f 0a 0a 63
03<br class="">
1R11 111 0a 0a
63 02 08 00 7c
c8<br class="">
1R11 111 5b 61
00 01 f1 61 b8
60<br class="">
1R11 111 8b 0f
00 00 08 09 0a
0b<br class="">
1R11 111 0c 0d
0e 0f 10 11 12
13<br class="">
1R11 111 14 15
16 17 18 19 1a
1b<br class="">
1R11 111 1c 1d
1e 1f 20 21 22
23<br class="">
1R11 111 24 25
26 27 28 29 2a
2b<br class="">
1R11 111 2c 2d
2e 2f 30 31 32
33<br class="">
1R11 111 34 35
36 37</font></blockquote>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class=""><font face="Andale
Mono" class=""><br class="">
1R11 110 54 00<br class="">
1R11 110 45 00
00 54 3a 5a 00
00<br class="">
1R11 110 40 01
66 36 0a 0a 63
02<br class="">
1R11 110 0a 0a
63 03 00 00 84
c8<br class="">
1R11 110 5b 61
00 01 f1 61 b8
60<br class="">
1R11 110 8b 0f
00 00 08 09 0a
0b<br class="">
1R11 110 0c 0d
0e 0f 10 11 12
13<br class="">
1R11 110 14 15
16 17 18 19 1a
1b<br class="">
1R11 110 1c 1d
1e 1f 20 21 22
23<br class="">
1R11 110 24 25
26 27 28 29 2a
2b<br class="">
1R11 110 2c 2d
2e 2f 30 31 32
33<br class="">
1R11 110 34 35
36 37</font></blockquote>
</blockquote>
<div class=""><br class="">
</div>
<div class="">Conclusion
is that the
CAN2 transmit
traffic looks
fine, but no
PING reply
received via
CAN. The CAN1
listen shows
the reply just
fine.</div>
<div class=""><br class="">
</div>
<div class="">Here
is that last
CAN1 listen,
with
timestamps:</div>
<div class=""><br class="">
</div>
<blockquote style="margin:0px 0px 0px 40px;border:medium none;padding:0px" class="">
<div class="">
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.080107
1R11 111 54 00</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.081657
1R11 110</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><br class="">
</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.227479
1R11 111 45 00
00 54 e3 80 40
00</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.228318
1R11 111 40 01
7d 0f 0a 0a 63
03</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.245727
1R11 111 0a 0a
63 02 08 00 7c
c8</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.246214
1R11 111 5b 61
00 01 f1 61 b8
60</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.248219
1R11 111 8b 0f
00 00 08 09 0a
0b</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.248772
1R11 111 0c 0d
0e 0f 10 11 12
13</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.250774
1R11 111 14 15
16 17 18 19 1a
1b</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.251338
1R11 111 1c 1d
1e 1f 20 21 22
23</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.253380
1R11 111 24 25
26 27 28 29 2a
2b</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.253944
1R11 111 2c 2d
2e 2f 30 31 32
33</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.265937
1R11 111 34 35
36 37</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class=""><br class="">
</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.269221
1R11 110 54 00</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272095
1R11 110 45 00
00 54 3a 5a 00
00</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272125
1R11 110 40 01
66 36 0a 0a 63
02</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272156
1R11 110 0a 0a
63 03 00 00 84
c8</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272193
1R11 110 5b 61
00 01 f1 61 b8
60</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272245
1R11 110 8b 0f
00 00 08 09 0a
0b</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272277
1R11 110 0c 0d
0e 0f 10 11 12
13</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272314
1R11 110 14 15
16 17 18 19 1a
1b</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272354
1R11 110 1c 1d
1e 1f 20 21 22
23</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272387
1R11 110 24 25
26 27 28 29 2a
2b</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272420
1R11 110 2c 2d
2e 2f 30 31 32
33</span></font></div>
<div class=""><font face="Andale
Mono" class=""><span style="font-style:normal" class="">1622696433.272452
1R11 110 34 35
36 37</span></font></div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class="">It is
1Mbps, with
30us or so
between each
packet. This
is the <b class="">only</b>
traffic on the
bus.
Everything
else is turned
off. Roughly
12 packets
each way.
Surely even if
we were
hitting a
performance
limit, our
buffers can
handle 12
packets?</div>
<div class=""><br class="">
</div>
<div class="">The
good news is
that I have a
good
environment to
replicate this
issue now, so
any fix should
be easy to
test.</div>
<div class=""><br class="">
</div>
<div class="">I
haven’t
worked
on the MCP2515
driver in our
code in a long
time, but it
certainly
seems
something is
messed up and
that could be
badly
affecting
vehicle
modules using
anything other
than CAN1.</div>
<div class=""><br class="">
</div>
<div class="">I
will start to
look at this
over the
weekend, but
has anyone got
any
ideas/suggestions?
Perhaps the
bit timing
registers are
off by a small
amount (so it
works on CAN1
but not on
CAN2)? Or
something more
serious in our
driver?</div>
<div class=""><br class="">
</div>
<div class="">Regards,
Mark.</div>
<div class=""><br class="">
</div>
<br class="">
<fieldset class=""></fieldset>
<pre class="">_______________________________________________
OvmsDev mailing list
<a href="mailto:OvmsDev@lists.openvehicles.com" target="_blank" class="">OvmsDev@lists.openvehicles.com</a>
<a href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" target="_blank" class="">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
</blockquote>
<br class="">
<pre cols="72" class="">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
</div>
<span id="gmail-m_8510686444538135805cid:4729234A-8C3A-401F-9A97-EA6C8CE8B462" class=""><MCP2515Calc-1000kbit.ods></span></div>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
<br class="">
<fieldset class=""></fieldset>
<pre class="">_______________________________________________
OvmsDev mailing list
<a href="mailto:OvmsDev@lists.openvehicles.com" target="_blank" class="">OvmsDev@lists.openvehicles.com</a>
<a href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" target="_blank" class="">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
</blockquote>
<br class="">
<pre cols="72" class="">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
</div>
</div>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
</div>
<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
<br class="">
<fieldset class=""></fieldset>
<pre class="">_______________________________________________
OvmsDev mailing list
<a href="mailto:OvmsDev@lists.openvehicles.com" target="_blank" class="">OvmsDev@lists.openvehicles.com</a>
<a href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" target="_blank" class="">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a>
</pre>
</blockquote>
<br class="">
<pre cols="72" class="">--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26</pre>
</div>
</div></div><br class=""></div></div></blockquote></div><br class=""></div></div>_______________________________________________<br class="">
OvmsDev mailing list<br class="">
<a href="mailto:OvmsDev@lists.openvehicles.com" target="_blank" class="">OvmsDev@lists.openvehicles.com</a><br class="">
<a href="http://lists.openvehicles.com/mailman/listinfo/ovmsdev" rel="noreferrer" target="_blank" class="">http://lists.openvehicles.com/mailman/listinfo/ovmsdev</a><br class="">
</blockquote></div>
_______________________________________________<br class="">OvmsDev mailing list<br class=""><a href="mailto:OvmsDev@lists.openvehicles.com" class="">OvmsDev@lists.openvehicles.com</a><br class="">http://lists.openvehicles.com/mailman/listinfo/ovmsdev<br class=""></div></blockquote></div><br class=""></blockquote></div><div style='white-space: pre-wrap'><div class='k9mail-signature'>-- <br>This space for rent...</div></div></body></html>