Loading better.pydeleted 100755 → 0 +0 −27 Original line number Diff line number Diff line #!/usr/bin/env python3 from pirc522 import RFID rdr = RFID(pin_irq=None) # rdr.wait_for_tag() (error, anticoll_uid) = rdr.anticoll() uid = tuple(rdr.read_id()) anticoll_uid = (0x88,) + uid[0:3] + (0x8A,) print("Card read UID: ", [hex(i) for i in uid]) print("Anticoll UID: ", [hex(i) for i in anticoll_uid]) print("Anticoll successful: ", not error) r = rdr.select_tag(anticoll_uid) print(r) rdr.card_auth(rdr.auth_a, 10, [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF], uid) print("Reading block 10: " + str(rdr.read(10))) # Always stop crypto1 when done working rdr.stop_crypto() # Calls GPIO cleanup rdr.cleanup() poolpay/card/Pirc522CardReader.py 0 → 100644 +43 −0 Original line number Diff line number Diff line from collections.abc import Callable, Sequence from pirc522 import RFID from poolpay.card.CardReader import CardReader class Pirc522CardReader(CardReader): def __init__(self) -> None: self._reader = RFID(pin_irq=None) def read_id(self) -> Sequence[int]: # TODO Cleanup implementation (error, anticoll_uid) = self._reader.anticoll() uid = tuple(self._reader.read_id()) anticoll_uid = (0x88,) + uid[0:3] + (0x8A,) print("Card read UID: ", [hex(i) for i in uid]) print("Anticoll UID: ", [hex(i) for i in anticoll_uid]) print("Anticoll successful: ", not error) return uid # TODO See if we can do something with this code r = self._reader.select_tag(anticoll_uid) print(r) self._reader.card_auth(self._reader.auth_a, 10, [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF], uid) print("Reading block 10: " + str(self._reader.read(10))) def on_card_presented(self, handle_card: Callable[[CardReader], None]) -> None: # TODO Do all this repeatedly in a background thread # TODO This only works if the interrupt pin (pin_irq) is correctly initialized self._reader.wait_for_tag() # TODO Call handle method def close(self) -> None: # TODO Maybe integrate this better # Always stop crypto1 when done working self._reader.stop_crypto() # Calls GPIO cleanup self._reader.cleanup() Loading
better.pydeleted 100755 → 0 +0 −27 Original line number Diff line number Diff line #!/usr/bin/env python3 from pirc522 import RFID rdr = RFID(pin_irq=None) # rdr.wait_for_tag() (error, anticoll_uid) = rdr.anticoll() uid = tuple(rdr.read_id()) anticoll_uid = (0x88,) + uid[0:3] + (0x8A,) print("Card read UID: ", [hex(i) for i in uid]) print("Anticoll UID: ", [hex(i) for i in anticoll_uid]) print("Anticoll successful: ", not error) r = rdr.select_tag(anticoll_uid) print(r) rdr.card_auth(rdr.auth_a, 10, [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF], uid) print("Reading block 10: " + str(rdr.read(10))) # Always stop crypto1 when done working rdr.stop_crypto() # Calls GPIO cleanup rdr.cleanup()
poolpay/card/Pirc522CardReader.py 0 → 100644 +43 −0 Original line number Diff line number Diff line from collections.abc import Callable, Sequence from pirc522 import RFID from poolpay.card.CardReader import CardReader class Pirc522CardReader(CardReader): def __init__(self) -> None: self._reader = RFID(pin_irq=None) def read_id(self) -> Sequence[int]: # TODO Cleanup implementation (error, anticoll_uid) = self._reader.anticoll() uid = tuple(self._reader.read_id()) anticoll_uid = (0x88,) + uid[0:3] + (0x8A,) print("Card read UID: ", [hex(i) for i in uid]) print("Anticoll UID: ", [hex(i) for i in anticoll_uid]) print("Anticoll successful: ", not error) return uid # TODO See if we can do something with this code r = self._reader.select_tag(anticoll_uid) print(r) self._reader.card_auth(self._reader.auth_a, 10, [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF], uid) print("Reading block 10: " + str(self._reader.read(10))) def on_card_presented(self, handle_card: Callable[[CardReader], None]) -> None: # TODO Do all this repeatedly in a background thread # TODO This only works if the interrupt pin (pin_irq) is correctly initialized self._reader.wait_for_tag() # TODO Call handle method def close(self) -> None: # TODO Maybe integrate this better # Always stop crypto1 when done working self._reader.stop_crypto() # Calls GPIO cleanup self._reader.cleanup()