Biblio::RFID::RFID501 - RFID Standard for Libraries
Contents
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)
