Automated Public Transport Fare Collection System Using RFID

DOI : 10.17577/IJERTV12IS080104

Download Full-Text PDF Cite this Publication

Text Only Version

Automated Public Transport Fare Collection System Using RFID

Atharva Joshi Department of Electronics and

Telecommunication Vivekanand Education Society Institute

of Technology Mumbai, India

Yash Chavan Department of Electronics and

Telecommunication Vivekanand Education Society Institute

of Technology Mumbai, India

Atharva Kale Department of Electronics and

Telecommunication Vivekanand Education Society Institute

of Technology Mumbai, India

Pratik Patkar

Department of Electronics and Telecommunication Vivekanand Education Society Institute of Technology Mumbai, India

Gaurav Tawde

Department of Electronics and Telecommunication Vivekanand Education Society Institute of Technology Mumbai, India

Abstract – The restrictions put in place to limit the diffusion and impacts of COVID-19 have had a widespread impact on peoples lives and the way energy is used across entire economies. One of the biggest impacts has been the reduction in passenger transport demand, due to a combination of government lockdowns and fears of contracting and spreading the virus when using mass transport modes. The current phase of fare collecting is heavily reliant on personnel and requires paper money for ticket purchases, which are carried out by individuals. This not only wastes paper but also encourages human contact, which is extremely dangerous in the current situation. The primary goal of this project is to develop a time-efficient and convenient fare collection system. This reduces the need for manpower, saves time, and, ultimately, reduces the human touch. To address this issue, we devised the solution of constructing a highly efficient automated fare collection system. The Raspberry Pi board will be utilized to finish the project's setup. By inserting RFID tags for scanning, the project will make paper cash obsolete as a means of performing transactions. This will be convenient for both the customer and the owner.

