10000 GitHub - phcoder/metrodroid: Read data from public transit cards using your NFC Android phone!
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

phcoder/metrodroid

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Translation status Build Status

Direct APK download

Version: 2.9.38

View your remaining balance, recent trips, and other information from contactless public transit cards using your NFC-enabled Android device!

I presented Metrodroid and the work I did on supporting a number of Australian agencies' cards at linux.conf.au 2018, in my talk, Tap on to reverse engineering.

Thanks to

Translated by

Thanks to those who have [helped to make Metrodroid available in languages other than English][22]:

Supported card protocols

Supported cards / agencies

Card / Agency Location Notes
AT HOP ๐Ÿ‡ณ๐Ÿ‡ฟ Auckland, New Zealand ๐Ÿ†• 123
Beijing Municipal Card ๐Ÿ‡จ๐Ÿ‡ณ Beijing, China ๐Ÿ†•
Bilhete รšnico ๐Ÿ‡ง๐Ÿ‡ท Sรฃo Paulo, Brazil ๐Ÿ” MFC
CharlieCard ๐Ÿ‡บ๐Ÿ‡ธ Boston, MA, USA ๐Ÿ†• ๐Ÿ” MFC
City Union ๐Ÿ‡จ๐Ÿ‡ณ Mainland China ๐Ÿ†•
Clipper ๐Ÿ‡บ๐Ÿ‡ธ San Francisco, CA, USA
Compass ๐Ÿ‡จ๐Ÿ‡ฆ Vancouver, BC, Canada ๐Ÿ†• SINGLE
Cubic Nextfare ๐ŸŒŽ many locations ๐Ÿ†• ๐Ÿ” MFC
EasyCard ๐Ÿ‡น๐Ÿ‡ผ Taipei, Taiwan ๐Ÿ” MFC
Edy ๐Ÿ‡ฏ๐Ÿ‡ต Japan
Envibus ๐Ÿ‡ซ๐Ÿ‡ท Sophia Antipolis, France ๐Ÿ†•
ERG ๐ŸŒ many locations ๐Ÿ†• ๐Ÿ” MFC
EZ-Link ๐Ÿ‡ธ๐Ÿ‡ฌ Singapore
Go card ๐Ÿ‡ฆ๐Ÿ‡บ Brisbane and South East Queensland, Australia ๐Ÿ†• ๐Ÿ” MFC
Go-to card ๐Ÿ‡บ๐Ÿ‡ธ Minneapolis-St. Paul, MN, USA ๐Ÿ†• ๐Ÿ” MFC
Hop Fastpass ๐Ÿ‡บ๐Ÿ‡ธ Portland, OR, USA ๐Ÿ†• 123
HSL, Matkakortti ๐Ÿ‡ซ๐Ÿ‡ฎ Finland
IstanbulKart ๐Ÿ‡น๐Ÿ‡ท Istanbul, Turkey ๐Ÿ†• 123
Kartu Multi Trip ๐Ÿ‡ฎ๐Ÿ‡ฉ Jakarta, Indonesia KMT
Kiev Metro ๐Ÿ‡บ๐Ÿ‡ฆ Kiev, Ukraine ๐Ÿ†• ๐Ÿ” MFC
Krasnodar ๐Ÿ‡ท๐Ÿ‡บ Krasnodar, Russia ๐Ÿ†• ๐Ÿ” MFC
Leap ๐Ÿ‡ฎ๐Ÿ‡ช Ireland ๐Ÿ†• ๐Ÿ”“
Lisboa Viva ๐Ÿ‡ต๐Ÿ‡น Lisbon, Portugal
Manly Fast Ferry ๐Ÿ‡ฆ๐Ÿ‡บ Sydney, NSW, Australia ๐Ÿ†• ๐Ÿ” MFC
Metrocard ๐Ÿ‡ฆ๐Ÿ‡บ Adelaide, SA, Australia ๐Ÿ†•
Metrocard ๐Ÿ‡ณ๐Ÿ‡ฟ Christchurch, New Zealand ๐Ÿ†• ๐Ÿ” MFC
Mobib ๐Ÿ‡ง๐Ÿ‡ช Brussels, Belgium ๐Ÿ†•
Myki ๐Ÿ‡ฆ๐Ÿ‡บ Melbourne (and surrounds), VIC, Australia ๐Ÿ†• 123
MyWay ๐Ÿ‡ฆ๐Ÿ‡บ Australian Capital Territory, Australia ๐Ÿ†• ๐Ÿ” MFC
Navigo ๐Ÿ‡ซ๐Ÿ‡ท Paris, France ๐Ÿ†•
NETS FlashPay ๐Ÿ‡ธ๐Ÿ‡ฌ Singapore
Octopus ๐Ÿ‡ญ๐Ÿ‡ฐ Hong Kong ๐Ÿ†•
Opal ๐Ÿ‡ฆ๐Ÿ‡บ Sydney (and surrounds), NSW, Australia ๐Ÿ†•
Opus ๐Ÿ‡จ๐Ÿ‡ฆ Quรฉbec, Canada ๐Ÿ†•
ORCA ๐Ÿ‡บ๐Ÿ‡ธ Seattle, WA, USA
OรนRA ๐Ÿ‡ซ๐Ÿ‡ท Grenoble, France ๐Ÿ†•
OV-chipkaart ๐Ÿ‡ณ๐Ÿ‡ฑ Netherlands ๐Ÿ” MFC
Podorozhnik ๐Ÿ‡ท๐Ÿ‡บ Saint Petersburg, Russia ๐Ÿ†• ๐Ÿ” MFC
Rav-Kav ๐Ÿ‡ฎ๐Ÿ‡ฑ Israel ๐Ÿ†•
Rejsekort ๐Ÿ‡ณ๐Ÿ‡ด Norway ๐Ÿ†• ๐Ÿ” MFC
RicaricaMi ๐Ÿ‡ฎ๐Ÿ‡น Milan, Italy ๐Ÿ†• ๐Ÿ” MFC
Selecta ๐Ÿ‡ซ๐Ÿ‡ท France ๐Ÿ†•
Shenzhen Tong ๐Ÿ‡จ๐Ÿ‡ณ Shenzhen, Guangdong Province, China ๐Ÿ†•
SLAccess ๐Ÿ‡ธ๐Ÿ‡ช Stockholm, Sweden ๐Ÿ†• ๐Ÿ” MFC
SmartRider ๐Ÿ‡ฆ๐Ÿ‡บ Western Australia, Australia ๐Ÿ†• ๐Ÿ” MFC
Strelka ๐Ÿ‡ท๐Ÿ‡บ Moscow, Russia ๐Ÿ” 123 MFC
Suica, ICOCA, PASMO ๐Ÿ‡ฏ๐Ÿ‡ต Japan
SunCard ๐Ÿ‡บ๐Ÿ‡ธ Orlando, FL, USA ๐Ÿ†• ๐Ÿ” 123 MFC
TaM ๐Ÿ‡ซ๐Ÿ‡ท Montpellier, France ๐Ÿ†•
Tartu Bus ๐Ÿ‡ช๐Ÿ‡ช Tartu, Estonia ๐Ÿ†• 123 MFC
T-Money ๐Ÿ‡ฐ๐Ÿ‡ท South Korea ๐Ÿ†•
T-Union ๐Ÿ‡จ๐Ÿ‡ณ Mainland China ๐Ÿ†•
TransGironde ๐Ÿ‡ซ๐Ÿ‡ท Gironde, France ๐Ÿ†•
Transit Access Pass ๐Ÿ‡บ๐Ÿ‡ธ Los Angeles, CA, USA ๐Ÿ†• ๐Ÿ” MFC
Troika ๐Ÿ‡ท๐Ÿ‡บ Moscow, Russia ๐Ÿ†• ๐Ÿ” MFC
Ventra ๐Ÿ‡บ๐Ÿ‡ธ Chicago, IL, USA ๐Ÿ†• SINGLE
Wuhan Tong ๐Ÿ‡จ๐Ÿ‡ณ Wuhan, Hubei Province, China ๐Ÿ†•
Yaroslavl ETK ๐Ÿ‡ท๐Ÿ‡บ Yaroslavl, Russia ๐Ÿ†• ๐Ÿ” MFC
Zolotaya Korona ๐Ÿ‡ท๐Ÿ‡บ multiple cities in Russia ๐Ÿ†• ๐Ÿ” MFC
Note Meaning
๐Ÿ†• New in Metrodroid.
๐Ÿ” Encryption keys required to read this card.
๐Ÿ”“ Encryption keys are downloaded from the operator.
MFC MIFARE Classic card; requires NXP NFC chipset in your phone.
123 Only the card number can be read.
FALLBACK Fallback reader -- must be explicitly enabled in the application's settings.
KMT Only new FeliCa-based cards can be read.
SINGLE Only single-use tickets can be read.

