<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: FlexCAN Address Filtering example</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918439#M138183</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;Hi Fredik,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;I read your query. I have already worked on FLEXCAN driver.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;As per my understanding, we can configure 64 different RX messages.&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;By using below functions, you can configure those 64 message buffers with different id's,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;&amp;nbsp;/* Set Rx Masking mechanism. */&lt;/SPAN&gt;&lt;BR style="color: #51626f; background-color: #ffffff;" /&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;FLEXCAN_SetRxMbGlobalMask(EXAMPLE_CAN, FLEXCAN_RX_MB_STD_MASK(rxIdentifier, 0, 0));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;void FLEXCAN_SetRxIndividualMask(CAN_Type *base, uint8_t maskIdx, uint32_t mask)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;&lt;STRONG style="background-color: #ffffff; "&gt;"It seems the HW filtering can only cover ranges and that if we want to allow only 10 specific IDs we cannot do it. It this conclusion correct? And if it is what is the best way to offload heavy CAN traffic from the MCU?"&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;If you want to receive data from 10 different id's, then configure 10&amp;nbsp;RX&amp;nbsp;message buffers with 10 different&amp;nbsp;id's (whatever id's you required).&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;Hope this will help you.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;&lt;STRONG style="background-color: #ffffff; "&gt;Regards,&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;&lt;STRONG style="background-color: #ffffff; "&gt;Yashwanth.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 16 Sep 2019 06:48:26 GMT</pubDate>
    <dc:creator>yashwanthk</dc:creator>
    <dc:date>2019-09-16T06:48:26Z</dc:date>
    <item>
      <title>FlexCAN Address Filtering example</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918435#M138179</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We have an application running on RT1020 with dual CAN Bus enabled. And now with many devices on the network it is starting to get to a point where we cannot handle all requests because we are not doing any filtering, but firing interrupts&amp;nbsp; (flexcan_callback) for every message on the bus, and so we need to enable some kind of address filtering.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What we want to achieve is to have a list of approved messageIDs that must be matched by the incoming message for an interrupt to fire, and that all other messageIDs will be "invisible" to the processor.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any leads on how to implement a simple address filtering scheme is greatly appreciated. If there are any details I can supply which would be useful towards a solution please let me know.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you very much.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Fredrik&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Currently how we initialize the CAN Driver:&lt;/P&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;static void canDriverInit(struct CanDevice *dev)
{
    /*Clock setting for FLEXCAN*/
    CLOCK_SetMux(kCLOCK_CanMux, FLEXCAN_CLOCK_SOURCE_SELECT);
    CLOCK_SetDiv(kCLOCK_CanDiv, FLEXCAN_CLOCK_SOURCE_DIVIDER);

    flexcan_config_t flexcanConfig;
    flexcan_rx_mb_config_t mbConfig;

    FLEXCAN_GetDefaultConfig(&amp;amp;flexcanConfig);
    flexcanConfig.baudRate = 250000U;
    FLEXCAN_Init(dev-&amp;gt;base, &amp;amp;flexcanConfig, CAN_CLK_FREQ);

    FLEXCAN_TransferCreateHandle(dev-&amp;gt;base, &amp;amp;dev-&amp;gt;flexcanHandle, flexcanCallback, dev);
    FLEXCAN_SetRxMbGlobalMask(dev-&amp;gt;base, FLEXCAN_RX_MB_EXT_MASK(0, 0, 0));
    can_enableSelfReception(dev-&amp;gt;base, false);

    dev-&amp;gt;txXfer.mbIdx = dev-&amp;gt;txMessageBufferIndx;
    dev-&amp;gt;txXfer.frame = &amp;amp;dev-&amp;gt;txFlexcanFrame;

    mbConfig.format = kFLEXCAN_FrameFormatExtend;
    mbConfig.type = kFLEXCAN_FrameTypeData;
    mbConfig.id = FLEXCAN_ID_EXT(0);

    FLEXCAN_SetRxMbConfig(dev-&amp;gt;base, dev-&amp;gt;rxMessageBufferIndx, &amp;amp;mbConfig, true);
    FLEXCAN_SetTxMbConfig(dev-&amp;gt;base, dev-&amp;gt;txMessageBufferIndx, true);

 prepareRxMb(dev);
}‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

/**
 * @brief Start a new RX operation on a CAN frame
 * */
