CAN bus transport implementation
-
After setting node id, My examples works.
Sensor restarts communication once at startup, and then it looks ok. Logs below.
That's it for today.
Any suggestion what to test next?
Any ideas why communication restarts at startup?logs trimmed due to max post length.
gateway:
20:30:00.383 -> 0;255;3;0;14;Gateway startup complete. 20:30:00.383 -> 0;255;0;0;18;2.4.0-alpha 20:30:00.383 -> send partLen: 7 20:30:00.383 -> send data: 0;0;255;2;3;20;255;. 20:30:00.383 -> send CAN len: 7 20:30:00.383 -> send CAN noOfFrames: 1 20:30:00.383 -> send CAN id: 2148597504 20:30:00.383 -> send packet sent 20:30:07.317 -> READ CAN id: 2148597517 20:30:07.317 -> READ CAN from: 13 20:30:07.317 -> READ CAN to: 255 20:30:07.317 -> READ CAN currentPart: 0 20:30:07.317 -> READ CAN totalPartCount: 1 20:30:07.317 -> READ CAN messageId: 0 20:30:07.350 -> READ CAN data: 20:30:07.350 -> 13, 13, 255, 2, 3, 7, 255, 20:30:07.350 -> READ CAN SLOT: 7 20:30:07.350 -> READ CAN lastReceivedPart: 1 20:30:07.350 -> READ CAN packet received 20:30:07.350 -> transport receive called 20:30:07.350 -> transport receive data: 13, 13, 255, 2, 3, 7, 255, 20:30:08.213 -> send partLen: 8 20:30:08.213 -> send data: 0;0;13;10;35;8;255;0;. 20:30:08.213 -> send CAN len: 8 20:30:08.213 -> send CAN noOfFrames: 1 20:30:08.213 -> send CAN id: 2148535552 20:30:08.213 -> send packet sent 20:30:09.340 -> READ CAN id: 2148597517 20:30:09.340 -> READ CAN from: 13 20:30:09.340 -> READ CAN to: 255 20:30:09.340 -> READ CAN currentPart: 0 20:30:09.340 -> READ CAN totalPartCount: 1 20:30:09.373 -> READ CAN messageId: 0 20:30:09.373 -> READ CAN data: 20:30:09.373 -> 13, 13, 255, 2, 3, 7, 255, 20:30:09.373 -> READ CAN SLOT: 7 20:30:09.373 -> READ CAN lastReceivedPart: 1 20:30:09.373 -> READ CAN packet received 20:30:09.373 -> transport receive called 20:30:09.373 -> transport receive data: 13, 13, 255, 2, 3, 7, 255, 20:30:10.202 -> send partLen: 8 20:30:10.202 -> send data: 0;0;13;10;35;8;255;0;. 20:30:10.202 -> send CAN len: 8 20:30:10.202 -> send CAN noOfFrames: 1 20:30:10.202 -> send CAN id: 2148535552 20:30:10.202 -> send packet sent 20:30:11.362 -> READ CAN id: 2148597517 20:30:11.362 -> READ CAN from: 13 20:30:11.362 -> READ CAN to: 255 20:30:11.362 -> READ CAN currentPart: 0 20:30:11.362 -> READ CAN totalPartCount: 1 20:30:11.395 -> READ CAN messageId: 0 20:30:11.395 -> READ CAN data: 20:30:11.395 -> 13, 13, 255, 2, 3, 7, 255, 20:30:11.395 -> READ CAN SLOT: 7 20:30:11.395 -> READ CAN lastReceivedPart: 1 20:30:11.395 -> READ CAN packet received 20:30:11.395 -> transport receive called 20:30:11.395 -> transport receive data: 13, 13, 255, 2, 3, 7, 255, 20:30:12.191 -> send partLen: 8 20:30:12.191 -> send data: 0;0;13;10;35;8;255;0;. 20:30:12.191 -> send CAN len: 8 20:30:12.191 -> send CAN noOfFrames: 1 20:30:12.191 -> send CAN id: 2148535552 20:30:12.191 -> send packet sent 20:30:13.384 -> READ CAN id: 2148597517 20:30:13.384 -> READ CAN from: 13 20:30:13.384 -> READ CAN to: 255 20:30:13.384 -> READ CAN currentPart: 0 20:30:13.384 -> READ CAN totalPartCount: 1 20:30:13.384 -> READ CAN messageId: 0 20:30:13.417 -> READ CAN data: 20:30:13.417 -> 13, 13, 255, 2, 3, 7, 255, 20:30:13.417 -> READ CAN SLOT: 7 20:30:13.417 -> READ CAN lastReceivedPart: 1 20:30:13.417 -> READ CAN packet received 20:30:13.417 -> transport receive called 20:30:13.417 -> transport receive data: 13, 13, 255, 2, 3, 7, 255, 20:30:14.179 -> send partLen: 8 20:30:14.179 -> send data: 0;0;13;10;35;8;255;0;. 20:30:14.179 -> send CAN len: 8 20:30:14.179 -> send CAN noOfFrames: 1 20:30:14.179 -> send CAN id: 2148535552 20:30:14.179 -> send packet sent 20:30:25.460 -> READ CAN id: 2148597517 20:30:25.493 -> READ CAN from: 13 20:30:25.493 -> READ CAN to: 255 20:30:25.493 -> READ CAN currentPart: 0 20:30:25.493 -> READ CAN totalPartCount: 1 20:30:25.493 -> READ CAN messageId: 0 20:30:25.493 -> READ CAN data: 20:30:25.493 -> 13, 13, 255, 2, 3, 7, 255, 20:30:25.493 -> READ CAN SLOT: 7 20:30:25.493 -> READ CAN lastReceivedPart: 1 20:30:25.493 -> READ CAN packet received 20:30:25.493 -> transport receive called 20:30:25.493 -> transport receive data: 13, 13, 255, 2, 3, 7, 255, 20:30:25.991 -> send partLen: 8 20:30:26.024 -> send data: 0;0;13;10;35;8;255;0;. 20:30:26.024 -> send CAN len: 8 20:30:26.024 -> send CAN noOfFrames: 1 20:30:26.024 -> send CAN id: 2148535552 20:30:26.024 -> send packet sent 20:30:27.483 -> READ CAN id: 2148532237 20:30:27.516 -> READ CAN from: 13 20:30:27.516 -> READ CAN to: 0 20:30:27.516 -> READ CAN currentPart: 0 20:30:27.516 -> READ CAN totalPartCount: 1 20:30:27.516 -> READ CAN messageId: 0 20:30:27.516 -> READ CAN data: 20:30:27.516 -> 13, 13, 0, 10, 35, 24, 255, 1, 20:30:27.516 -> READ CAN SLOT: 7 20:30:27.516 -> READ CAN lastReceivedPart: 1 20:30:27.516 -> READ CAN packet received 20:30:27.516 -> transport receive called 20:30:27.516 -> transport receive data: 13, 13, 0, 10, 35, 24, 255, 1, 20:30:27.516 -> send partLen: 8 20:30:27.516 -> send data: 0;0;13;10;35;25;255;1;. 20:30:27.549 -> send CAN len: 8 20:30:27.549 -> send CAN noOfFrames: 1 20:30:27.549 -> send CAN id: 2148535552 20:30:27.549 -> send packet sent 20:30:27.582 -> READ CAN id: 2149580813 20:30:27.582 -> READ CAN from: 13 20:30:27.582 -> READ CAN to: 0 20:30:27.582 -> READ CAN currentPart: 0 20:30:27.582 -> READ CAN totalPartCount: 2 20:30:27.582 -> READ CAN messageId: 0 20:30:27.582 -> READ CAN data: 20:30:27.582 -> 13, 13, 0, 18, 195, 15, 255, 1, 20:30:27.582 -> READ CAN SLOT: 7 20:30:27.616 -> READ CAN lastReceivedPart: 1 20:30:29.606 -> READ CAN id: 2150629389 20:30:29.606 -> READ CAN from: 13 20:30:29.606 -> READ CAN to: 0 20:30:29.606 -> READ CAN currentPart: 0 20:30:29.606 -> READ CAN totalPartCount: 3 20:30:29.606 -> READ CAN messageId: 0 20:30:29.606 -> READ CAN data: 20:30:29.606 -> 13, 13, 0, 90, 0, 17, 255, 50, 20:30:29.606 -> READ CAN SLOT: 6 20:30:29.606 -> READ CAN lastReceivedPart: 1 20:30:29.606 -> READ CAN id: 2148532237 20:30:29.606 -> READ CAN from: 13 20:30:29.639 -> READ CAN to: 0 20:30:29.639 -> READ CAN currentPart: 0 20:30:29.639 -> READ CAN totalPartCount: 1 20:30:29.639 -> READ CAN messageId: 0 20:30:29.639 -> READ CAN data: 20:30:29.639 -> 13, 13, 0, 10, 35, 6, 255, 0, 20:30:29.639 -> READ CAN SLOT: 5 20:30:29.639 -> READ CAN lastReceivedPart: 1 20:30:29.639 -> READ CAN packet received 20:30:29.639 -> transport receive called 20:30:29.639 -> transport receive data: 13, 13, 0, 10, 35, 6, 255, 0, 20:30:29.639 -> 13;255;3;0;6;0 20:30:31.628 -> READ CAN id: 2150629389 20:30:31.628 -> READ CAN from: 13 20:30:31.628 -> READ CAN to: 0 20:30:31.628 -> READ CAN currentPart: 0 20:30:31.628 -> READ CAN totalPartCount: 3 20:30:31.628 -> READ CAN messageId: 0 20:30:31.664 -> READ CAN data: 20:30:31.664 -> 13, 13, 0, 106, 3, 11, 255, 66, 20:30:31.664 -> READ CAN SLOT: 5 20:30:31.664 -> READ CAN lastReceivedPart: 1 20:30:31.664 -> READ CAN id: 2149580813 20:30:31.664 -> READ CAN from: 13 20:30:31.664 -> READ CAN to: 0 20:30:31.664 -> READ CAN currentPart: 0 20:30:31.664 -> READ CAN totalPartCount: 2 20:30:31.664 -> READ CAN messageId: 0 20:30:31.664 -> READ CAN data: 20:30:31.664 -> 13, 13, 0, 26, 3, 12, 255, 49, 20:30:31.664 -> READ CAN SLOT: 4 20:30:31.664 -> READ CAN lastReceivedPart: 1 20:30:31.664 -> READ CAN id: 2148532237 20:30:31.664 -> READ CAN from: 13 20:30:31.664 -> READ CAN to: 0 20:30:31.664 -> READ CAN currentPart: 0 20:30:31.694 -> READ CAN totalPartCount: 1 20:30:31.694 -> READ CAN messageId: 0 20:30:31.694 -> READ CAN data: 20:30:31.694 -> 13, 13, 0, 2, 0, 0, 4, 20:30:31.694 -> READ CAN SLOT: 3 20:30:31.694 -> READ CAN lastReceivedPart: 1 20:30:31.694 -> READ CAN packet received 20:30:31.694 -> transport receive called 20:30:31.694 -> transport receive data: 13, 13, 0, 2, 0, 0, 4, 20:30:31.694 -> 13;4;0;0;0; 20:30:31.694 -> READ CAN id: 2148532237 20:30:31.694 -> READ CAN from: 13 20:30:31.694 -> READ CAN to: 0 20:30:31.694 -> READ CAN currentPart: 0 20:30:31.727 -> READ CAN totalPartCount: 1 20:30:31.727 -> READ CAN messageId: 0 20:30:31.727 -> READ CAN data: 20:30:31.727 -> 13, 13, 0, 10, 35, 26, 255, 2, 20:30:31.727 -> READ CAN SLOT: 3 20:30:31.727 -> READ CAN lastReceivedPart: 1 20:30:31.727 -> READ CAN packet received 20:30:31.727 -> transport receive called 20:30:31.727 -> transport receive data: 13, 13, 0, 10, 35, 26, 255, 2, 20:30:31.727 -> send partLen: 8 20:30:31.727 -> send data: 0;0;13;10;35;27;255;1;. 20:30:31.727 -> send CAN len: 8 20:30:31.727 -> send CAN noOfFrames: 1 20:30:31.727 -> send CAN id: 2148535552 20:30:31.727 -> send packet sent 20:30:31.827 -> READ CAN id: 2148532237 20:30:31.827 -> READ CAN from: 13 20:30:31.827 -> READ CAN to: 0 20:30:31.827 -> READ CAN currentPart: 0 20:30:31.827 -> READ CAN totalPartCount: 1 20:30:31.827 -> READ CAN messageId: 0 20:30:31.827 -> READ CAN data: 20:30:31.827 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:30:31.827 -> READ CAN SLOT: 3 20:30:31.827 -> READ CAN lastReceivedPart: 1 20:30:31.827 -> READ CAN packet received 20:30:31.827 -> transport receive called 20:30:31.827 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:30:31.827 -> 13;4;1;0;16;1 20:30:58.571 -> READ CAN id: 2148532237 20:30:58.571 -> READ CAN from: 13 20:30:58.571 -> READ CAN to: 0 20:30:58.571 -> READ CAN currentPart: 0 20:30:58.571 -> READ CAN totalPartCount: 1 20:30:58.571 -> READ CAN messageId: 0 20:30:58.571 -> READ CAN data: 20:30:58.571 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:30:58.571 -> READ CAN SLOT: 3 20:30:58.571 -> READ CAN lastReceivedPart: 1 20:30:58.571 -> READ CAN packet received 20:30:58.571 -> transport receive called 20:30:58.571 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:30:58.571 -> 13;4;1;0;16;0 20:30:58.736 -> READ CAN id: 2148532237 20:30:58.736 -> READ CAN from: 13 20:30:58.736 -> READ CAN to: 0 20:30:58.736 -> READ CAN currentPart: 0 20:30:58.736 -> READ CAN totalPartCount: 1 20:30:58.736 -> READ CAN messageId: 0 20:30:58.736 -> READ CAN data: 20:30:58.736 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:30:58.770 -> READ CAN SLOT: 3 20:30:58.770 -> READ CAN lastReceivedPart: 1 20:30:58.770 -> READ CAN packet received 20:30:58.770 -> transport receive called 20:30:58.770 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:30:58.770 -> 13;4;1;0;16;1 20:31:00.062 -> READ CAN id: 2148532237 20:31:00.062 -> READ CAN from: 13 20:31:00.062 -> READ CAN to: 0 20:31:00.062 -> READ CAN currentPart: 0 20:31:00.062 -> READ CAN totalPartCount: 1 20:31:00.062 -> READ CAN messageId: 0 20:31:00.062 -> READ CAN data: 20:31:00.062 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:31:00.062 -> READ CAN SLOT: 3 20:31:00.062 -> READ CAN lastReceivedPart: 1 20:31:00.062 -> READ CAN packet received 20:31:00.062 -> transport receive called 20:31:00.095 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:31:00.095 -> 13;4;1;0;16;0 20:31:01.521 -> READ CAN id: 2148532237 20:31:01.521 -> READ CAN from: 13 20:31:01.521 -> READ CAN to: 0 20:31:01.521 -> READ CAN currentPart: 0 20:31:01.521 -> READ CAN totalPartCount: 1 20:31:01.521 -> READ CAN messageId: 0 20:31:01.521 -> READ CAN data: 20:31:01.521 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:31:01.521 -> READ CAN SLOT: 3 20:31:01.521 -> READ CAN lastReceivedPart: 1 20:31:01.521 -> READ CAN packet received 20:31:01.521 -> transport receive called 20:31:01.521 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:31:01.521 -> 13;4;1;0;16;1 20:31:02.913 -> READ CAN id: 2148532237 20:31:02.913 -> READ CAN from: 13 20:31:02.913 -> READ CAN to: 0 20:31:02.913 -> READ CAN currentPart: 0 20:31:02.913 -> READ CAN totalPartCount: 1 20:31:02.913 -> READ CAN messageId: 0 20:31:02.913 -> READ CAN data: 20:31:02.913 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:31:02.913 -> READ CAN SLOT: 3 20:31:02.913 -> READ CAN lastReceivedPart: 1 20:31:02.946 -> READ CAN packet received 20:31:02.946 -> transport receive called 20:31:02.946 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:31:02.946 -> 13;4;1;0;16;0 20:31:03.775 -> READ CAN id: 2148532237 20:31:03.775 -> READ CAN from: 13 20:31:03.775 -> READ CAN to: 0 20:31:03.775 -> READ CAN currentPart: 0 20:31:03.775 -> READ CAN totalPartCount: 1 20:31:03.775 -> READ CAN messageId: 0 20:31:03.775 -> READ CAN data: 20:31:03.775 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:31:03.775 -> READ CAN SLOT: 3 20:31:03.775 -> READ CAN lastReceivedPart: 1 20:31:03.775 -> READ CAN packet received 20:31:03.808 -> transport receive called 20:31:03.808 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:31:03.808 -> 13;4;1;0;16;1 20:31:05.399 -> READ CAN id: 2148532237 20:31:05.433 -> READ CAN from: 13 20:31:05.433 -> READ CAN to: 0 20:31:05.433 -> READ CAN currentPart: 0 20:31:05.433 -> READ CAN totalPartCount: 1 20:31:05.433 -> READ CAN messageId: 0 20:31:05.433 -> READ CAN data: 20:31:05.433 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:31:05.433 -> READ CAN SLOT: 3 20:31:05.433 -> READ CAN lastReceivedPart: 1 20:31:05.433 -> READ CAN packet received 20:31:05.433 -> transport receive called 20:31:05.433 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:31:05.433 -> 13;4;1;0;16;0 20:31:05.565 -> READ CAN id: 2148532237 20:31:05.565 -> READ CAN from: 13 20:31:05.565 -> READ CAN to: 0 20:31:05.565 -> READ CAN currentPart: 0 20:31:05.565 -> READ CAN totalPartCount: 1 20:31:05.565 -> READ CAN messageId: 0 20:31:05.565 -> READ CAN data: 20:31:05.565 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:31:05.565 -> READ CAN SLOT: 3 20:31:05.565 -> READ CAN lastReceivedPart: 1 20:31:05.565 -> READ CAN packet received 20:31:05.565 -> transport receive called 20:31:05.565 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:31:05.598 -> 13;4;1;0;16;1 20:31:05.864 -> READ CAN id: 2148532237 20:31:05.897 -> READ CAN from: 13 20:31:05.897 -> READ CAN to: 0 20:31:05.897 -> READ CAN currentPart: 0 20:31:05.897 -> READ CAN totalPartCount: 1 20:31:05.897 -> READ CAN messageId: 0 20:31:05.897 -> READ CAN data: 20:31:05.897 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:31:05.897 -> READ CAN SLOT: 3 20:31:05.897 -> READ CAN lastReceivedPart: 1 20:31:05.897 -> READ CAN packet received 20:31:05.897 -> transport receive called 20:31:05.897 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:31:05.897 -> 13;4;1;0;16;0 20:31:05.996 -> READ CAN id: 2148532237 20:31:05.996 -> READ CAN from: 13 20:31:05.996 -> READ CAN to: 0 20:31:05.996 -> READ CAN currentPart: 0 20:31:05.996 -> READ CAN totalPartCount: 1 20:31:05.996 -> READ CAN messageId: 0 20:31:05.996 -> READ CAN data: 20:31:05.996 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:31:06.029 -> READ CAN SLOT: 3 20:31:06.029 -> READ CAN lastReceivedPart: 1 20:31:06.029 -> READ CAN packet received 20:31:06.029 -> transport receive called 20:31:06.029 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:31:06.029 -> 13;4;1;0;16;1 20:31:06.560 -> READ CAN id: 2148532237 20:31:06.560 -> READ CAN from: 13 20:31:06.560 -> READ CAN to: 0 20:31:06.560 -> READ CAN currentPart: 0 20:31:06.560 -> READ CAN totalPartCount: 1 20:31:06.560 -> READ CAN messageId: 0 20:31:06.560 -> READ CAN data: 20:31:06.560 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:31:06.560 -> READ CAN SLOT: 3 20:31:06.560 -> READ CAN lastReceivedPart: 1 20:31:06.560 -> READ CAN packet received 20:31:06.560 -> transport receive called 20:31:06.560 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:31:06.560 -> 13;4;1;0;16;0 20:31:07.024 -> READ CAN id: 2148532237 20:31:07.024 -> READ CAN from: 13 20:31:07.024 -> READ CAN to: 0 20:31:07.024 -> READ CAN currentPart: 0 20:31:07.024 -> READ CAN totalPartCount: 1 20:31:07.024 -> READ CAN messageId: 0 20:31:07.024 -> READ CAN data: 20:31:07.024 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:31:07.024 -> READ CAN SLOT: 3 20:31:07.024 -> READ CAN lastReceivedPart: 1 20:31:07.024 -> READ CAN packet received 20:31:07.024 -> transport receive called 20:31:07.057 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:31:07.057 -> 13;4;1;0;16;1 20:31:07.554 -> READ CAN id: 2148532237 20:31:07.554 -> READ CAN from: 13 20:31:07.554 -> READ CAN to: 0 20:31:07.587 -> READ CAN currentPart: 0 20:31:07.587 -> READ CAN totalPartCount: 1 20:31:07.587 -> READ CAN messageId: 0 20:31:07.587 -> READ CAN data: 20:31:07.587 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:31:07.587 -> READ CAN SLOT: 3 20:31:07.587 -> READ CAN lastReceivedPart: 1 20:31:07.587 -> READ CAN packet received 20:31:07.587 -> transport receive called 20:31:07.587 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:31:07.587 -> 13;4;1;0;16;0 20:31:07.654 -> READ CAN id: 2148532237 20:31:07.687 -> READ CAN from: 13 20:31:07.687 -> READ CAN to: 0 20:31:07.687 -> READ CAN currentPart: 0 20:31:07.687 -> READ CAN totalPartCount: 1 20:31:07.687 -> READ CAN messageId: 0 20:31:07.687 -> READ CAN data: 20:31:07.687 -> 13, 13, 0, 10, 33, 16, 4, 1, 20:31:07.687 -> READ CAN SLOT: 3 20:31:07.687 -> READ CAN lastReceivedPart: 1 20:31:07.687 -> READ CAN packet received 20:31:07.687 -> transport receive called 20:31:07.687 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 1, 20:31:07.687 -> 13;4;1;0;16;1 20:31:07.919 -> READ CAN id: 2148532237 20:31:07.919 -> READ CAN from: 13 20:31:07.919 -> READ CAN to: 0 20:31:07.919 -> READ CAN currentPart: 0 20:31:07.919 -> READ CAN totalPartCount: 1 20:31:07.919 -> READ CAN messageId: 0 20:31:07.919 -> READ CAN data: 20:31:07.919 -> 13, 13, 0, 10, 33, 16, 4, 0, 20:31:07.919 -> READ CAN SLOT: 3 20:31:07.919 -> READ CAN lastReceivedPart: 1 20:31:07.919 -> READ CAN packet received 20:31:07.919 -> transport receive called 20:31:07.919 -> transport receive data: 13, 13, 0, 10, 33, 16, 4, 0, 20:31:07.952 -> 13;4;1;0;16;0sensor
20:30:07.251 -> 20:30:07.251 -> __ __ ____ 20:30:07.251 -> | \/ |_ _/ ___| ___ _ __ ___ ___ _ __ ___ 20:30:07.251 -> | |\/| | | | \___ \ / _ \ `_ \/ __|/ _ \| `__/ __| 20:30:07.251 -> | | | | |_| |___| | __/ | | \__ \ _ | | \__ \ 20:30:07.251 -> |_| |_|\__, |____/ \___|_| |_|___/\___/|_| |___/ 20:30:07.251 -> |___/ 2.4.0-alpha 20:30:07.251 -> 20:30:07.251 -> 17 MCO:BGN:INIT NODE,CP=RCNNA---,FQ=16,REL=0,VER=2.4.0-alpha 20:30:07.251 -> 27 TSM:INIT 20:30:07.251 -> 28 TSF:WUR:MS=0 20:30:07.284 -> Entering Configuration Mode Successful! 20:30:07.284 -> Setting Baudrate Successful! 20:30:07.284 -> Starting to Set Mask! 20:30:07.284 -> Setting Mask Successful! 20:30:07.284 -> Starting to Set Filter! 20:30:07.284 -> Setting Filter Successfull! 20:30:07.284 -> Starting to Set Filter! 20:30:07.284 -> Setting Filter Successfull! 20:30:07.284 -> Starting to Set Mask! 20:30:07.284 -> Setting Mask Successful! 20:30:07.284 -> Starting to Set Filter! 20:30:07.284 -> Setting Filter Successfull! 20:30:07.284 -> Starting to Set Filter! 20:30:07.284 -> Setting Filter Successfull! 20:30:07.317 -> Starting to Set Filter! 20:30:07.317 -> Setting Filter Successfull! 20:30:07.317 -> Starting to Set Filter! 20:30:07.317 -> Setting Filter Successfull! 20:30:07.317 -> 66 TSM:INIT:TSP OK 20:30:07.317 -> 73 TSM:INIT:STATID=13 20:30:07.317 -> 75 TSF:SID:OK,ID=13 20:30:07.317 -> 77 TSM:FPAR 20:30:07.317 -> send partLen: 7 20:30:07.317 -> send data: 13;13;255;2;3;7;255;. 20:30:07.317 -> send CAN len: 7 20:30:07.317 -> send CAN noOfFrames: 1 20:30:07.317 -> send CAN id: 2148597517 20:30:07.317 -> send packet sent 20:30:07.317 -> 84 ?TSF:MSG:SEND,13-13-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 20:30:09.340 -> 2097 !TSM:FPAR:NO REPLY 20:30:09.340 -> 2099 TSM:FPAR 20:30:09.340 -> send partLen: 7 20:30:09.340 -> send data: 13;13;255;2;3;7;255;. 20:30:09.340 -> send CAN len: 7 20:30:09.340 -> send CAN noOfFrames: 1 20:30:09.340 -> send CAN id: 2148597517 20:30:09.340 -> send packet sent 20:30:09.340 -> 2106 ?TSF:MSG:SEND,13-13-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 20:30:11.362 -> 4118 !TSM:FPAR:NO REPLY 20:30:11.362 -> 4120 TSM:FPAR 20:30:11.362 -> send partLen: 7 20:30:11.362 -> send data: 13;13;255;2;3;7;255;. 20:30:11.362 -> send CAN len: 7 20:30:11.362 -> send CAN noOfFrames: 1 20:30:11.362 -> send CAN id: 2148597517 20:30:11.362 -> send packet sent 20:30:11.362 -> 4127 ?TSF:MSG:SEND,13-13-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 20:30:13.384 -> 6140 !TSM:FPAR:NO REPLY 20:30:13.384 -> 6142 TSM:FPAR 20:30:13.384 -> send partLen: 7 20:30:13.384 -> send data: 13;13;255;2;3;7;255;. 20:30:13.384 -> send CAN len: 7 20:30:13.384 -> send CAN noOfFrames: 1 20:30:13.384 -> send CAN id: 2148597517 20:30:13.384 -> send packet sent 20:30:13.384 -> 6150 ?TSF:MSG:SEND,13-13-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 20:30:15.406 -> 8162 !TSM:FPAR:FAIL 20:30:15.406 -> 8163 TSM:FAIL:CNT=1 20:30:15.406 -> 8165 TSM:FAIL:DIS 20:30:15.406 -> 8167 TSF:TDI:TSL 20:30:25.427 -> 18169 TSM:FAIL:RE-INIT 20:30:25.427 -> 18171 TSM:INIT 20:30:25.427 -> Entering Configuration Mode Successful! 20:30:25.427 -> Setting Baudrate Successful! 20:30:25.427 -> Starting to Set Mask! 20:30:25.427 -> Setting Mask Successful! 20:30:25.427 -> Starting to Set Filter! 20:30:25.427 -> Setting Filter Successfull! 20:30:25.427 -> Starting to Set Filter! 20:30:25.427 -> Setting Filter Successfull! 20:30:25.427 -> Starting to Set Mask! 20:30:25.427 -> Setting Mask Successful! 20:30:25.427 -> Starting to Set Filter! 20:30:25.460 -> Setting Filter Successfull! 20:30:25.460 -> Starting to Set Filter! 20:30:25.460 -> Setting Filter Successfull! 20:30:25.460 -> Starting to Set Filter! 20:30:25.460 -> Setting Filter Successfull! 20:30:25.460 -> Starting to Set Filter! 20:30:25.460 -> Setting Filter Successfull! 20:30:25.460 -> 18209 TSM:INIT:TSP OK 20:30:25.460 -> 18216 TSM:INIT:STATID=13 20:30:25.460 -> 18219 TSF:SID:OK,ID=13 20:30:25.460 -> 18221 TSM:FPAR 20:30:25.460 -> send partLen: 7 20:30:25.460 -> send data: 13;13;255;2;3;7;255;. 20:30:25.460 -> send CAN len: 7 20:30:25.460 -> send CAN noOfFrames: 1 20:30:25.493 -> send CAN id: 2148597517 20:30:25.493 -> send packet sent 20:30:25.493 -> 18229 ?TSF:MSG:SEND,13-13-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK: 20:30:26.024 -> READ CAN id: 2148535552 20:30:26.024 -> READ CAN from: 0 20:30:26.024 -> READ CAN to: 13 20:30:26.024 -> READ CAN currentPart: 0 20:30:26.024 -> READ CAN totalPartCount: 1 20:30:26.024 -> READ CAN messageId: 0 20:30:26.024 -> READ CAN data: 20:30:26.024 -> 0, 0, 13, 10, 35, 8, 255, 0, 20:30:26.024 -> READ CAN SLOT: 7 20:30:26.024 -> READ CAN lastReceivedPart: 1 20:30:26.024 -> READ CAN packet received 20:30:26.024 -> transport receive called 20:30:26.024 -> transport receive data: 0, 0, 13, 10, 35, 8, 255, 0, 20:30:26.061 -> 18790 TSF:MSG:READ,0-0-13,s=255,c=3,t=8,pt=1,l=1,sg=0:0 20:30:26.061 -> 18800 TSF:MSG:FPAR OK,ID=0,D=1 20:30:27.483 -> 20241 TSM:FPAR:OK 20:30:27.483 -> 20242 TSM:ID 20:30:27.483 -> 20244 TSM:ID:OK 20:30:27.483 -> 20245 TSM:UPL 20:30:27.483 -> send partLen: 8 20:30:27.483 -> send data: 13;13;0;10;35;24;255;1;. 20:30:27.483 -> send CAN len: 8 20:30:27.516 -> send CAN noOfFrames: 1 20:30:27.516 -> send CAN id: 2148532237 20:30:27.516 -> send packet sent 20:30:27.516 -> 20252 TSF:MSG:SEND,13-13-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1 20:30:27.549 -> READ CAN id: 2148535552 20:30:27.549 -> READ CAN from: 0 20:30:27.549 -> READ CAN to: 13 20:30:27.549 -> READ CAN currentPart: 0 20:30:27.549 -> READ CAN totalPartCount: 1 20:30:27.549 -> READ CAN messageId: 0 20:30:27.549 -> READ CAN data: 20:30:27.549 -> 0, 0, 13, 10, 35, 25, 255, 1, 20:30:27.549 -> READ CAN SLOT: 7 20:30:27.549 -> READ CAN lastReceivedPart: 1 20:30:27.549 -> READ CAN packet received 20:30:27.549 -> transport receive called 20:30:27.549 -> transport receive data: 0, 0, 13, 10, 35, 25, 255, 1, 20:30:27.549 -> 20310 TSF:MSG:READ,0-0-13,s=255,c=3,t=25,pt=1,l=1,sg=0:1 20:30:27.582 -> 20321 TSF:MSG:PONG RECV,HP=1 20:30:27.582 -> 20323 TSM:UPL:OK 20:30:27.582 -> 20325 TSM:READY:ID=13,PAR=0,DIS=1 20:30:27.582 -> send partLen: 8 20:30:27.582 -> send data: 13;13;0;18;195;15;255;1;. 20:30:27.582 -> send CAN len: 9 20:30:27.582 -> send CAN noOfFrames: 2 20:30:27.582 -> send CAN id: 2149580813 20:30:27.582 -> send packet sent 20:30:27.582 -> 20334 TSF:MSG:SEND,13-13-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100 20:30:29.606 -> send partLen: 8 20:30:29.606 -> send data: 13;13;0;90;0;17;255;50;. 20:30:29.606 -> send CAN len: 18 20:30:29.606 -> send CAN noOfFrames: 3 20:30:29.606 -> send CAN id: 2150629389 20:30:29.606 -> send packet sent 20:30:29.606 -> 22351 TSF:MSG:SEND,13-13-0-0,s=255,c=0,t=17,pt=0,l=11,sg=0,ft=0,st=OK:2.4.0-alpha 20:30:29.606 -> send partLen: 8 20:30:29.606 -> send data: 13;13;0;10;35;6;255;0;. 20:30:29.606 -> send CAN len: 8 20:30:29.606 -> send CAN noOfFrames: 1 20:30:29.606 -> send CAN id: 2148532237 20:30:29.606 -> send packet sent 20:30:29.639 -> 22370 TSF:MSG:SEND,13-13-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0 20:30:31.628 -> send partLen: 8 20:30:31.628 -> send data: 13;13;0;106;3;11;255;66;. 20:30:31.628 -> send CAN len: 20 20:30:31.628 -> send CAN noOfFrames: 3 20:30:31.628 -> send CAN id: 2150629389 20:30:31.628 -> send packet sent 20:30:31.628 -> 24387 TSF:MSG:SEND,13-13-0-0,s=255,c=3,t=11,pt=0,l=13,sg=0,ft=0,st=OK:Binary Sensor 20:30:31.662 -> send partLen: 8 20:30:31.662 -> send data: 13;13;0;26;3;12;255;49;. 20:30:31.662 -> send CAN len: 10 20:30:31.662 -> send CAN noOfFrames: 2 20:30:31.662 -> send CAN id: 2149580813 20:30:31.662 -> send packet sent 20:30:31.662 -> 24406 TSF:MSG:SEND,13-13-0-0,s=255,c=3,t=12,pt=0,l=3,sg=0,ft=0,st=OK:1.0 20:30:31.662 -> send partLen: 7 20:30:31.662 -> send data: 13;13;0;2;0;0;4;. 20:30:31.662 -> send CAN len: 7 20:30:31.662 -> send CAN noOfFrames: 1 20:30:31.662 -> send CAN id: 2148532237 20:30:31.662 -> send packet sent 20:30:31.662 -> 24423 TSF:MSG:SEND,13-13-0-0,s=4,c=0,t=0,pt=0,l=0,sg=0,ft=0,st=OK: 20:30:31.694 -> 24434 MCO:REG:REQ 20:30:31.694 -> send partLen: 8 20:30:31.694 -> send data: 13;13;0;10;35;26;255;2;. 20:30:31.694 -> send CAN len: 8 20:30:31.694 -> send CAN noOfFrames: 1 20:30:31.694 -> send CAN id: 2148532237 20:30:31.694 -> send packet sent 20:30:31.694 -> 24442 TSF:MSG:SEND,13-13-0-0,s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=OK:2 20:30:31.727 -> READ CAN id: 2148535552 20:30:31.727 -> READ CAN from: 0 20:30:31.727 -> READ CAN to: 13 20:30:31.727 -> READ CAN currentPart: 0 20:30:31.760 -> READ CAN totalPartCount: 1 20:30:31.760 -> READ CAN messageId: 0 20:30:31.760 -> READ CAN data: 20:30:31.760 -> 0, 0, 13, 10, 35, 27, 255, 1, 20:30:31.760 -> READ CAN SLOT: 7 20:30:31.760 -> READ CAN lastReceivedPart: 1 20:30:31.760 -> READ CAN packet received 20:30:31.760 -> transport receive called 20:30:31.760 -> transport receive data: 0, 0, 13, 10, 35, 27, 255, 1, 20:30:31.760 -> 24513 TSF:MSG:READ,0-0-13,s=255,c=3,t=27,pt=1,l=1,sg=0:1 20:30:31.760 -> 24523 MCO:PIM:NODE REG=1 20:30:31.760 -> 24525 MCO:BGN:STP 20:30:31.760 -> 24527 MCO:BGN:INIT OK,TSP=1 20:30:31.794 -> 24529 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:30:31.794 -> 24535 TSF:TDI:TSL 20:30:31.794 -> 24537 MCO:SLP:WUP=-1 20:30:31.794 -> 24539 TSF:TRI:TSB 20:30:31.794 -> send partLen: 8 20:30:31.794 -> send data: 13;13;0;10;33;16;4;1;. 20:30:31.794 -> send CAN len: 8 20:30:31.827 -> send CAN noOfFrames: 1 20:30:31.827 -> send CAN id: 2148532237 20:30:31.827 -> send packet sent 20:30:31.827 -> 24546 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:1 20:30:31.827 -> 24557 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:30:31.827 -> 24562 TSF:TDI:TSL 20:30:58.538 -> 24563 MCO:SLP:WUP=1 20:30:58.538 -> 24565 TSF:TRI:TSB 20:30:58.538 -> 24567 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:30:58.538 -> 24572 TSF:TDI:TSL 20:30:58.538 -> 24573 MCO:SLP:WUP=-1 20:30:58.538 -> 24576 TSF:TRI:TSB 20:30:58.538 -> send partLen: 8 20:30:58.538 -> send data: 13;13;0;10;33;16;4;0;. 20:30:58.571 -> send CAN len: 8 20:30:58.571 -> send CAN noOfFrames: 1 20:30:58.571 -> send CAN id: 2148532237 20:30:58.571 -> send packet sent 20:30:58.571 -> 24584 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:0 20:30:58.571 -> 24595 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:30:58.571 -> 24599 TSF:TDI:TSL 20:30:58.703 -> 24601 MCO:SLP:WUP=1 20:30:58.703 -> 24603 TSF:TRI:TSB 20:30:58.703 -> 24605 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:30:58.703 -> 24609 TSF:TDI:TSL 20:30:58.736 -> 24611 MCO:SLP:WUP=-1 20:30:58.736 -> 24613 TSF:TRI:TSB 20:30:58.736 -> send partLen: 8 20:30:58.736 -> send data: 13;13;0;10;33;16;4;1;. 20:30:58.736 -> send CAN len: 8 20:30:58.736 -> send CAN noOfFrames: 1 20:30:58.736 -> send CAN id: 2148532237 20:30:58.736 -> send packet sent 20:30:58.736 -> 24622 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:1 20:30:58.736 -> 24633 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:30:58.770 -> 24637 TSF:TDI:TSL 20:31:00.029 -> 24639 MCO:SLP:WUP=1 20:31:00.029 -> 24640 TSF:TRI:TSB 20:31:00.029 -> 24642 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:31:00.029 -> 24647 TSF:TDI:TSL 20:31:00.062 -> 24649 MCO:SLP:WUP=-1 20:31:00.062 -> 24651 TSF:TRI:TSB 20:31:00.062 -> send partLen: 8 20:31:00.062 -> send data: 13;13;0;10;33;16;4;0;. 20:31:00.062 -> send CAN len: 8 20:31:00.062 -> send CAN noOfFrames: 1 20:31:00.062 -> send CAN id: 2148532237 20:31:00.062 -> send packet sent 20:31:00.062 -> 24658 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:0 20:31:00.062 -> 24670 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:31:00.062 -> 24674 TSF:TDI:TSL 20:31:00.128 -> 24676 MCO:SLP:WUP=1 20:31:00.128 -> 24678 TSF:TRI:TSB 20:31:00.128 -> 24680 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:31:00.128 -> 24684 TSF:TDI:TSL 20:31:00.162 -> 24686 MCO:SLP:WUP=-1 20:31:00.162 -> 24688 TSF:TRI:TSB 20:31:00.162 -> 24690 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:31:00.162 -> 24694 TSF:TDI:TSL 20:31:01.454 -> 24696 MCO:SLP:WUP=1 20:31:01.454 -> 24698 TSF:TRI:TSB 20:31:01.454 -> 24699 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:31:01.487 -> 24705 TSF:TDI:TSL 20:31:01.487 -> 24707 MCO:SLP:WUP=-1 20:31:01.487 -> 24709 TSF:TRI:TSB 20:31:01.487 -> send partLen: 8 20:31:01.487 -> send data: 13;13;0;10;33;16;4;1;. 20:31:01.487 -> send CAN len: 8 20:31:01.487 -> send CAN noOfFrames: 1 20:31:01.521 -> send CAN id: 2148532237 20:31:01.521 -> send packet sent 20:31:01.521 -> 24716 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:1 20:31:01.521 -> 24727 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:31:01.521 -> 24732 TSF:TDI:TSL 20:31:02.880 -> 24733 MCO:SLP:WUP=1 20:31:02.880 -> 24735 TSF:TRI:TSB 20:31:02.880 -> 24737 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:31:02.880 -> 24742 TSF:TDI:TSL 20:31:02.913 -> 24743 MCO:SLP:WUP=-1 20:31:02.913 -> 24745 TSF:TRI:TSB 20:31:02.913 -> send partLen: 8 20:31:02.913 -> send data: 13;13;0;10;33;16;4;0;. 20:31:02.913 -> send CAN len: 8 20:31:02.913 -> send CAN noOfFrames: 1 20:31:02.913 -> send CAN id: 2148532237 20:31:02.913 -> send packet sent 20:31:02.913 -> 24754 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:0 20:31:02.913 -> 24765 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:31:02.946 -> 24769 TSF:TDI:TSL 20:31:03.742 -> 24771 MCO:SLP:WUP=1 20:31:03.742 -> 24773 TSF:TRI:TSB 20:31:03.742 -> 24775 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:31:03.742 -> 24779 TSF:TDI:TSL 20:31:03.775 -> 24781 MCO:SLP:WUP=-1 20:31:03.775 -> 24783 TSF:TRI:TSB 20:31:03.775 -> send partLen: 8 20:31:03.775 -> send data: 13;13;0;10;33;16;4;1;. 20:31:03.775 -> send CAN len: 8 20:31:03.775 -> send CAN noOfFrames: 1 20:31:03.775 -> send CAN id: 2148532237 20:31:03.775 -> send packet sent 20:31:03.775 -> 24792 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:1 20:31:03.775 -> 24803 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:31:03.775 -> 24807 TSF:TDI:TSL 20:31:05.366 -> 24809 MCO:SLP:WUP=1 20:31:05.366 -> 24810 TSF:TRI:TSB 20:31:05.366 -> 24812 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:31:05.366 -> 24817 TSF:TDI:TSL 20:31:05.399 -> 24819 MCO:SLP:WUP=-1 20:31:05.399 -> 24821 TSF:TRI:TSB 20:31:05.399 -> send partLen: 8 20:31:05.399 -> send data: 13;13;0;10;33;16;4;0;. 20:31:05.399 -> send CAN len: 8 20:31:05.399 -> send CAN noOfFrames: 1 20:31:05.399 -> send CAN id: 2148532237 20:31:05.399 -> send packet sent 20:31:05.433 -> 24828 TSF:MSG:SEND,13-13-0-0,s=4,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:0 20:31:05.433 -> 24840 MCO:SLP:MS=0,SMS=0,I1=1,M1=1,I2=255,M2=255 20:31:05.433 -> 24844 TSF:TDI:TSL 20:31:05.532 -> 24846 MCO:SLP:WUP=1 20:31:05.532 -> 24848 TSF:TRI:TSB 20:31:05.532 -> 24850 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 20:31:05.532 -> 24854 TSF:TDI:TSL 20:31:05.565 -> 24856 MCO:SLP:WUP=-1 20:31:05.565 -> 24858 TSF:TRI:TSB 20:31:05.565 -> send partLen: 8 20:31:05.565 -> send data: 13;13;0;10;33;16;4;1;.@Adam-Slowik said in CAN bus transport implementation:
20:30:09.340 -> 2097 !TSM:FPAR:NO REPLY
This means the node doesn't get an answer from the gateway on the find parent request. If that occurs three times, the transport is reinitialised
-
Question: Is your gateway connected to some controller software?
Afaik, MySensors won't work propperly without, this is what you experience as problems with ID request and transport layer reset. Though there are options to get around that, I'd strongly recommend to involve one. -
a request for information, how to do :
to add the CAN transport you have to modify the files or replace them with what exists ?
- MyTransportCAN.cpp
- MyTransportHAL.h
https://github.com/mysensors/MySensors/pull/1488/commits/492aa631298d5960b4060f94084cdafaaad18f21
I will maybe test the work of AdamSlowik
-
Hi @JeeLet, to test my implementation You should:
- Set up hardware as described in my first post in this thrread.
- Download source from my fork (https://github.com/AdamSlowik/MySensors/archive/refs/heads/development.zip)
- Somewhere in Your lib folder swap official MySensors files with those downloaded.
- Upload "CANSwitch.ino" to first arduino and "GatewaySerialCAN.ino" to second one. Both files can be found in examples.
If everything is fine then You Should get results similar to those presented in my post dated to "14 Jul 2020, 20:42"
Please let Us know if You managed to reproduce My results.
-
Hello
thank you for the answerquestions:
-
which CAN library did you start on,
mcp2515.h or mcp_can.h ...etc -
the management of Float values is also managed ?
(numbers with decimals )
like this library which manages Floats https://github.com/pierremolinaro/acan/search?q=float -
and of course any CAN card is managed, like this one https://www.gotronic.fr/ori-module-bus-can-sbc-can01-28405.jpg
I prepare another test computer for the installation of your version :)
Translated with www.DeepL.com/Translator (free version)
-
-
1
- which CAN library did you start on,
I have used https://github.com/coryjfowler/MCP_CAN_lib
This library is embedded in code in my fork, so if You are going to test My fork You don't have to worry about underlying library. Consider it an implementation detail. If You are going to implement CAN bus transport at Your own, You can pick different library.2
- the management of Float values is also managed ?
I did not tested transferring float numbers over CAN network, however in my opinion such concern is out of the scope of protocol implementation. During implementation My goal was to transfer array of bytes from one arduino to another via CAN. I don't care how those bytes are interpreted. Those bytes can be Strings, ints, floats, images etc. It should not matter.
3
- and of course any CAN card is managed, like this one https://www.gotronic.fr/ori-module-bus-can-sbc-can01-28405.jpg
Any CAN module supported by underlying library should be ok (so after all it's not an implemantation detail). Library readme says it will work with MCP2515 and MCP25625. Module picked by You (https://www.gotronic.fr/art-module-bus-can-sbc-can01-28405.htm) have MCP2515+MCP2562 so You should be god. Module used by Me had MCP2515+tja1050. Yours transciever is different then mine, however I hope it doesn't matter
4
I prepare another test computer for the installation of your version :)
I would really appreciate Your feedback
-
"you can choose a different library"
I like this freedom of choice, my questioning is not necessary :)"I would really appreciate your comments"
yes yes in 4 to 5 days, theoreticallyFinally a high reliability Wired Bus for MySensors with the MyS protocol which is extraordinarily rich.
(the RS485 bus is good, but the cables/wiring must be more rigorous and the management of collisions more delicate for X Nodes, and the CAN bus is a good field bus ) -
Hello
to save time, you can tell me more about the configuration of MCP_CAN_lib
not all settings are shown on the MyS sketch :)
here in an example https://github.com/coryjfowler/MCP_CAN_lib/blob/master/examples/CAN_receive/CAN_receive.ino
there are some parameters to adjustor the filters https://github.com/coryjfowler/MCP_CAN_lib/blob/master/examples/Extended_MaskFilter/Extended_MaskFilter.ino
can you indicate me the files in question ???
(I think I have found but to confirm)to make it clean
thanks
-
So I have pull up some config parameters. Those are defined and briefly described in:
https://github.com/AdamSlowik/MySensors/blob/development/MyConfig.h
lines 270-315
You can set those parameters to different values, but for first run I suggest deploy examples without modifications. By examples I mean those 2 files:
https://github.com/AdamSlowik/MySensors/blob/development/examples/CANSwitch/CANSwitch.ino
https://github.com/AdamSlowik/MySensors/blob/development/examples/GatewaySerialCAN/GatewaySerialCAN.inoIf it fails I would set:
CAN_CLOCK to MCP_16MHZ
because i think can module from Your vendor uses 16MHz (My used 8MHz)filters are set in:
https://github.com/AdamSlowik/MySensors/blob/development/hal/transport/CAN/MyTransportCAN.cpp
line 37 method _initFilters()
without clear reason (eg. bug) I would recommend to not alter it.
Filters are set to drop messages not intended for certain node. Thanks to this MCU do not have to handle 'spam'.If My answer answers Yours questions then great. If this is insufficient ask for a specific parameter or line in code I will try to answer any questions asap
-
a start of error messages return (on both sketches)
IDE version 1.8.19for CANSwitch.ino
the message returns me to the line
MyTransportCAN.cpp --->
163 : ",TOTAL=%"PRIu8",CURR=%"PRIu8",TO=%"PRIu8",FROM=%"PRIu8"\n"), header, messageId, totalPartCount,
228 : ",TOTAL=%"PRIu32",CURR=%"PRIu32",TO=%"PRIu32",FROM=%"PRIu32"\n"), rxId, messageId,the one copy (a part) of the IDE
In file included from /home/mci/Arduino/libraries/MySensors-development/MySensors.h:395:0, from /tmp/arduino_modified_sketch_39381/CANSwitch.ino:43: /home/Arduino/libraries/MySensors-development/hal/transport/CAN/MyTransportCAN.cpp:163:17: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix] ",TOTAL=%"PRIu8",CURR=%"PRIu8",TO=%"PRIu8",FROM=%"PRIu8"\n"), header, messageId, totalPartCount, ^ /home/Arduino/libraries/MySensors-development/hal/transport/CAN/MyTransportCAN.cpp:163:32: war...... ^... /home/Arduino/libraries/MySensors-development/hal/transport/CAN/MyTransportCAN.cpp:228:18: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix] ",TOTAL=%"PRIu32",CURR=%"PRIu32",TO=%"PRIu32",FROM=%"PRIu32"\n"), rxId, messageId, ^ /home/Arduino/libraries/MySensors-development/hal/transport/CAN/MyTransportCAN.cpp:228:34: warni..... -
https://sourcecodeartisan.com/2021/03/06/invalid-suffix-on-literal.html
for the Error code it is
a requirement in C++ 11 (or later).lines 163 and 228 modify and error resolved
.../hal.transport/CAN/MyTransportCAN.cpp
CAN_DEBUG(PSTR("CAN:SND:CANH=%" PRIu32 ",ID=%" PRIu8 ",TOTAL=%" PRIu8 ",CURR=%" PRIu8 ",TO=%" PRIu8 ",FROM=%" PRIu8 "\n"), header, messageId, totalPartCount,CAN_DEBUG(PSTR("CAN:RCV:CANH=%" PRIu32 ",ID=%" PRIu32 ",TOTAL=%" PRIu32 ",CURR=%" PRIu32 ",TO=%" PRIu32 ",FROM=%" PRIu32 "\n"), rxId, messageId,:+1:
-
a topo of the day
on the hardware side, I got screwed with an arduino pin that became too soft, too dilated, look for an hour before understanding why no dialog.
Otherwise, on the Gateway side, no problem, MyController recognized well.
and CAN_Switch.ino is good too, my Widget on MyC switches well on the switch change.
listing of the dialog pour le Node 51 (set up in a fixed place )
coter log from MyC:
2022-06-11T18:49:35.167+0200 recd 0;255;3;0;9;1482640 TSF:MSG:READ,51-51-0,s=4,c=1,t=16,pt=1,l=1,sg=0:1 2022-06-11T18:49:35.170+0200 recd 51;4;1;0;16;1 2022-06-11T18:49:35.179+0200 recd 0;255;3;0;9;1482653 TSF:MSG:READ,51-51-0,s=255,c=3,t=21,pt=1,l=1,sg=0:0 2022-06-11T18:49:35.182+0200 recd 51;255;3;0;21;0coter IDE from MyS:
67889 TSF:MSG:BC 68197 TSF:MSG:SEND,51-51-0-0,s=255,c=3,t=21,pt=1,l=1,sg=0,ft=0,st=OK:0 68203 TSF:MSG:READ,0-0-255,s=255,c=3,t=20,pt=0,l=0,sg=0: 68208 TSF:MSG:BC 68836 TSF:MSG:SEND,51-51-0-0,s=255,c=3,t=21,pt=1,l=1,sg=0,ft=0,st=OK:0 68843 MCO:SLP:MS=5,SMS=0,I1=255,M1=255,I2=255,M2=255 68848 TSF:TDI:TSL 68849 MCO:SLP:WUP=-1 ........ it is incompletewell now we have to calm down the CAN bus dialog, the Rx/Tx Led of the gateway looks like a Christmas tree :)tomorrow I'll test a CAN_Switch version2 sketch
-
test with the digital output inputs of 2 Arduino on CAN Bus.
- status of a button and control of a led with MyC
a proof in video that it is functional :)
all is not functional, on the end of the video, the reset or reboot does not work, (but functional with the RS485 bus)
.... to follow ;)
(now the Analog values, decimal to test )I would like to test the Node to Node with the filtering.
a question : is it difficult to put the filters on the MySensors sketch ???there are still MySensors on the forum ???
if yes, a help for Adam Slowik would be a great thing.
implement it in MyS Yes YesThanks
-
@JeeLet as I can see You had bussy weekend. I was AFK so I was unable to respond. Within working days I should be able to respond quicker.
@JeeLet said in CAN bus transport implementation:
lines 163 and 228 modify and error resolved
Can you push Your fix to My repo?
@JeeLet said in CAN bus transport implementation:
a proof in video that it is functional
Great job! I never was at this stage.
@JeeLet said in CAN bus transport implementation:
all is not functional, on the end of the video, the reset or reboot does not work, (but functional with the RS485 bus)
.... to followCan You provide (gateway/node) logs from reset scenario. It would be great to have those logs either for RS485 and CAN so I can compare them.
@JeeLet said in CAN bus transport implementation:
I would like to test the Node to Node with the filtering.
a question : is it difficult to put the filters on the MySensors sketch ???Could You describe what kind of test You would like to perform? Right now there is no way to set filters from the sketch. I think it should stay this way.
Perhaps We have different things in mind when We think about filters. I'll try to describe how I see this.
When it comes to CAN frame there is header and body. Header contains metadata and body contains data. mcp2515 can filter frames based on header content. Header contains id of destination node. Based on this id filters are set to drop any messages not intended for current node. This way if gateway want to send message to node with id=51 only node with this id receives this message.
There is exception for this rule. Messages with destination id set to BROADCAST_ADDRESS reaches all nodes.
With this in mind I see no reason to set filters differently. Of course I can be wrong.
Composition of header is described in MyTransportCAN.cpp in method _buildHeader()
As of now my all can modules and arduinos are burried in some box at My attic so I am unable to test anything
-
"Can you provide logs (gateway/node) from the reset scenario. It would be great to have these logs for RS485 and CAN so I can compare them."
Released today 2 gateways connect to MyController
- UNO_usb - Gateway and RS485 bus
- UNO_usb - Gateway and CAN Bus
with connect, a UNO with the basic sketch "RelayWithButtonActuator_base.ino" (slightly modified)
with ... a Led and a Switch, for each bus.The Listing split in several parts
"Log of the IDE and MyC for the two types of bus (node34 and node 54), CAN and RS485.
- Listing Action RESET with MyController 2 parts for CAN and 2 parts for RS485 and - Listing Action On/Off on the node switch or with MyController 4 parts for CAN and 4 parts for RS485No error on the Reset, it works fine, an error from me.
Oh yes, I even found an error :)
the sendSketchInfo("test xxxxx", "1.0"); is not upsee the end of the video
video....I will answer the other question tomorrow.
-
@Adam-Slowik "Can you push your patch to my repository? " .... I don't know how
On the CAN principle
@Adam-Slowik "Based on this id, the filters are configured to remove all messages not intended for the current node. This way, if the gateway wants to send a message to the node with id = 51, only the node with that id receives that message." ... yes, that's how I see it.
another way to say/explain it.
"The philosophy of CAN is to constitute a messaging system.
The messages (the letter) send on the CAN Bus (the post office), distributed by the CAN Bus (the letter carrier).Each (letter) have each an identifier (stamp of the post ☺ ) that ... identifies it.
And put in the right mailbox (the MCP2515) according to the choice of filter/mask ( color, scent? ☺ ) of the letter."So there are two "stratum" of dialogue / work.
- one on the Can Bus, and another on the Nodes.
The idea is to relieve the Nodes of unnecessary work/effort with the risks that this brings. Less letter to open :)
@Adam-Slowik "... my modules and arduinos are buried in a box in my attic..." ? Arduino 8bit and MySensors is over for you?
( if it's a personal / family reason don't say anything ) -
I tested my sketch with clock and OLED to see :)
bah No the time is not up :(
I give this information for an overview, it can help for the continuation (but not to give you work :) )
The listing of the messages of mySensors
test with "void receiveTime" function (without RTC clock)
https://forum.mysensors.org/topic/4809/real-time-clock-module-lcd-display-and-controller-time/8?_=1655208396048..........Log MyC - terminal ssh ......... 2022-06-14T14:01:45.115+0200 recd 0;255;3;0;9;65310350 TSF:MSG:READ,55-55-0,s=255,c=3,t=1,pt=0,l=0,sg=0: 2022-06-14T14:01:45.119+0200 recd 0;255;3;0;9;65310356 TSF:MSG:ECHO REQ 2022-06-14T14:01:45.127+0200 recd 0;255;3;0;9;65310360 TSF:MSG:SEND,0-0-55-55,s=255,c=3,t=1,pt=0,l=0,sg=0,ft=0,st=OK: 2022-06-14T14:01:45.127+0200 recd 55;255;3;0;1; 2022-06-14T14:01:45.146+0200 sent 55;255;3;0;1;1655215305 2022-06-14T14:01:45.160+0200 recd 0;255;3;0;9;65310394 TSF:MSG:SEND,0-0-55-55,s=255,c=3,t=1,pt=0,l=10,sg=0,ft=0,st=OK:1655215305..........Log MyS - terminal IDE ......... time current:0 ------------------------------------------- 58007 TSF:MSG:SEND,55-55-0-0,s=255,c=3,t=1,pt=0,l=0,sg=0,ft=0,st=OK: 58017 TSF:MSG:READ,0-0-55,s=255,c=3,t=1,pt=0,l=0,sg=0: 58022 TSF:MSG:ECHOavec Bus RS485
..........Log MyC - terminal ssh ......... 2022-06-14T14:22:41.265+0200 recd 0;255;3;0;9;72000090 TSF:SAN:OK 2022-06-14T14:22:41.274+0200 recd 0;255;3;0;9;72000096 TSM:READY:NWD REQ 2022-06-14T14:22:41.298+0200 recd 0;255;3;0;9;72000115 ?TSF:MSG:SEND,0-0-255-255,s=255,c=3,t=20,pt=0,l=0,sg=0,ft=0,st=OK: 2022-06-14T14:22:41.917+0200 recd 0;255;3;0;9;72000736 TSF:MSG:READ,22-22-0,s=255,c=3,t=21,pt=1,l=1,sg=0:0 2022-06-14T14:22:41.920+0200 recd 22;255;3;0;21;0 .........Log MyS - terminal IDE ......... time current:1422 ------------------------------------------- 423956 TSF:MSG:READ,0-0-255,s=255,c=3,t=20,pt=1,l=1,sg=0:0 423962 TSF:MSG:BC 424008 TSF:MSG:SEND,22-22-0-0,s=255,c=3,t=21,pt=1,l=1,sg=0,ft=0,st=OK:0 requestOn----------------------------------------- -
@JeeLet said in CAN bus transport implementation:
Arduino 8bit and MySensors is over for you?
No it is not over. Right now I don't have enough time. Now I am able to work for let's say 1 hour per week. Probably I will become more active at the end of 2023 :D
@JeeLet said in CAN bus transport implementation:
bah No the time is not up
Here You posted RS485 version:
https://forum.mysensors.org/topic/4809/real-time-clock-module-lcd-display-and-controller-time/8?_=1655208396048Could You post here CAN version?
-
@Adam-Slowik "Could you post the CAN version here?"
it's the same, except that the bus is not rs485 but CAN :)
...... ........ #define MY_NODE_ID 55 /*Node en ID static*/ #define MY_CAN #include "SSD1306Ascii.h" ........ .....but I'll go back to PaulStoffregen's Lib <TimeLib.h> to see if I can simplify the basic sketch of MySensors
-
In previous example (with diodes) did You set CAN_CLOCK to MCP_16MHZ?