LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How/What to/is a CRC check?

From what I have read thus far, a CRC check is a cyclic redundancy check.  My Labview project wants to save every time I open it meaning that something must be updating or processing data of some form.  My understanding is that the CRC will give me a report as to what exactly is updating/processing.  Am I correct and how would I go about doing this?

0 Kudos
Message 1 of 5
(3,577 Views)

No, the math behind a CRC is similar to that used for encryption or generating a message digest. All a CRC will tell you is that something changed. Over the years a number of different standardized algorithms have been developed to decrease the liklihood of false negatives (i.e. the data is not having changed when it did).

 

If the project file itself is showing as having been changed, you can use any of a variety of text file comparison utilities to see what is different because a project is just xml.

 

  • What version of LV are you using?
  • Anything unusual in the project?
  • When was the last time you did a save all?
  • What does LV say changed? (the "List Unsave Changes..." link)

 

Mike...


Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
Message 2 of 5
(3,571 Views)

A CRC is a form of a checksum.  A checksum is a value produced through an algorithm that makes it possible to quickly determine IF data has changed, but not WHAT has changed.  It is possible to have a file change and still compute the same checksum, but checksum algorithms are designed to make this as unlikely as possible within mathematical limits.  CRC is one form of checksum commonly used in communications; MD5 is another popular algorithm often used for confirming file integrity.

 

Now, how would you jump from there to some expectation that it could tell you what changed in your LabVIEW project?

 

If you want to find out what changed, make a copy of the project.  Then, open the project, save it, and compare it (using any diff tool).  A LabVIEW project is just XML so the text changes will be easy to see, although perhaps not meaningful.  VIs, on the other hand, are saved as binary so doing a comparison on them will not tell you anything other than whether they've changed.

0 Kudos
Message 3 of 5
(3,564 Views)

If you are using an older version of LabVIEW and are using autopopulating folders, the project would be marked as changed every time you open it.  I would have to go back to find the CAR, I'm pretty sure I brought up the bug to NI in LV 8.5.  The autopopulated folders would be reparsed, and even if nothing changed, the project was marked as changed.

 

If it is only the project that changed, you can inspect it with a text file comparitor, as the lvproj file is text.

 

If something else is changing, I have seen XControls force a save everytime it is opened before as well (this is still happening in LV2011).

0 Kudos
Message 4 of 5
(3,530 Views)

@DailyDose wrote:

My Labview project wants to save every time I open it meaning that something must be updating or processing data of some form.


This is most likely due to using autopopulating folders.  That is nothing to be worried about.



There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 5 of 5
(3,503 Views)