Class: Tamashii::Agent::Device::CardReader::Pn532Uart
- Inherits:
-
Base
- Object
- DeviceBase
- Base
- Tamashii::Agent::Device::CardReader::Pn532Uart
- Defined in:
- lib/tamashii/agent/device/card_reader/pn532_uart.rb
Instance Method Summary collapse
- #default_path ⇒ Object
-
#initialize(*args) ⇒ Pn532Uart
constructor
A new instance of Pn532Uart.
- #poll_uid ⇒ Object
- #shutdown ⇒ Object
Methods inherited from DeviceBase
#fetch_option, #fetch_option!, #unexport_pin
Methods included from Common::Loggable
#display_name, #logger, #progname
Constructor Details
#initialize(*args) ⇒ Pn532Uart
Returns a new instance of Pn532Uart.
9 10 11 12 13 14 15 |
# File 'lib/tamashii/agent/device/card_reader/pn532_uart.rb', line 9 def initialize(*args) super @ctx = NFC::Context.new @dev = @ctx.open "pn532_uart:#{fetch_option(:path, default_path)}" @card_type = @options[:card_type] || :felica logger.info "Card type enabled: #{@card_type}" end |
Instance Method Details
#default_path ⇒ Object
17 18 19 |
# File 'lib/tamashii/agent/device/card_reader/pn532_uart.rb', line 17 def default_path "/dev/ttyAMA0" end |
#poll_uid ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/tamashii/agent/device/card_reader/pn532_uart.rb', line 21 def poll_uid tag = @dev.poll(@card_type) if tag && !tag.is_a?(Integer) return tag.uid else return nil end rescue => e logger.error "Error when reading card: #{e.}" return :error end |
#shutdown ⇒ Object
33 34 35 36 |
# File 'lib/tamashii/agent/device/card_reader/pn532_uart.rb', line 33 def shutdown @dev.close @dev = nil end |