This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/AM5728: IDK - Using DCAN2 Interface

Part Number: AM5728

Tool/software: TI-RTOS

Hi,

Using the information provided by Pavel in the linked thread, I have configured my Board to use the DCAN2 interface through the J21 Expansion connector. 

I have made the following adjustments in the for the DCAN Example Project:

Macros: 

#define DCAN_MSG_OBJ_RAM_ADDR           ((SOC_DCAN2_MESSAGERAM_BASE) + (DCAN_MSG_OBJ * DCAN_MSG_OBJ_SIZE))

Function Definitions:

ExecTest():
        gDcanAppInstance = DCAN2_APP_INST;
        DCAN2Prcm_clck_ram();

I believe these are the only places where I am able to distinguish between DCAN1 and DCAN2. 

When I run my test, I am not getting output from the EVM to the PCAN. I can see the register values populating at 0x4848_0000 (the correct DCAN2 address) as the messages are attempted to be transferred out of the EVM.

I have confirmed my connections are correct going to and from the CAN Transceiver. 

Please assist me in troubleshooting this issue.

Thank you,

Alec

  • Support,

    I have continued to investigate this issue with the DCAN2 interface. With a fresh re-population of the SDK and PDK, I have tried re-running this test using the EVM in normal mode. So to be clear, the only change I've made within the code is here (the commented out lines are above the replaced code):

    This allows me to communicate to and from the PCAN device. 

    Starting out, I am connected through DCAN2 interface as shown in my original posting. Then, I ran the DCAN Loopback External Example Project, using option 1 (in Normal Mode!), I enter a single frame, and the PCAN receives it! I send a frame from the PCAN using the proper MsgID, and it accepts it at the EVM, and the application returns to the main menu. 

    While leaving the application running, I am able to disconnect from J21 Expansion Connector, and put the PCAN jumper wires into the J38 DCAN Header Pins. Again using option 1, I send another frame, and PCAN receives it as well! 

    I have verified this with a coworker, using THEIR EVM board, and THEIR PCAN connector. We were able to reproduce the same results as described above. 

    How is this possible??? Is the CAN on the same bus??? How do I distinguish one CAN interface versus the other? Simply choosing the DCAN2 instance and clock/pinmux makes the program get halted while waiting for RX to be done. While it makes sense that the CAN Bus is hot-swap-able, it doesn't make sense that the two CAN interfaces on the AM5728 SOC are in the same bus. I am looking at the TRM to figure this out. 

    Please help me to comprehend what is the way to make these DCAN interfaces separate, so we can connect two nodes to the EVM. 

    Thank you,

    Alec

  • Okay so as shown here, I have determined they ARE on the same CAN Bus.

    I must ask the experts, how do I use the DCAN 1 & 2 interfaces separately? 

  • Alec,

    Thanks for your update.
    This is in my queue as well to look at.

    Lali
  • Alec,
    If you look closely at the schematic, the AM57x IDK only supports DCAN 1 (pins G19 and G20)
    DCAN2 is not supported on the EVM as those pins are muxed to another peripheral.

    Lali
  • Lali,

    That's what I was thinking based on my findings. Thanks for confirming.

    Please clarify for me, if I were to use the AM5728 SOC on a custom board, I would be able to mux the pins for DCAN 2 to function, correct? How would I differentiate between DCAN1 and DCAN2 in that situation (software-wise)?

    Thanks again,
    Alec
  • Alec,

    Yes, you should be able to with a custom board as the AM57x SoC supports 2 DCANs.
    I don't have SW change specifics, but her ea few things to consider:

    • Board library to reflect the appropriate pinmux changes for DCAN2.
    • Clock domain setting that may be needed.
    • Interrupt settings for DCAN2.
    • Message object config

    Not a comprehensive list, but things to consider.

    You mentioned that you had tried to reach out to a 3rd party in the past for their services in developing your solution.
    Did you get some traction on this?

    Lali

  • Lalindra Jayatilleke said:

    You mentioned that you had tried to reach out to a 3rd party in the past for their services in developing your solution.
    Did you get some traction on this?

    No, I never got a response back from D3 Engineering. I had emailed 2 different people there who were supposed to be contacts (njones & mmcnulty) in November and never got a reply.

    We are trying to get everything figured out in-house at this point, with TI support as needed.

    Thanks for your help in this thread.

  • Alec, I am sorry. We are contacting D3 in US to see what is going on here.
    Thanks for your patience.
  • rogerio said:
    Alec, I am sorry. We are contacting D3 in US to see what is going on here.
    Thanks for your patience.

    Hi Rogerio/Catalog Processors,

    Thank you for following up. 

    Best Regards,

    Alec 

  • Hi Alec,

    Sorry that you had difficulty getting a response from D3. I was informed the best way to get quick responses from D3 is to send inquiries to "sales@d3engineering.com" Multiple people there monitor that and it's the takeoff point to their sales process. 

    Best regards,

    Mark

  • Hi Mark,

    I'd recommend updating their company folder with this information: www.ti.com/.../companyfolder.tsp
    This was the link I was provided to contact them, with the email contact being direct to norm jones. When I emailed him he was out of the office, so I emailed the contact provided in his out-of-office message.

    Thanks for the update,

    Alec
  • Hi Alec,

    That's a good idea, Alec. I'll work on getting that page updated with their sales email.

    Regards,

    Mark