1 package RFID::Biblio::Reader::Serial;
6 use Device::SerialPort qw(:STAT);
7 use Data::Dump qw(dump);
11 RFID::Biblio::Reader::Serial - base class for serial RFID readers
17 Open serial port (if needed) and init reader
26 $self->port && $self->init && return $self;
32 my $serial_obj = $self->port;
41 return $self->{port} if defined $self->{port};
43 my $settings = $self->serial_settings;
44 my @devices = ( $ENV{RFID_DEVICE} );
45 @devices = glob '/dev/ttyUSB*';
47 warn "# port devices ",dump(@devices);
49 foreach my $device ( @devices ) {
51 next if $serial_device->{$device};
53 if ( my $port = Device::SerialPort->new($device) ) {
54 foreach my $opt ( qw/handshake baudrate databits parity stopbits/ ) {
55 $port->$opt( $settings->{$opt} );
57 warn "found ", ref($self), " $device settings ",dump $settings;
58 $self->{port} = $port;
59 $serial_device->{$device} = $port;
64 warn "# serial_device ",dump($serial_device);
74 L<RFID::Biblio::Reader::3M810>
76 L<RFID::Biblio::Reader::CPRM01>
78 L<RFID::Biblio::Reader::API>