Keywords – convenience, minimizing human error, rfid, improving customer experience, raspberry pi 3, mrfc522 rfid reader, i2c, lcd


    The COVID-19 Pandemic has struck the world like a storm. It has destroyed the sense of human touch. The Public transportation Fare collection system has not been updated for several decades and still gets carried out through the human touch. To solve this problem, we have tried to create a system that is time efficient and easy to use. This system will bridge

    the gap that has been caused by the pandemic by using RFID tags and readers, which result in fast and efficient payments. Radio Frequency Identification (RFID) refers to a wireless system comprised of two components: tags and readers. The reader is a device that has one or more antennas that emit radio waves and receive signals back from the RFID tag. Tags, which use radio waves to communicate their identity and other information to nearby readers, can be passive or active. Passive RFID tags are powered by the reader and do not have a battery. Active RFID tags are powered by batteries. RFID tags can store a range of information, from one serial number to several pages of data. Readers can be mobile so that they can be carried by hand, or they can be mounted on a post or overhead. Reader systems can also be built into the architecture of a cabinet, room, or building.


    Automated Public Transport Fare Collection System is designed to use Raspberry Pi 3 B+ as the main control chip, which makes: RFID Cards, RFID Card Reader, I2C Module, and 16×2 LCD more tractable. t is the successor of the Raspberry Pi 3 Model B, with better performance and connectivity. A 1.4 GHz 64-bit quad-core ARM Cortex-A53 CPU, Dual-band 802.11ac Wi-Fi and Bluetooth 4.2 connectivity, improved thermal management, Gigabit Ethernet over USB 2.0 (maximum theoretical transfer speeds of 300 Mbps), Enhanced PXE network, and USB mass-storage booting are some of the key features of the Raspberry Pi 3 Model B+. Supports H.265 (4Kp60 decode), H.264 (1080p60 decode, 1080p30 encode), and improved power management.

    Fig. 1. System Frame Structure

    1. System Initiation:

      The person travelling must be registered and have a registered RFID card. The software defines the initial money in a passenger's account as the default value. The display will start with a welcome note. The user scans their RFID card over the RFID reader, allowing further transactions to take place.

    2. Methodology

      When the registered card is identified by the RFID reader, the balance is verified first. If the user's card balance is adequate, the needed fare is deducted from the card and the lowered amount is updated in the system, which is also displayed on the LCD display as "Payment Done." When there are no funds left in the passenger's account, the standard amount established by the customer is automatically added to the fare system, and the balance is subsequently updated on the system, allowing the card to be used for future transactions.

      If the individual possesses an invalid RFID card or has not yet been added to the database, the card will be denied and the message "UNREGISTERED USER" will be shown. Other cards will be accepted by the reader and system almost instantly.


    The Raspberry Pi 3 Model B+ is commonly used in a broad range of applications, including home media centers, game consoles, and vintage gaming machines. It is also widely used in Internet of Things (IoT) applications, as it provides a low- cost and capable platform for developing linked devices.

    A Raspberry Pi Pinout Chart is an unconnected digital signal pin on a Pi circuit board that may be used as an input, output, or both and is software programmable. The Raspberry Pi 3 Model B+ features 40 GPIO (general-purpose input/output) pins for connecting it to other electrical components and devices. The Raspberry Pi 3 B+'s power pins are Pin 2 and Pin 4, which supply 5V power to the Raspberry Pi.

    Ground pins 6 and 14 are utilized to complete the circuit and provide a reference voltage for the Raspberry Pi.

    The micro-USB port has a maximum current of 2.5 A, while the 5 V power pins have a maximum current of 3 A. To ensure

    the Raspberry Pi's reliable functioning, a power source capable of providing at least 2.5 A of current is suggested.

    Fig. 2. System Hardware Design

      1. MRFC522 RFID READER

    RFID is a data collecting technology that uses low-power radio waves to automatically identify things. RFID tags, an antenna, an RFID reader, and a transceiver are used to send and receive data. RFID Scanner, like barcode technology, recognizes locations and identifies tagged goods but instead of scanning laser light reflections from printed barcode labels, it collects and stores data using low-power radio waves. RFID technology is used to automate data collecting in a warehouse or distribution center. Radio frequencies are read by the transceiver and sent to an RFID tag. The identifying information is subsequently relayed to the RFID reader through a small computer chip built in the tag.

    The RC522 module is connected to the outside world through 8 pins. The VCC, which gives power to the module, is one of the connectors. This can range between 2.5 and 3.3 volts. The interrupt pin IRQ warns the microcontroller when an RFID tag is nearby. When the SPI interface is active, the MISO / SCL / Tx pin operates as master-in-slave-out, as a serial clock when the I2C interface is enabed, and as serial data output when the UART interface is enabled. The SPI input to the RC522 module is MOSI (Master Out Slave In). SCK (Serial Clock) takes clock pulses from the SPI bus master, such as Arduino.

    Fig. 3. MRFC522 RFID Reader Module

    2. I2C Module

    The I2C Bus allows two devices to interact with one other in a reliable, high-speed, bidirectional manner while using the fewest I/O pins. Because the I2C Bus communicates over two lines, Serial Data Line (SDA) and Serial Clock Line (SCL), the protocol used by I2C is sometimes known as a "bidirectional" protocol.

    I2C combines the best characteristics of both SPI and UARTs. I2C allows you to link several slaves to a single master (similar to SPI) and have multiple masters control single or multiple slaves. This is extremely beneficial when more than one microcontroller is recording data to a single memory card or showing text to a single LCD.

    Fig. 4. I2C Module

    1. 16X2 LCD Display

      LCD is an abbreviation for liquid crystal display. It is a type of electronic display module that is used in a wide variety of applications such as various circuits and devices such as mobile phones, calculators, computers, TV sets, and so on. These displays are mostly used for light-emitting diodes with multiple segments and seven segments. The primary advantages of adopting this module are that it is affordable, easily configurable, has no constraints for displaying unique characters, special and even animations, and so on. This LCD's working voltage ranges from 4.7V to 5.3V.

      It has two rows, each of which can output 16 characters.

      Fig. 5. 16X2 LCD Display

      Fig. 6. Hardware Implementation of the System



        1. PuTTY: PuTTY is a free SSH, SCP, and SFTP client for Windows, Mac OS X, and Linux. It is a free and open-source data transmission, terminal emulator, and serial console for Windows. It supports numerous network protocols for establishing a secure connection and sending sensitive data.

        2. Python: Most devices now include options for adjusting the compiler improvement. Python is incorporated into the Raspberry Pi, so you can start creating your own Raspberry Pi projects right away.

        3. VNC viewer: VNC (Virtual Network Computing) allows you to operate the Raspberry Pi's desktop interface from another computer or mobile device without using a display, allowing you to control your Raspberry Pi from anywhere. VNC Viewer is used for controlling local PCs and mobile devices. A device with VNC Viewer software installed, such as a computer, tablet, or smartphone, may connect to and operate a computer in another place.

        4. Thonny IDE: If you wish to develop in Python, Thonny is the ideal IDE for the Raspberry Pi. It is simple to use and includes Python 3.7. It is designed for novices, but it also contains several essential features that make it a decent IDE for full-fledged Python programming. Its features include syntax error highlighting, a debugger, code completion, and step-by-step expression evaluation.


    Step 13: Add Recharged Amount to Recharge the card.

    Step 14: Display Balance. Step 15: End