This project will only read data from the card itself, without having to connect to the agency's back-office systems. In some cases, limited data is available, so balance information and trip history might not be available.

Note: The Leap card reader connects to Transport for Ireland's server for challenge-response authentication with the card. The data is otherwise interpreted locally, and connectivity is disabled by default.

Supported Phones

Metrodroid requires an Android phone running 4.1 or later, with NFC support.

Some devices do not support MIFARE Classic. MIFARE Classic is not an NFC-compliant card format, so can only be read with phones with NXP chipsets.

License and copyright

Copyright 2015 โ€“ 2018 Michael Farrell

Copyright 2011 โ€“ 2013 Eric Butler

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

This program contains Leaflet, a JavaScript mapping library, licensed under the BSD license.

This program contains nfc-felica-lib, a library for communicating with Sony FeliCa cards, licensed under the Apache 2.0 license.

This software and it's authors are not associated with any public transit agency. Pictures of supported cards, including their logos, are included with this software package for the purposes of identifying cards.

Building / hacking on this software

  1. Clone the repository including submodules:

    $ git clone --recursive https://github.com/micolous/metrodroid.git
    

    If you get an error from Gradle about :nfc-felica-lib not being available, then your clone doesn't have the submodules.

  2. Import the directory into Android Studio.

    Android Studio will prompt you to install the appropriate SDK version, build tools, and Gradle.

About

Read data from public transit cards using your NFC Android phone!

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 81.8%
  • Kotlin 12.8%
  • Python 4.5%
  • Makefile 0.6%
  • Shell 0.1%
  • HTML 0.1%
  • JavaScript 0.1%
0