Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 8 of 8

Thread: Teensy 4.0 vs. MIMXRT1062DVL6A Datasheet: Number of CAN Buses

  1. #1

    Teensy 4.0 vs. MIMXRT1062DVL6A Datasheet: Number of CAN Buses

    Hi PJRC Forum Members,

    I'm prototyping a CAN Bus for a university project using the Teensy 4.0. One concern our team members have voiced is that the data sheet for the MIMXRT1062DVL6A differs from the info-graphic for the Teensy 4.0's on the number of possible CAN buses. While the Teensy 4.0 states there are 3 (with one being CAN FD), the MIMXRT1062DVL6A states it only supports CAN FD. On the other hand the MIMXRT1061DVL6A (not featured on the Teensy 4.0) does feature 2 CAN Buses AND 1 CAN FD, but lacks the LCD/Display that the 1062 has enabled (which I assume this is why it was not featured on the Teensy 4.0).

    The goal is two have two separate CAN buses (one critical bus, and one data-acq. bus) using these Teensy 4.0's. However if there is only truly one bus per micro-controller we will switch to a Tiva (because of existing experience on the team, and the fact that it has two known CAN buses).

    I've gone ahead and purchased the Teensy 4.0's out of pocket; because even if they don't fit this specific need for this project, I will continue to study them for my personal use.

    Best regards,
    A Sophmore EE student

    MIMXRT Datatsheet: https://www.nxp.com/docs/en/nxp/data...XRT1060CEC.pdf

  2. #2
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    4,297
    The Teensy 4.0 does indeed have three CAN busses:

    CAN1 on pins 0,1 and CAN2 on pins 22,23 are CAN 2.0 while CAN-FD (CAN3) is on pins 30, 31. Note that CAN-FD can be operated in CAN2.0 legacy mode as well. The new FlexCAN_T4 library supports all three busses: https://forum.pjrc.com/threads/56035...ght=FLEXCAN_T4.

    Also if you look at the data sheet that linked it does indicate 2 CAN2.0 modules and 1 CAN-FD module.

  3. #3
    Thank you for the confirmation.

  4. #4
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    10,089
    The T_4 of course uses a 1062. It was designed and documented as 1060.

    AFAIK Paul noted two MCU revs were done for the 1060 > 1061 > 1062 is the final production unit. { same with 1050> 1051> 1052 :: Only mentioned as the T4 started first beta on 1052 before 1062 was 'shipping in quantities' } … and the 1062 adds the CAN FD hardware the 1052 does not present.

    NXP docs evolved as the MCU did and after. Docs and confusion level may differ - but the CAN ports on 1062 were there all along and in usable on T_4 as noted by @mjs513.

    The PJRC.com site lists links to the current 1062 NXP MCU PDF Doc, as well as the CARD info and Schematic design of the T_4.

  5. #5
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    20,802
    Rest assured, there are 3 CAN ports. Only 1 of those 3 supports CAN FD.

    Quote Originally Posted by DearbornElectricRacing View Post
    the MIMXRT1062DVL6A states it only supports CAN FD.
    Ah, yes, I see it on page 7. NXP somehow forgot to put "CAN x2" on the list. That is simply a mistake in the documentation. The 1062 chip really does have the 2 other (non-FD) CAN ports.

    Click image for larger version. 

Name:	pg7.png 
Views:	8 
Size:	95.6 KB 
ID:	17918

  6. #6
    Quote Originally Posted by PaulStoffregen View Post
    Rest assured, there are 3 CAN ports. Only 1 of those 3 supports CAN FD.



    Ah, yes, I see it on page 7. NXP somehow forgot to put "CAN x2" on the list. That is simply a mistake in the documentation. The 1062 chip really does have the 2 other (non-FD) CAN ports.

    Click image for larger version. 

Name:	pg7.png 
Views:	8 
Size:	95.6 KB 
ID:	17918

    Thank you for the confirmation! If I could ask a two part follow-up question about setting up our first bus with these teensy 4.0's.

    Does the 4.0 require an external CAN transceiver (we are considering using one we have on hand), and secondly if we have two CAN buses set-up on CAN ports 1 and 2 how do we distinguish the CAN peripherals in the FlexCAN code?

    Eg. We'd have CAN port 2 listen to CAN port 1 (CAN 1 would be a Critical CAN, while CAN 2 would be a Data CAN feed information to our Central Data Logger).

    Best regards,
    Dearborn Electric Racing

  7. #7
    Senior Member
    Join Date
    Dec 2016
    Location
    Montreal, Canada
    Posts
    3,133
    Check out the flexcan_t4 thread, each bus has it's own object in a different templated constructor, you can call them myData and myCritical if you wish, then use them like normal, myData.begin(), etc

    Yes, transceivers are required

  8. #8
    Quote Originally Posted by tonton81 View Post
    Check out the flexcan_t4 thread, each bus has it's own object in a different templated constructor, you can call them myData and myCritical if you wish, then use them like normal, myData.begin(), etc

    Yes, transceivers are required
    Great! We were just actually looking through your FlexCAN_T4 example on Github. Unfortunately we were getting some linking error that prevented us from doing our first test-message (I'll be looking into this issue tonight after classes).

    Thank you again for the information!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •