LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Adler-32 Checksum

Solved!
Go to solution
0 Kudos
Message 1 of 9
(2,341 Views)

Hi MrFuppes,

 

have you tried to implement this yourself?

It seems pretty easy with just 2 shift registers in a loop…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 9
(2,336 Views)

Hi GerdW,

not yet, but will do so I guess if there are no "stock" .vi available...

0 Kudos
Message 3 of 9
(2,332 Views)

Here's an implementation:

 

grafik.png

 

0 Kudos
Message 4 of 9
(2,252 Views)

Hi MrFuppes,

 

you see: really easy!

 

You can delete the ArraySize node, autoindexing at the loop tunnel is all you need…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 5 of 9
(2,249 Views)

sure, & thanks. still need to get used to programming in LV 😉

0 Kudos
Message 6 of 9
(2,245 Views)
Solution
Accepted by topic author FObersteiner

The Adler-32 solution by MrFuppes is incorrect for large data sets.  The high (B, s2) and low (A, s1) should be converted to U32 prior to the add and modulus.

 

Adler-32.png

 

Example:

"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"

ADLER-32: 0x09832C7D

Message 7 of 9
(1,186 Views)

rcpacini,

thank you for reporting this! Kind of a stupid mistake... unfortunately it seems I cannot remove the code I posted. I've marked your answer as 'solution', I hope this helps.

0 Kudos
Message 8 of 9
(563 Views)

Go to your post, click the "Options" dropdown, then "Report to a moderator". In that field, explain you'd like to remove the attachment since there's a bug, and they can edit the post for you.

Message 9 of 9
(553 Views)