mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-01-24 08:59:43 +08:00
844d732297
Note that it behaves differently now * it looks for Enter key only, not any key * it "eats" the input, no need for (void)getchar() after it * it works the same no matter the value of ICANON * the mingw version has been adapted to act the similarly This should fix its usage on Android where tcgetattr always returns -1
35 lines
1 KiB
Lua
35 lines
1 KiB
Lua
--[[
|
|
THIS IS WORK IN PROGREESS, very much not finished.
|
|
|
|
This library utilises other libraries under the hood, but can be used as a generic reader for 13.56MHz tags.
|
|
]]
|
|
|
|
local reader14443A = require('read14a')
|
|
local reader14443B = require('read14b')
|
|
local reader15693 = require('read15')
|
|
|
|
---
|
|
-- This method library can be set waits or a 13.56 MHz tag, and when one is found, returns info about
|
|
-- what tag it is.
|
|
--
|
|
-- @return if successfull: an table containing card info
|
|
-- @return if unsuccessfull : nil, error
|
|
local function waitForTag()
|
|
print("Waiting for card... press Enter to quit")
|
|
local readers = {reader14443A, reader14443B, reader15693}
|
|
local i = 0;
|
|
while not core.kbd_enter_pressed() do
|
|
i = (i % 3) +1
|
|
r = readers[i]
|
|
print("Reading with ",i)
|
|
res, err = r.read()
|
|
if res then return res end
|
|
print(err)
|
|
-- err means that there was no response from card
|
|
end
|
|
return nil, "Aborted by user"
|
|
end
|
|
|
|
return {
|
|
waitForTag = waitForTag,
|
|
}
|