The project is a completely functional replicate of the intended system. This unique method streamlines fare collecting, lowering wait times, minimizing human error, and improving overall customer experience. The system has not only made commuters' life easier by smoothly incorporating RFID technology into the payment process, but it has also given transport authorities with a significant tool for data analysis and decision-making. As we move forward, the success of this initiative highlights the potential of technology-driven solutions to revolutionize existing processes and open the way for additional improvements in public transit services throughout the world.


This report and its study would not have been feasible without the assistance of our project guide, Mr. Gaurav Tawde. The implementation of this project provided us with an excellent opportunity to develop practical knowledge and expertise. We will work hard to put our newly acquired skills and information to good use and continue to enhance them in order to achieve our chosen career goal.

Fig. 7. Schematic representation of software implementation


Step 1: Include the RFID and LCD library.

Step 2: Declare the reset and SDA pins of RFID Step 3: Create Instance for MRFC522 RFID module Step 4: Declare pins for LCD.

Step 5: Initiate LCD, SPI bus, MRFC522 FID Module.

Step 6: Set Initial balance and Payment rate. Step 7: Display a welcome note.

Step 8: If RFID Card is unregistered, then print Unregistered User.

Step 9: If RFID Card is registered, then check the balance.

Step 10: If the balance is sufficient i.e., equal to or greater than 500,

Step 11: Deduct the amount equal to 500 and print Payment Done.

Step 12: If balance is insufficient, print Insufficient Balance.


[1] Golam Tangim, Md. Kafiul Islam, Arif Ul Alam, RFID-based Ticketing for Public Transport System, Institute of Electrical and Electronics Engineers, vol.6, 2018.

[2] Dr. Bos Mathew Jos, Ahammed Aslam. N, Akhil. E. P, Divya Lakshmi. G, Shajla. C, RFID Based Bus Ticketing System, International Journal of Advanced Research in Electrical, Electronics and Instrumentation Engineering, Vol. 4, Issue 4, 2018, ISSN :2278 8875.

[3] Sunitha Nandhini, Sangeetha, VidhyaJanani, AUTOMATIC BUS FARE COLLECTION SYSTEM USING RFID, International Journal of Advanced Research in Computer Engineering & Technology (IJARCET), Volume 6, Issue 3, March 2017, ISSN: 2278 132.

[4] Md.FoisalMahediHasan, GolamTangim, Md. Kafiul Islam, Md.

Rezwanul Haque Khandokar, ArifUlAlam, RFID-based Ticketing for [5] Public Transport System: Perspective Megacity Dhaka, 3rd IEEE

International Conference on Computer Science and Information Technology (ICCSIT), vol. 6, pp. 459-462, 2010.

[6] Varun Krishna K.G., Selvarathinam S., Roopsai V., Ram Kumar R.M., Modified Ticketing System using Radio Frequency Identification (RFID), International Journal of Advanced Computer Research, vol. 3, Issue 12, pp. 92-98, 2013.

[7] ThimmarajaYadava G, Prem Narayankar, Beeresh H V, An Approach for RFID Ticketing used for Personal Navigator for a Public Transport System, International Journal of Technical Research and Applications, vol. 2, Issue 3, pp. 109-112, 2014.

[8] V.Venkatakrishnan,R, Seethalakshmi, Public Transport Ticketing and Monitoring System, Journal of Theoretical and Applied Information Technology, vol. 38, no. 1, pp. 31-34,2012.