NI Home > Community > NI Discussion Forums

Real-Time and Control Applications

Reply
Active Participant
Christian_L
Posts: 658
0 Kudos

J1939 Transport Protocol

Please post your comments, questions, and feedback on the J1939 Transport Protocol Reference Example in this thread.
Christian Loew, CLA
Principal Systems Engineer, National Instruments
Please tip your answer providers with kudos.

Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system,
or for use in hazardous environments. You assume all risks for use of the Code and use of the Code is subject
to the Sample Code License Terms which can be found at: http://ni.com/samplecodelicense
Member
hyl175
Posts: 2
0 Kudos

回复: J1939 Transport Protocol

hi,

 

maybe there is a bug in the vi named Convert CAN Arb ID to J1939 ID.vi  

its path in the package is……CAN_Message_Online\J1939 Multi Packet Frame\Code\J1939 Utilities\_SubVIs\Convert CAN Arb ID to J1939 ID.vi

 

when the PF is smaller than 240(10), the PS in the PGN should be 0.

Member
hyl175
Posts: 2
0 Kudos

回复: J1939 Transport Protocol

hi,

 

maybe there is a bug in the vi named Convert CAN Arb ID to J1939 ID.vi  

its path in the package is……CAN_Message_Online\J1939 Multi Packet Frame\Code\J1939 Utilities\_SubVIs\Convert CAN Arb ID to J1939 ID.vi

 

when the PF is smaller than 240(10), the PS in the PGN should be 0.

Member
bfeddeck
Posts: 67
0 Kudos

Re: J1939 Transport Protocol

Can I get these examples in version 8.5?
Member
brent2004
Posts: 24
0 Kudos

Re: J1939 Transport Protocol

It would be nice if NI had a J1939 driver or add-on that would work with both the frame API and/or the channel API.  The only examples provided for J1939 here are based on the frame API, which precludes you from using the channel API with a CAN database on the same port.  The channel API is a very time saving feature for most applications.

  

DMC recently developed a set of J1939 protocol drivers for LabVIEW which are based on the NI-CAN channel API.  The drivers are written in LabVIEW just like the example, but provide functions at a layer above the base CAN channel API layer.  This allows the simultaneous capture of data from both J1939 packets which are simple broadcast CAN frames, or more complex transport using BAM, including extended data frames.

 

Although it would be nice to have an option like the Automotive Diagnostic toolkit, which worked withouot forcing a user to pick an API and stick with it for J1939 and whatever else they have going on with that CAN port.

Member
brent2004
Posts: 24
0 Kudos

Re: J1939 Transport Protocol

Correct link for J1939 protocol drivers for LabVIEW which are based on the NI-CAN channel API. :smileyhappy:

Member
Julianne_K
Posts: 108
0 Kudos

Re: J1939 Transport Protocol

Customers have recently requested that a J1939 Reference Example be provided for the new sbRIO-9606, which uses the RIO Embedded CAN driver.

Julianne K
Systems Engineer, Embedded Systems
Certified LabVIEW Architect
National Instruments
Member
Djalex86
Posts: 8
0 Kudos

Re: J1939 Transport Protocol

Hello , i am using the NI 9853 to communicate with a charger that use J1939.

With the project J1939 cRIO Example Project.lvproj when i send the message appears  the message code -63001-Invoke Method: FIFO.Write in J1939 cRIO Example.vi .

How can i solve this error??

Thank you

 

Member
Djalex86
Posts: 8
0 Kudos

Re: J1939 Transport Protocol

Hello , i have this error -63001 .

How can i solve this??

Thank you

Member
Mark_Gillespie
Posts: 7
0 Kudos

Re: J1939 Transport Protocol

I am trying to use the xnet frame example in conjunction with a PXI-8513 card. I am physically connected to an ECU that is transmitting a single PGN. I have both pxi ports connected to the network with port 2 running the can bus monitor. I can see the pgn message coming from the ECU on the bus monitor. When I send data from the frame example, I can see it on the bus monitor.

 

However, I am not seeing anything on the input display of the example. It seems like I should see the same info as the bus monitor. Am I incorrect? The pgn being transmitted is a proprietary one. Is there some kind of filtering going on that keeps this message from showing up? The PGN is 65298. The full ID on the bus monitor is 4ff1200.

 

Thanks for any help.