static inline void prepareRxMb(struct CanDevice *dev)
{
 /* Prepare the handle with mailbox ID and pointer to RX CAN frame */
 dev-&amp;gt;rxXfer.mbIdx = dev-&amp;gt;rxMessageBufferIndx;
 dev-&amp;gt;rxXfer.frame = &amp;amp;dev-&amp;gt;rxFlexcanFrame;

 /* Post the handle to the fsl_flexcan driver and return. This is a
  * non-blocking call, and the result will appear in the callback function */
 if (FLEXCAN_TransferReceiveNonBlocking(dev-&amp;gt;base, &amp;amp;dev-&amp;gt;flexcanHandle, &amp;amp;dev-&amp;gt;rxXfer) != kStatus_Success)
 {
  /* Should not arrive here - will not attempt to post while RX active */
  dev-&amp;gt;rxErrors.swBugEnableWhileBusy++;
 }
}&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Aug 2019 17:17:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918435#M138179</guid>
      <dc:creator>fredrikeriksen</dc:creator>
      <dc:date>2019-08-13T17:17:12Z</dc:date>
    </item>
    <item>
      <title>Re: FlexCAN Address Filtering example</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918436#M138180</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Customer can call below two FlexCAN functions to filter RX CAN message frame:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*!&lt;BR /&gt;&amp;nbsp;* brief Sets the FlexCAN receive message buffer global mask.&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;* This function sets the global mask for the FlexCAN message buffer in a matching process.&lt;BR /&gt;&amp;nbsp;* The configuration is only effective when the Rx individual mask is disabled in the FLEXCAN_Init().&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;* param base FlexCAN peripheral base address.&lt;BR /&gt;&amp;nbsp;* param mask Rx Message Buffer Global Mask value.&lt;BR /&gt;&amp;nbsp;*/&lt;BR /&gt;void FLEXCAN_SetRxMbGlobalMask(CAN_Type *base, uint32_t mask)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*!&lt;BR /&gt;&amp;nbsp;* brief Sets the FlexCAN receive individual mask.&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;* This function sets the individual mask for the FlexCAN matching process.&lt;BR /&gt;&amp;nbsp;* The configuration is only effective when the Rx individual mask is enabled in the FLEXCAN_Init().&lt;BR /&gt;&amp;nbsp;* If the Rx FIFO is disabled, the individual mask is applied to the corresponding Message Buffer.&lt;BR /&gt;&amp;nbsp;* If the Rx FIFO is enabled, the individual mask for Rx FIFO occupied Message Buffer is applied to&lt;BR /&gt;&amp;nbsp;* the Rx Filter with the same index. Note that only the first 32&lt;BR /&gt;&amp;nbsp;* individual masks can be used as the Rx FIFO filter mask.&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;* param base FlexCAN peripheral base address.&lt;BR /&gt;&amp;nbsp;* param maskIdx The Index of individual Mask.&lt;BR /&gt;&amp;nbsp;* param mask Rx Individual Mask value.&lt;BR /&gt;&amp;nbsp;*/&lt;BR /&gt;void FLEXCAN_SetRxIndividualMask(CAN_Type *base, uint8_t maskIdx, uint32_t mask)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please refer &amp;lt;flexcan_interrupt_transfer&amp;gt; demo, which located with ..\SDK_2.5.0_EVK-MIMXRT1020\boards\evkmimxrt1020\driver_examples\flexcan\interrupt_transfer&amp;nbsp; path for related API function application.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set Rx Masking mechanism. */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FLEXCAN_SetRxMbGlobalMask(EXAMPLE_CAN, FLEXCAN_RX_MB_STD_MASK(rxIdentifier, 0, 0));&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;best regards,&lt;/P&gt;&lt;P&gt;Mike&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Aug 2019 09:42:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918436#M138180</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2019-08-14T09:42:09Z</dc:date>
    </item>
    <item>
      <title>Re: FlexCAN Address Filtering example</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918437#M138181</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for the response.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After further investigation it seems what we are actually after is not possible to do with the hardware capabilities of the FlexCAN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The scenario we want to cover:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN data-orgid="634630091974041600" data-room-id="room_7cf570435a919ee2955367f4dcfc3082" data-story-id="story_f44747491a1eb134c42b51e43742fafd" data-text="On CAN Bus these messages are being sent: ID 0x170 ID 0x171 ID 0x272 ID 0x278 ID 0x299   I want to offload my processor and only read some of these messages. So I create a filter to only accept some messages. I set filter to these IDs: 0x170 and 0x171   Now in software the only messages I see available is 0x170 and 0x171. The other messages is invisible because hardware did not accept them" data-timestamp="1566224004402" data-userid="634630091752648704"&gt;On CAN Bus these messages are being sent:&lt;BR /&gt;ID 0x00000170&lt;BR /&gt;ID 0x00000171&lt;BR /&gt;ID 0x00000672&lt;BR /&gt;ID 0x00000978&lt;BR /&gt;ID 0x00000299&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN data-orgid="634630091974041600" data-room-id="room_7cf570435a919ee2955367f4dcfc3082" data-story-id="story_f44747491a1eb134c42b51e43742fafd" data-text="On CAN Bus these messages are being sent: ID 0x170 ID 0x171 ID 0x272 ID 0x278 ID 0x299   I want to offload my processor and only read some of these messages. So I create a filter to only accept some messages. I set filter to these IDs: 0x170 and 0x171   Now in software the only messages I see available is 0x170 and 0x171. The other messages is invisible because hardware did not accept them" data-timestamp="1566224004402" data-userid="634630091752648704"&gt;&lt;SPAN&gt;ID 0x00000472&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN data-orgid="634630091974041600" data-room-id="room_7cf570435a919ee2955367f4dcfc3082" data-story-id="story_f44747491a1eb134c42b51e43742fafd" data-text="On CAN Bus these messages are being sent: ID 0x170 ID 0x171 ID 0x272 ID 0x278 ID 0x299   I want to offload my processor and only read some of these messages. So I create a filter to only accept some messages. I set filter to these IDs: 0x170 and 0x171   Now in software the only messages I see available is 0x170 and 0x171. The other messages is invisible because hardware did not accept them" data-timestamp="1566224004402" data-userid="634630091752648704"&gt;...&lt;BR /&gt;&lt;SPAN&gt;ID 0x00000278&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ID 0x00000199&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;We want to offload&amp;nbsp;the&amp;nbsp;MCU and only read some of these messages by letting the HW filter out&amp;nbsp;&lt;BR /&gt;So the HW should only accept&amp;nbsp;the following IDs: 0x00000170, 0x00000171 and maybe 10 more.&lt;BR /&gt;&lt;BR /&gt;Now in software the only messages I see available is 0x00000170, 0x00000171 and the other ones. The other messages is invisible because hardware did not accept them.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN data-orgid="634630091974041600" data-room-id="room_7cf570435a919ee2955367f4dcfc3082" data-story-id="story_f44747491a1eb134c42b51e43742fafd" data-text="On CAN Bus these messages are being sent: ID 0x170 ID 0x171 ID 0x272 ID 0x278 ID 0x299   I want to offload my processor and only read some of these messages. So I create a filter to only accept some messages. I set filter to these IDs: 0x170 and 0x171   Now in software the only messages I see available is 0x170 and 0x171. The other messages is invisible because hardware did not accept them" data-timestamp="1566224004402" data-userid="634630091752648704"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-orgid="634630091974041600" data-room-id="room_7cf570435a919ee2955367f4dcfc3082" data-story-id="story_f44747491a1eb134c42b51e43742fafd" data-text="On CAN Bus these messages are being sent: ID 0x170 ID 0x171 ID 0x272 ID 0x278 ID 0x299   I want to offload my processor and only read some of these messages. So I create a filter to only accept some messages. I set filter to these IDs: 0x170 and 0x171   Now in software the only messages I see available is 0x170 and 0x171. The other messages is invisible because hardware did not accept them" data-timestamp="1566224004402" data-userid="634630091752648704"&gt;It seems the HW filtering can only cover ranges and that if we want to allow only 10 specific IDs we cannot do it. It this conclusion correct? And if it is what is the best way to offload heavy CAN traffic from the MCU?&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-orgid="634630091974041600" data-room-id="room_7cf570435a919ee2955367f4dcfc3082" data-story-id="story_f44747491a1eb134c42b51e43742fafd" data-text="On CAN Bus these messages are being sent: ID 0x170 ID 0x171 ID 0x272 ID 0x278 ID 0x299   I want to offload my processor and only read some of these messages. So I create a filter to only accept some messages. I set filter to these IDs: 0x170 and 0x171   Now in software the only messages I see available is 0x170 and 0x171. The other messages is invisible because hardware did not accept them" data-timestamp="1566224004402" data-userid="634630091752648704"&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN data-orgid="634630091974041600" data-room-id="room_7cf570435a919ee2955367f4dcfc3082" data-story-id="story_f44747491a1eb134c42b51e43742fafd" data-text="On CAN Bus these messages are being sent: ID 0x170 ID 0x171 ID 0x272 ID 0x278 ID 0x299   I want to offload my processor and only read some of these messages. So I create a filter to only accept some messages. I set filter to these IDs: 0x170 and 0x171   Now in software the only messages I see available is 0x170 and 0x171. The other messages is invisible because hardware did not accept them" data-timestamp="1566224004402" data-userid="634630091752648704"&gt;Thank you.&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 04 Sep 2019 08:01:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918437#M138181</guid>
      <dc:creator>fredrikeriksen</dc:creator>
      <dc:date>2019-09-04T08:01:59Z</dc:date>
    </item>
    <item>
      <title>Re: FlexCAN Address Filtering example</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918438#M138182</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In fact, FlexCAN ID can be flexible, that means your could filter/ignore any ID bits.&lt;/P&gt;&lt;P&gt;You also can do test with Rx Mailboxes Global Mask Register to set related ID bits checked or not.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/82892i7DBF489359B04868/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;best regards,&lt;/P&gt;&lt;P&gt;Mike&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Sep 2019 07:00:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918438#M138182</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2019-09-05T07:00:45Z</dc:date>
    </item>
    <item>
      <title>Re: FlexCAN Address Filtering example</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918439#M138183</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;Hi Fredik,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;I read your query. I have already worked on FLEXCAN driver.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;As per my understanding, we can configure 64 different RX messages.&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;By using below functions, you can configure those 64 message buffers with different id's,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;&amp;nbsp;/* Set Rx Masking mechanism. */&lt;/SPAN&gt;&lt;BR style="color: #51626f; background-color: #ffffff;" /&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;FLEXCAN_SetRxMbGlobalMask(EXAMPLE_CAN, FLEXCAN_RX_MB_STD_MASK(rxIdentifier, 0, 0));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;void FLEXCAN_SetRxIndividualMask(CAN_Type *base, uint8_t maskIdx, uint32_t mask)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;&lt;STRONG style="background-color: #ffffff; "&gt;"It seems the HW filtering can only cover ranges and that if we want to allow only 10 specific IDs we cannot do it. It this conclusion correct? And if it is what is the best way to offload heavy CAN traffic from the MCU?"&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;If you want to receive data from 10 different id's, then configure 10&amp;nbsp;RX&amp;nbsp;message buffers with 10 different&amp;nbsp;id's (whatever id's you required).&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff; background-color: #ffffff;"&gt;Hope this will help you.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;&lt;STRONG style="background-color: #ffffff; "&gt;Regards,&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3366ff;"&gt;&lt;STRONG style="background-color: #ffffff; "&gt;Yashwanth.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Sep 2019 06:48:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918439#M138183</guid>
      <dc:creator>yashwanthk</dc:creator>
      <dc:date>2019-09-16T06:48:26Z</dc:date>
    </item>
    <item>
      <title>Re: FlexCAN Address Filtering example</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918440#M138184</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/fredrikeriksen" rel="nofollow noopener noreferrer" target="_blank"&gt;fredrikeriksen&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;Hi Fredrik,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What is your&amp;nbsp;&lt;/P&gt;&lt;PRE class="" style="color: #000000; background: #f5f2f0; border: 0px; margin: 0.5em 0px; padding: 1em 1em 1em 3.8em;"&gt;&lt;CODE style="border: 0px; font-weight: inherit;"&gt;can_enableSelfReception(dev-&amp;gt;base, false);&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;function doing in this scenario, and what does the code look like please?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Graham.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Oct 2019 13:06:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918440#M138184</guid>
      <dc:creator>graham_taylor-j</dc:creator>
      <dc:date>2019-10-17T13:06:56Z</dc:date>
    </item>
    <item>
      <title>Re: FlexCAN Address Filtering example</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918441#M138185</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&amp;nbsp;&lt;A _jive_internal="true" data-containerid="-1" data-containertype="-1" data-content-finding="Community" data-objectid="331209" data-objecttype="3" href="https://community.nxp.com/people/fredrikeriksen" style="color: #3d9ce7; background-color: #ffffff; border: 0px; padding: 1px 0px 1px calc(12px + 0.35ex);"&gt;Fredrik Eriksen&lt;/A&gt;,&lt;/P&gt;&lt;P&gt;solved your problems ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have the same problem to solve, filtering 3/10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks,&lt;/P&gt;&lt;P&gt;Carlos.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Nov 2019 12:19:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/FlexCAN-Address-Filtering-example/m-p/918441#M138185</guid>
      <dc:creator>CCandido</dc:creator>
      <dc:date>2019-11-11T12:19:25Z</dc:date>
    </item>
  </channel>
</rss>

