Skip to content

Latest commit

 

History

History
40 lines (32 loc) · 1.38 KB

README.md

File metadata and controls

40 lines (32 loc) · 1.38 KB

pytravelcard

python tools for interacting with ITSO-compliant smartcards

Supported ITSO Environments

Chipsets

  • MIFARE Classic 4k
  • MIFARE DESFire

Products

  • TYP2 - Stored Travel Rights
  • TYP16 - ITSO shell personalisation
  • TYP23 - Pre-defined Specific Journey Ticket

System Requirements

nfc-tools libfreefare must be installed. A supported NFC device should also be connected.

Development

Packaging

Checkout the repository and create a virtualenv using your preferred tooling. Next, create an "editable" install for the module through pip.

$ pip install --editable=.

You will now be able to run pytravelcard from the command line and Python will execute your local codebase.

cffi bindings

pytravelcard calls native libraries through the C Foreign Function Interface for Python. When either of these libraries are updated, the cffi bindings should be rebuilt to facilitate access to new API calls.

After checking out libfreefare and libnfc in the project directory, run make and the libfreefare_build.py scripts to prepare and compile the native bindings.