CAN bus errors

I don’t think 25-35 msg / sec cause lost event. It is not much. Is there any other event in your project, beside CAN receive event?

For poll receiving, something like this:

private static void PollReceiving() {
    while(true) {
        if (canController.MessagesToRead > 0) {
           // Read
           var length = canController.MessagesToRead;
           var msgs = new GHIElectronics.TinyCLR.Devices.Can.CanMessage[length];
           canController.ReadMessages(msgs, 0, msgs.Length);

           ….

        }
    }
}
static void Main() {
   /// setup CAN

   new Thread(PollReceiving).Start();
}

I have already implemented the poll receiving. It is working great and I am able to receive any length message.

2 Likes

Ok great this is very helpful