logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Biblio::RFID::RFID501 - RFID Standard for Libraries

Data Model

3MAlphanumerictag
        0   04 is 00 tt   i [4 bit] = number of item in set    [1 .. i .. s]
                          s [4 bit] = total items in set
                          tt [8 bit] = item type

        1   dd dd dd dd   dd [16 bytes] = barcode data
        2   dd dd dd dd
        3   dd dd dd dd
        4   dd dd dd dd

        5   bb bl ll ll   b [12 bit] = branch [unsigned]
                          l [20 bit] = library [unsigned]

        6   cc cc cc cc   c [32 bit] = custom signed integer

   3MManufacturingBlank
        0   55 55 55 55
        1   55 55 55 55
        2   55 55 55 55
        3   55 55 55 55
        4   55 55 55 55
        5   55 55 55 55
        6   00 00 00 00

   Genericblank
        0   00 00 00 00
        1   00 00 00 00
        2   00 00 00 00

Description

       This module tries to decode tag format as described in document

         RFID 501: RFID Standards for Libraries

       <http://solutions.3m.com/wps/portal/3M/en_US/3MLibrarySystems/Home/Resources/CaseStudiesAndWhitePapers/RFID501/>

       Goal is to be compatible with existing 3M Alphanumeric tag format which, as far as I know, isn't
       specificed anywhere. My documentation about this format is available at

       <http://saturn.ffzg.hr/rot13/index.cgi?hitchhikers_guide_to_rfid>

Methods

to_hash
         my $hash = Biblio::RFID::Decode::RFID501->to_hash( $bytes );

         my $hash = Biblio::RFID::Decode::RFID501->to_hash( [ 'blk1', 'blk2', ... , 'blk7' ] );

   from_hash
         my $blocks = Biblio::RFID::Decode::RFID->from_hash({ content => "1301234567" });

   blank_3mblank
         my $blocks = Biblio::RFID::Decode::RFID->blank;

perl v5.36.0                                       2023-05-24                         Biblio::RFID::RFID501(3pm)

Name

       Biblio::RFID::RFID501 - RFID Standard for Libraries

Security

       AFI byte on RFID tag is used for security.

       In my case, we have RFID door which can only read AFI bytes from tag and issue alarm sound or ignore it
       depending on value of byte.

       0xD7 214
               secured item (door will beep)

       0xDA 218
               unsecured (door will ignore it)

See Also