Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

How does the sbRIO-9627 extend more CAN buses and RS232 buses?

Greetings!
        I am using sbRIO-9627 and I want to extend a Can bus and a RS232 bus from DIO by means of CLIP, I am having some problems, please help me.


        I have checked the following information
              - sbrio-96079627_rio_mezzanine_card_features_2-8-2025.pdf (reference circuit for expansion board design)
              - NI Single-Board RIO Hands-On Session.pdf (the routines in which I did not find a download address)
              - sbRIO-9651 SOM IO Interface and CLIP Generator.pptx (Finding ways to drive the bus)

 

        Reading through the documentation above, I did the following:

               First, I used the NI-9694 board as a wiring adapter and designed the bus expansion board with reference to the documentation, and the hardware is connected as follows:

                         YiChenHai_0-1740648181015.png

 

               Then I used CLIP in Labview2019 to connect CAN-TX to DIO-0, CAN-RX to DIO-1,CAN-RS to DIO2 (shorted to ground to enable high speed mode of the CAN chip)

                         YiChenHai_1-1740648247794.png

 

               The generated CLIP is then loaded into the RMC-Socket.

                         YiChenHai_2-1740648281977.png

 

               At this point, the project catalog is as follows:

                         YiChenHai_3-1740648312678.png

               

               Finally I used the official DEMO: CAN Frame Input Output - single port.vi to change the CAN port number to 1, but after running it prompts: Hardware problem happens.

                         YiChenHai_4-1740648378738.png

 

 

        Is there something wrong with my configuration, is there a closer tutorial document or demo?

 

        Is the configuration for RS232 similar to how it is configured for CAN?

 

Thank you!

 

0 Kudos
Message 1 of 8
(409 Views)

Do you have the NI Embedded CAN driver Installed on your sbRIO?

0 Kudos
Message 2 of 8
(323 Views)

Hello! Thank you for your reply.

 

        I have previously installed the NI Embedded Can Driver on my sbRIO board.

 

        My suspicion here is that the softcore for the CAN controller in the CLIP package I generated did not work successfully, or that the bitstream did not download to the board? The configuration here I simply generated the CLIP as described in the post above and selected the CLIP, I'm not sure if this was successfully configured in.

YiChenHai_0-1741331240991.png

 

 

0 Kudos
Message 3 of 8
(300 Views)

I had endless trouble with getting NI's CAN working on sbRIO 9627.

 

Firstly move over to NI 2022 Q3 platform for sbRIO 32bit.

Upgrade the sbRIO firmware - install 2023 Q3 firmware image for sbRIO - select 2022 Labview environment.

Steer clear of all CLIP generation. There be dragons.

Setup your device as RMC type project.

Code your FPGA in LabVIEW directly.

 

Good luck.

0 Kudos
Message 4 of 8
(288 Views)

I'm scratching my head over this as well, I'm not an FPGA engineer and can't write Can and RS232 IP cores in Verilog, so I'm counting on the CLIP to generate the CAN and USART controllers for me directly, and then add hardware transceivers externally to complete the bus extension. However, so far I have not been able to write or read data to the normal DIOs generated by CLIP (I verified that the hardware board works by adding the RMC directly), for which I have posted a new question thread.(How to configure CLIP on the sbRIO-9627? - NI Community)

 

Without using the CLIP method, the only extension I can do is to add the control chip for the CAN externally, and I purchased LabVIEW up to version 2019, so I'm afraid I can't use the method you've provided, thank you very much for your answer, and have a nice day!

0 Kudos
Message 5 of 8
(277 Views)

I'm scratching my head over this as well, I'm not an FPGA engineer and can't write Can and RS232 IP cores in Verilog, so I'm counting on the CLIP to generate the CAN and USART controllers for me directly, and then add hardware transceivers externally to complete the bus extension. However, so far I have not been able to write or read data to the normal DIOs generated by CLIP (I verified that the hardware board works by adding the RMC directly), for which I have posted a new question thread.(How to configure CLIP on the sbRIO-9627? - NI Community)

 

Without using CLIP, the expansion method I thought of is to add the CAN controller chip externally, you mentioned “Setup your device as RMC type project. Code your FPGA in LabVIEW directly.” how do you Code your FPGA in LabVIEW directly. Do I need to write the soft core in Verilog first and then import it? Can you tell me more about it? Thank you very much and have a nice life!

0 Kudos
Message 6 of 8
(260 Views)

Remember once you go the CLIP method of FGPA coding you are stuck there, then all your FPGA code needs to be in CLIP and then you cannot use LabView FPGA toolkits like SPI or I2C or add extra LabView coded software serial ports etc. (i.e. There is a trap for young players on page 43 of the sbRIO-9627 user manual.)

petrusprins_0-1741576683893.png

 

0 Kudos
Message 7 of 8
(223 Views)

Thanks for your reply!

 

I have browsed this document, and on page 44, it provides two methods for using RMC. The first is to directly add an RMC board from NI (such as the NI 9694 I have here), and the second is to add a self-made RMC board.

 

In this question post(How to configure CLIP on the sbRIO-9627? - NI Community), I experimented with both methods, and the hardware environment is the same: the NI9694 is directly connected to the sbRIO9627, and the DIO5 and DIO8 on the NI9694 are connected with wires. The vi functions used are also the same: write using DIO5 and read using DIO8.

 

The first method mentioned above can use the IO normally, but as the note in the manual suggests, it can only use the IO. For the second method, after my routine is running, I measured DIO5 with a multimeter and found that it is not outputting normally. Therefore, the function of generating IO through the second method has not taken effect, which is also the core problem of this post.

 

I am not an FPGA engineer, and I only need to extend the existing peripherals. Subsequent FPGA programming can be done entirely using the user-side CLIP to meet the needs of our project. The key is how to make the user-side CLIP take effect. Do you have any ideas to share on this? Thank you!

0 Kudos
Message 8 of 8
(213 Views)