Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

64 Bit Signal Error

Hey volks,

 

i use X-NET to Convert Frame Data into Signals - works pretty fine, but there is a strange limitation (maybe iam wrong - but couldnt figure it out)....


I have a piece of Hardware which comes with a CAN-Specification, it defines the Payload of all Frames as 8Bytes with 8Bit (Kind of standard)

 

In this Spec. there is a CAN-FRAME. In this CAN-FRAME there is a SIGNAL which is defined to all 8 Bytes, respective 64 Bit.

 

When i try to define this SIGNAL with Startbit 0 with a sice of 64 Bit into the Database i created for this application, there is following ERROR occuring in the Database Manager "Signal is larger than a 52-Bit-Integer"

 

I attached a screenshot of the Error (its in german, but the translation should be proper)

 

Is this a known issue? if yes - is there an extension or something like a hotfix? I worked it around but its not a nice solution in my eyes....

 

thx much

 

cheers chris

Message 1 of 12
(8,702 Views)

I'm still searching because I can't find it, but I know XNet has a limitation on the maximum bit length on a signal.  A frame can be 8 bytes, but a signal can't.  If you want to do this you can write a subVI that converts from a U64 into 8 bytes, and then write it as a frame instead of a signal.

 

http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Resolve-XNET-52-bit-signal-length-limit/idi-p/3120784

0 Kudos
Message 2 of 12
(8,695 Views)

Yeah, that was my solution around this problem, but thanks much hoovahh for the fast reply... 

 

Iam wondering too, why there is problem - i mean its the same on NI-CAN but, another question has occured while thinking about it...

 

Has anyone tried an alternative *.dbc editor and tried to use it in LV, i mean it is a problem of the DB-Editor or is it a problem of X-NET, repsectevly based on NI-CAN?

 

0 Kudos
Message 3 of 12
(8,690 Views)

@weigsvader wrote:

 

Iam wondering too, why there is problem - i mean its the same on NI-CAN but, another question has occured while thinking about it...

 

Has anyone tried an alternative *.dbc editor and tried to use it in LV, i mean it is a problem of the DB-Editor or is it a problem of X-NET, repsectevly based on NI-CAN? 


I don't know the decision (hoping someone from NI will chime in at some point) but I know it is a limitation of XNet.  If you make a DBC in another editor that has a signal using 64 bits, then import it into the database editor, XNet will be unhappy and give a similar error to the one you see.

0 Kudos
Message 4 of 12
(8,684 Views)

I guess i was not clearly enough^^,

 

do u ever tried to create a dbc with an external editor and tried to use it LV without even importing it into the Database editor? Or is this even possible? I mean is it a problem of the API itself or just some bug of X-NET/CAN Database Editor?

0 Kudos
Message 5 of 12
(8,681 Views)

@weigsvader wrote:

Or is this even possible?


It is not.  To use XNet you must use a database.  You can make that database on the fly, import one, or use one already on the system.

 

The older NI-CAN does have a Channel API that lets you provide a path to a DBC.  No idea if it has the same limitation.

 

It's similar to DAQmx.  You can't talk to any DAQmx hardware without a task.  You can make a task and reference a physical port, or use a task (or virtual channel) already on the system.

0 Kudos
Message 6 of 12
(8,677 Views)

Ah good to know, so i can safe some time upon this. And a last question...

 

Can u recommend any freewar dbc editor with extended functionallity? i miss some functions like copy/paste in the xnet/can database editor... sometimes its a sort of repeating stuid click and instert numbers actions...

0 Kudos
Message 7 of 12
(8,673 Views)

@weigsvader wrote:

 

Can u recommend any freewar dbc editor with extended functionallity? i miss some functions like copy/paste in the xnet/can database editor... sometimes its a sort of repeating stuid click and instert numbers actions...


Totally agree that the Database Editor is one of those "good enough" situations.

 

I believe that the Vector DBC editor is free.  Once you install CANalyzer or some other Vector tool it gets installed.  Just install a trial of CANalyzer.  I think the DBC editor itself runs without anything extra and is not in a trial.

 

Found it CANdb++

 

http://vector.com/vi_candb_en.html

http://vector.com/vi_downloadcenter_en.html?product=candb&formular_treffer_submit=1

 

Not sure if this is the same but I found some Vector CAN Tools.

 

http://sourceforge.net/projects/cantools/

Message 8 of 12
(8,666 Views)

Thx much, worth a kudo 🙂

 

i kudo'ed the 52bit post u linked above, lets giv it a kudo too, may it gehts hot...

0 Kudos
Message 9 of 12
(8,663 Views)

FYI, signals are retuned as a double-precision floating point. This only has 52 bits of precision, hence the 52-bit limit.

0 Kudos
Message 10 of 12
(8,660 Views)