Farebot
Read data from public transit cards using your NFC Android phone!
Install / Use
/learn @codebutler/FarebotREADME
FareBot runs on:
- Android — built-in NFC (6.0+)
- iOS — built-in NFC (iPhone 7+)
- macOS (experimental) — PC/SC smart card readers or PN533 USB NFC readers
- Web (experimental) — PN533 USB NFC readers (Chrome/Edge/Opera)
Download
<!-- TODO: Add links when published -->- Android: Coming soon on Google Play
- iOS: Coming soon on the App Store
- Web: farebot-web.vercel.app
- Build from source: See Building
Written By
Thanks To
[!NOTE] Huge thanks to the Metrodroid project, a fork of FareBot that added support for many additional transit systems. All features as of v3.1.0 (
04a603ba) have been backported.
- Karl Koscher (ORCA)
- Sean Cross (CEPAS/EZ-Link)
- Anonymous Contributor (Clipper)
- nfc-felica and IC SFCard Fan projects (Suica)
- Wilbert Duijvenvoorde (MIFARE Classic/OV-chipkaart)
- tbonang (NETS FlashPay)
- Marcelo Liberato (Bilhete Unico)
- Lauri Andler (HSL)
- Michael Farrell (Opal, Manly Fast Ferry, Go card, Myki, Octopus)
- Rob O'Regan (Manly Fast Ferry card image)
- b33f (EasyCard)
- Bondan Sumbodo (Kartu Multi Trip, COMMET)
Supported Cards
Asia
| Card | Location | Protocol | Android | iOS | macOS | Web | |------|----------|----------|---------|-----|-------|-----| | Beijing Municipal Card | Beijing, China | ISO 7816 | ✅ | ✅ | ✅ | ✅ | | City Union | China | ISO 7816 | ✅ | ✅ | ✅ | ✅ | | Edy | Japan | FeliCa | ✅ | ✅ | ✅ | ✅ | | EZ-Link | Singapore | CEPAS | ✅ | ✅ | ✅ | ✅ | | Kartu Multi Trip | Jakarta, Indonesia | FeliCa | ✅ | ✅ | ✅ | ✅ | | KomuterLink | Malaysia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | NETS FlashPay | Singapore | CEPAS | ✅ | ✅ | ✅ | ✅ | | Octopus | Hong Kong | FeliCa | ✅ | ✅ | ✅ | ✅ | | One Card All Pass | South Korea | ISO 7816 | ✅ | ✅ | ✅ | ✅ | | Shanghai Public Transportation Card | Shanghai, China | ISO 7816 | ✅ | ✅ | ✅ | ✅ | | Shenzhen Tong | Shenzhen, China | ISO 7816 | ✅ | ✅ | ✅ | ✅ | | Suica / ICOCA / PASMO | Japan | FeliCa | ✅ | ✅ | ✅ | ✅ | | T-money | South Korea | ISO 7816 | ✅ | ✅ | ✅ | ✅ | | T-Union | China | ISO 7816 | ✅ | ✅ | ✅ | ✅ | | Touch 'n Go | Malaysia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Wuhan Tong | Wuhan, China | ISO 7816 | ✅ | ✅ | ✅ | ✅ |
Australia & New Zealand
| Card | Location | Protocol | Android | iOS | macOS | Web | |------|----------|----------|---------|-----|-------|-----| | Adelaide Metrocard | Adelaide, SA | DESFire | ✅ | ✅ | ✅ | ✅ | | BUSIT | Waikato, NZ | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Manly Fast Ferry | Sydney, NSW | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Metrocard | Christchurch, NZ | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Myki | Melbourne, VIC | DESFire | ✅ | ✅ | ✅ | ✅ | | Opal | Sydney, NSW | DESFire | ✅ | ✅ | ✅ | ✅ | | Otago GoCard | Otago, NZ | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | SeqGo | Queensland | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | SmartRide | Rotorua, NZ | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | SmartRider | Perth, WA | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Snapper | Wellington, NZ | ISO 7816 | ✅ | ✅ | ✅ | ✅ |
Europe
| Card | Location | Protocol | Android | iOS | macOS | Web | |------|----------|----------|---------|-----|-------|-----| | Bonobus | Cadiz, Spain | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Carta Mobile | Pisa, Italy | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Envibus | Sophia Antipolis, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | HSL | Helsinki, Finland | DESFire | ✅ | ✅ | ✅ | ✅ | | KorriGo | Brittany, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Leap | Dublin, Ireland | DESFire | ✅ | ✅ | ✅ | ✅ | | Lisboa Viva | Lisbon, Portugal | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Mobib | Brussels, Belgium | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Navigo | Paris, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | OuRA | Grenoble, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | OV-chipkaart | Netherlands | Classic 🔒 / Ultralight | ✅ | ✅³ | ✅ | ✅ | | Oyster | London, UK | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Pass Pass | Hauts-de-France, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Pastel | Toulouse, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Rejsekort | Denmark | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | RicaricaMi | Milan, Italy | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | SLaccess | Stockholm, Sweden | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | TaM | Montpellier, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Tampere | Tampere, Finland | DESFire | ✅ | ✅ | ✅ | ✅ | | Tartu Bus | Tartu, Estonia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | TransGironde | Gironde, France | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Västtrafik | Gothenburg, Sweden | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Venezia Unica | Venice, Italy | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | Waltti | Finland | DESFire | ✅ | ✅ | ✅ | ✅ | | Warsaw | Warsaw, Poland | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ |
Middle East & Africa
| Card | Location | Protocol | Android | iOS | macOS | Web | |------|----------|----------|---------|-----|-------|-----| | Gautrain | Gauteng, South Africa | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Hafilat | Abu Dhabi, UAE | DESFire | ✅ | ✅ | ✅ | ✅ | | Metro Q | Qatar | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | RavKav | Israel | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ |
North America
| Card | Location | Protocol | Android | iOS | macOS | Web | |------|----------|----------|---------|-----|-------|-----| | Charlie Card | Boston, MA | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Clipper | San Francisco, CA | DESFire / Ultralight | ✅ | ✅ | ✅ | ✅ | | Compass | Vancouver, Canada | Ultralight | ✅ | ✅ | ✅ | ✅ | | LAX TAP | Los Angeles, CA | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | MSP GoTo | Minneapolis, MN | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Opus | Montreal, Canada | ISO 7816 (Calypso) | ✅ | ✅ | ✅ | ✅ | | ORCA | Seattle, WA | DESFire | ✅ | ✅ | ✅ | ✅ | | Ventra | Chicago, IL | Ultralight | ✅ | ✅ | ✅ | ✅ |
Russia & Former Soviet Union
| Card | Location | Protocol | Android | iOS | macOS | Web | |------|----------|----------|---------|-----|-------|-----| | Crimea Trolleybus Card | Crimea | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Ekarta | Yekaterinburg, Russia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Electronic Barnaul | Barnaul, Russia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Kazan | Kazan, Russia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Kirov transport card | Kirov, Russia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Krasnodar ETK | Krasnodar, Russia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Kyiv Digital | Kyiv, Ukraine | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Kyiv Metro | Kyiv, Ukraine | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | MetroMoney | Tbilisi, Georgia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | OMKA | Omsk, Russia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Orenburg EKG | Orenburg, Russia | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅ | | Parus school card | Crimea | Classic 🔒 | ✅¹ | ❌ | ✅ | ✅
