A PROJECT REPORT ON DIGITAL IC TESTER USING ARDUINO REPORT SUBMITTED TO VISHWAKARMA INSTITUTE OF INFORMATION TECHNOLOGY, PUNE FOR THE PBL OF DELD IN DEPARTMENT OF ENGINEERING AND APPLIED SCIENCES AY 2023-24 Semester I Sr. No 1 2 3 Gr. No 22311866 22311860 22311886 Class: FY (IT-B) Roll No. 103265 103272 103269 Division: B Name SOHAM DEOLE MOHIT MAKDE YASH KATARIA Batch: B3 Guided by Prof. Riddhi Mirajkar Page 1 of 26 ACKNOWLEDGEMENT We would like to thank everyone who contributed to successful the completion of this project. Special thanks go to our Subject Teacher Mrs. Riddhi Mirajkar, Assistant Professor Department of IT, VIIT for helping and guiding us throughout the project. The supervision and support that she gave truly helped the progression and smoothness of the project. The co-operation is much indeed appreciated. We would also like to thank Technical Lab Assistant Nilesh Bhoj for providing us with the ICs required for the project. Page 2 of 26 ABSTRACT In the present world, everything is going to be more developed, attractive and userfriendly. ICs, the main component of each electronic circuit can be used for a wide variety of purposes and functions. But sometimes due to faulty ICs, the circuit doesn’t work. Indeed it is a lot of tedious work to debug the circuit and confirm whether the circuit is creating problems or the IC itself is dead. So to come up with these sorts of problems we intend to make a project that would confirm whether the IC under consideration is working properly or not and it also detects Unknown ICs. Hence, the motive of this project is to develop a low-cost, computer-independent and user-friendly digital Logic Integrated Circuit (IC) tester. The logic IC tester will be able to test the function of basic 74TTL series having Logic gates (AND, OR, NOT, NAND, XOR etc.). The logic IC functional tester can be operated in Personal Computer (PC) mode. Arduino IDE has been used to develop the user interface to transmit the instruction from the computer to the Arduino through the Universal Serial Bus (USB) interface for PC mode. The final result will be displayed through LEDs. The logic IC functional tester is successfully built and well-functional without any errors. In the performance analysis chapter, we have shown the results of different types of ICs after testing those ICs. Since it is programmable, any number of ICs can be tested within the constraint. Page 3 of 26 TABLE OF CONTENTS ACKNOWLEDGEMENTS 2 ABSTRACT 3 TABLE OF CONTENTS 4 CHAPTER 1 Introduction 1.1 Aim 1.2 Background 1.3 Objective 1.4 Motivation 1.5 Review of Literature 2 System Architecture 2.1 Integrated Circuit (IC) 2.2 Breadboard 2.3 Arduino UNO 2.3.2 Power pins of Arduino 2.4 ATMEGA328p Microcontroller 2.5 Resistor 2.6 LEDs 2.7 Jumper Wires 2.8 USB Cable 3 Design and Development 3.1 Hardware Implementation 3.1.1 Block Diagram 3.1.2 Arduino and IED 3.1.3 Arduino and IC Page 4 of 26 3.1.4 Working Methodology 3.1.5 Schematic Diagram 3.2 Software implementation 3.2.1 Arduino IDE 3.2.2 Operation 3.2.3 Algorithm 3.2.4 Flowchart 4 Performance Analysis 4.1 4.2 4.3 4.4 4.5 5 AND Gate of 7408 IC NAND Gate of 7400 IC OR Gate of 7432 IC NOT Gate of 7404 IC X-OR Gate of 7486 IC Conclusion 5.1 5.2 Challenges Future Recommendations Page 5 of 26 CHAPTER 1 INTRODUCTION 1.1 Aim To design, implement, and evaluate a Digital IC Tester using Arduino, to provide a versatile and cost-effective solution for testing and verifying digital integrated circuits. The project aims to develop a user-friendly and efficient testing platform that can accurately identify the functionality and integrity of various digital ICs, catering to a diverse range of applications in electronics and embedded systems. Through the integration of Arduinobased hardware and software components, the project aspires to contribute to the advancement of digital electronics testing methodologies, fostering innovation and practical solutions in the field. 1.2 Background The dramatic increase in the use of digital integrated circuits (ICs) has created a need for a fast accurate means of testing such ICs. An IC Tester is to be economically implemented for small or medium-scale users of such IC's (for example, in the lab) and provides a quick but thorough check of its functions with minimal operator action. The IC Tester can be used to test different ICs. The purpose of IC tester is to ensure IC components are in good condition for use. For testing an IC, different hardware circuits for different ICs are needed. This is the main trouble and disadvantage. Hence, it is needed to construct an IC tester to surmount this problem. 1.3 Objective The IC tester simply determines unknown ICs and tells whether the ICs are in working condition or not. The main purpose of the project is to develop a digital IC tester that is very less expensive and handy than that of what are available in markets. The aim is to check the ICs in very due course of time and display results of ICs being good or faulty immediately. The necessary input signal conditions are applied to the inputs of the gate through microcontroller and output of each gate is monitored and compared with the truth table, and depending on that comparison IC is tested whether it is good or faulty. The basic function of digital IC tester is to test the logical functioning of the ICs as described in the truth table/function table. The truth tables are stored in database while coding of the microcontroller. The test displays the good ICs and faulty ICs on LEDS. The test is being accomplished with the ICs belonging to the basic logic gate IC series. There Page 6 of 26 are many IC tester available in market, varieties of choices are present for users. But we have developed a tester that is very cheap, portable, easy to handle as well as reconfigurable. 1.4 Motivation The IC testers available in the market today are too costly for individuals to own. Therefore we decided to construct an IC tester that is affordable and user-friendly. The motivation is to build an affordable IC tester for testing the function of 74 series TTL Logic Gates. Furthermore, the IC tester must be easy to operate, compact, lightweight, portable, and have low power consumption. Next, the motivation is working with actual components, breadboards, and Arduino boards offers invaluable hands-on experience. It bridges the gap between theoretical knowledge and real-world applications and also it deepens your understanding of digital electronics, logic circuits, and how ICs work. It provides a practical perspective on the topics covered in our coursework. It also helps us develop troubleshooting skills and evolve our problem-solving abilities. 1.5 Literature Review Although not the same but some related works have been done by many researchers. Some of the related literature has been reviewed and described below: i] Mirza Shoaib Ahmed Et al. did a work titled “MICROCONTROLLER BASED IC TESTER.” In this work the authors have designed a microcontroller-based IC tester where it can give the result of IC within a second. They tried to make sure that the device would work as a less power consumer. Another special feature of that device is its low cost. Its smaller size makes it unique than others IC tester. ii] Liakot Ali and Et al. did the work titled “Design of a low cost IC tester”. In this work, they have design a microcontroller-based IC tester. The cost of that IC tester is cheaper than other devices. It is capable of testing combinational circuits as well as sequential circuits with scan-path facilities efficiently. It can also be used for testing PCB (printed circuit board) interconnection faults. iii] S.Devika and Et.al have done the work on “IC TESTER USING PIC MICROCONTROLLER”. They have made the IC tester such a way that is of testing both digital and analog ICs having 14 pin(74 series) and 8 pin(IC 555,LM741) respectively. The heart of the IC tester is PIC 16F877A Microcontroller iv] J. Trnka and Et.al have done a research on the titled “Practical Limit of IC Tester”. In this paper they have mentioned all kind of limitations of IC tester in practical field. V] Maribelle and Et.al did the work on “Microcontroller Based Design of Digital IC Tester with Multi-Testing and Loop Testing Functions” Page 7 of 26 CHAPTER 2 SYSTEM ARCHITECTURE In this chapter, we will understand in detail about various types of components used in IC tester and their functions. SR.NO COMPONENT LIST 1 2 3 4 5 6 7 8 Arduino Uno Jumper Wires USB cable LEDs (for each pin of the IC) Resistors Unknown IC Arduino IDE Power Supply Specifications QUANTITY 1 Male to male 220 ohms nand, and, or, not, xor laptop 1 5 5 5 1 1 2.1 Integrated Circuit (IC) An integrated circuit (IC), sometimes called a chip or microchip, is a semiconductor wafer on which thousands or millions of tiny resistors, capacitors, and transistors are fabricated. An IC can function as an amplifier, oscillator, timer, counter, computer memory, or microprocessor. A particular IC is categorized as either linear (analogue) or digital, depending on its intended application. Linear ICs have continuously variable output (theoretically capable of attaining an infinite number of states) that depends on the input signal level. As the term implies, the output signal level is a linear function of the input signal level. Ideally, when the instantaneous output is graphed against the instantaneous input, the plot appears as a straight line. Linear ICs are used as audio-frequency (AF) and radio-frequency (RF) amplifiers. The operational amplifier (op-amp) is a common device in these applications. Digital ICs operate at only a few defined levels or states, rather than over a continuous range of signal amplitudes. These devices are used in computers, computer networks, modems, and frequency counters. The fundamental building blocks of digital ICs are logic Page 8 of 26 gates, which work with binary data, that is, signals that have only two different states, called low (logic 0) and high (logic 1) 2.2 Bread Board A breadboard consists of a plastic block holding a matrix of electrical sockets of a size suitable for gripping thin connecting wires, component wires or the pins of transistors and integrated circuits (ICs). The sockets are connected inside the board, usually in rows of five sockets. Solderless board- This means that the component does not require any soldering to fit into the board. We fit the components by plugging their end terminal into the board. Hence, a breadboard is often called a Plugboard. The top and bottom holes of a row in a breadboard are connected horizontally, and the centre part is connected vertically, as shown below. It means a single horizontal line of a breadboard has the same connection. This is because the metal strips underneath the breadboard at the top and bottom are connected horizontally. Hence, it provides the same connection in a row. The two top and bottom parts of a breadboard are generally used for power connections. The vertical connection of the centre part means a single vertical line in a breadboard provides the same connection. It is useful when we need to connect the different components in series. 2.2 Resistor in Series 2.1 Breadboard For example-Connect two resistors in series is shown as below. It is because the metal strips underneath the breadboard at the centre are connected vertically. Hence, it provides similar connectivity through a particular column, as shown below: 2.3 Arduino UNO The Arduino Uno is a microcontroller board based on the ATmega328. It has 14 digital Input/output pins (of which 6 can be used as PWM outputs), 6 analogue inputs, a 16 MHz crystal Page 9 of 26 oscillator, a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with an AC-to-DC adapter or battery to get started. The Uno differs from all preceding boards in that it does not use the FTDI USB-to-serial driver chip. Instead, it features the Atmega8U2 programmed as a USB-to-serial converter. The Arduino Uno can be powered via the USB connection or with an external power supply. The power source is selected automatically. External (non-USB) power can come either from an ACto-DC adapter (wall-wart) or battery. The adapter can be connected by plugging a 2.1mm centerpositive plug into the board's power jack. Leads from a battery can be inserted in the Ground and Vin pin headers of the POWER connector. The board can operate on an external supply of 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may be unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts. 2.3.1 Power pins of Arduino VIN.The input voltage to the Arduino board when it's using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin. 5V.The regulated power supply is used to power the microcontroller and other components on the board. This can come either from VIN via an on-board regulator, or be supplied by USB or another regulated 5V supply. 3V3. A 3.3 volt supply is generated by the on-board regulator. Maximum current draw is 50 mA. GND.-Ground pins. Digital pins- They take input from sensors and give digital output to some of the components Page 10 of 26 2.3 ARDUINO UNO Specifications Built-in led- It is by default connected in the breadboard to pin 13. Whenever pin 13 goes high led will turn on and vice versa. Power led- It indicates that your Arduino board is receiving power Atmega328 microcontroller- It is the main chip it controls all the main functions Analog inputs-(6) A0 to A5 to connect analog sensors on this pin. Power pins-To power any components using this GND and 5v pins-use this pins to provide +5V power and ground to your circuits Power DC Jack/power connector-This is how u power your Arduino when it's not plugged into a USB port for power can accept up to 12V TX and RX (Receive and Transmit) LEDs-This LEDs indicates communication between your Arduino and your computer. You can expect them to flicker rapidly during sketch upload as well as during serial communication. USB Jack- It is used for powering your Arduino Uno through which uploading your sketches to Arduino and for communicating with your computer Reset button-Resets the Atmega microcontroller but it won't erase the code which is already present Page 11 of 26 2.4 ATMEGA328p MICROCONTROLLER The ATmega328P microcontroller plays a central role in many Arduino boards, serving as the brain or main processing unit. Here's an overview of the role and significance of the ATmega328P in the Arduino ecosystem Main ProcessorThe ATmega328P is the primary microcontroller used on several Arduino boards, including the popular Arduino Uno. It serves as the main processing unit responsible for executing the program (sketch) uploaded to the Arduino. Flash Memory ATmega328P contains Flash memory where the Arduino sketch (program) is stored. The Flash The memory is non-volatile, meaning the program remains in memory even when power is turned off. RAM (Random Access Memory) The microcontroller has a certain amount of RAM for temporary data storage during program execution. This includes variables, function call stacks, and other runtime data. Clock Speed: The ATmega328P typically runs at a clock speed of 16 MHz on most Arduino boards. The clock speed determines how fast the microcontroller can execute instructions. Digital and Analog I/O Pins: The microcontroller has a number of digital and analog input/output pins that are accessible through the headers on the Arduino board. These pins allow interfacing with external sensors, actuators, and other devices. GPIO (General-Purpose Input/Output): The ATmega328P supports general-purpose I/O, allowing you to configure its pins as either inputs or outputs, and then read digital or analog signals. PWM (Pulse Width Modulation): The microcontroller supports PWM, which is useful for controlling the intensity of LEDs, the speed of motors, and other applications where a variable output is required. Arduino IDE Compatibility: The ATmega328P is well-supported by the Arduino Integrated Development Environment (IDE). Arduino boards with the ATmega328P can be programmed using the Arduino programming language, which is a simplified version of C/C++. The ATmega328P's combination of features, ease of use, and cost-effectiveness makes it a popular choice for many Arduino projects, ranging from simple LED blinking experiments to more complex robotics and IoT applications. Page 12 of 26 2.5 Resistor A resistor is a passive two-terminal electrical component that implements electrical resistance as a circuit element. Resistors act to reduce current flow, and, at the same time, act to lower voltage levels within circuits. In electronic circuits, resistors are used to limit current flow, adjust signal levels, bias active elements, and terminate transmission lines among other uses. 2.4 Resistor and LED 2.6 LED The LED is the abbreviation of light emitting diode. It is usually made of gallium arsenide, gallium phosphide semiconductor materials. The LED has two electrodes, a positive electrode and a negative electrode, it will light only when a forward current passes, and it can be red, blue, green or yellow light, etc. The color of light depends on the materials it was made. In general, the drive current for LED is 5-20mA. Therefore, in reality it usually needs an extra resistor for current limitation so as to protect the LED. 2.7 Jumper Wires Jumper wires are short wires with connectors at each end, typically used to create temporary connections between points on a breadboard, circuit board, or other electronic components. The connectors are often referred to as "male" connectors, and they come in various types, such as pins or tips that can be easily inserted into sockets or headers. When Page 13 of 26 both ends of the jumper wire have the same type of connector (male-to-male), they are suitable for connecting two points that have matching female connectors. 2.8 USB A USB (Universal Serial Bus) cable is a common type of cable that is used to connect various devices to a computer or other host devices. USB cables are widely used for data transfer, device charging, power supply and connecting peripheral Different Types of Gates Description X Y Z 0 0 0 0 1 0 1 0 0 1 1 1 2.5 PIN diagram of 7408 IC and its truth table The AND gate output is at logic 1 when and only when all its inputs are at logic1, otherwise the output is at logic 0. X Y Z 0 0 1 0 1 1 1 0 1 1 1 0 2.6 PIN diagram of 7400 IC and its truth table The NAND gate output is at logic 0 when, and only when all its inputs are logic 1, otherwise the output is at logic 1. Page 14 of 26 OR GATE: (PIN Configuration Diagram) IC 74LS32 X Y Z 0 0 0 0 1 1 1 0 1 1 1 1 2.8 PIN diagram of 7432 IC and its truth table The OR gate output is at logic 1 when one or more of its inputs are at logic 1, otherwise the output is at logic1. X Z 0 1 1 0 2.9 PIN diagram of 7404 IC and its truth table The NOT gate output is just the complement of input given. X Y Z 0 0 0 0 1 1 1 0 1 1 1 0 2.10 PIN diagram of 7486 IC and its truth table The XOR gate output is at logic 1 when one and only one of its inuts is at logic 1. Otherwise the output is logic Page 15 of 26 CHAPTER 3 DESIGN AND DEVELOPMENT This chapter explains how this project will be implemented. It included each process from the beginning until the end of this project. Each process and method of how software design and development will be performed in this project is explained in detail. 3.1 Hardware Implementation In this section, we have explained the overall circuit connection for the logical IC functional tester and showed all schematic diagrams of the IC tester. 3.1.1 Block diagram of project Here block diagram actually shows the structural design circuit of the ARDUINO-based IC tester that we have applied in our project. In our project, we mainly used three components which are already shown in the block diagram. The components are ARDUINO, and the Breadboard is having connections of ICs and LEDs. In this project, ARDUINO is interacting with Arduino IDE and Breadboard. 2.11 Block diagram of IC tester. 3.1.2 ARDUINO AND LED: 5 LEDs are connected with registers in a series combination on a breadboard. This circuit is then connected to the GND or ground socket of Arduino using a jumper wire. Positive pins of LEDs are connected with Digital pins 4,5,6,7,8 respectively. Each LED represents a certain IC (logic gate). The Arduino after determining the unknown IC communicates with the LED to turn on the corresponding LED. Page 16 of 26 3.1.3 ARDUINO AND IC: The ground pin of the IC is connected to the ground socket of Arduino. The VCC pin is connected to a 5V socket. The 8th pin is the output pin of the IC. It is connected to the 3rd digital pin of Arduino 9th and 10th pins are input pins for the IC they are connected to the D1 and D2 of Arduino. 3.1.4 Working Methodology: 1.Arduino sends 00,01,10,11 as 4 inputs through jumper wire as input to the IC(9th and 10th pin of the IC). 2. The IC then sends back 4 outputs, one each for the 4 inputs, through the 8th pin of Arduino which is connected to D3 of Arduino. 3. This output is stored in a, b, c, d variables. 4. The program then compares these variables with known outputs of IC truth tables. 5. The Arduino then lights up the LED representing that IC/logic gate. For example AND gate (7408) truth table outputs will always be 0,0,0,1. If the value of a, b, c, d matches with 0,0,0,1 LED connected to D4 would light up. Page 17 of 26 3.1.5 Full Schematic Diagram of IC Tester Here we have drawn a full schematic diagram of the IC tester. In this diagram, we showed all connections of LED and ICs interacting with Breadboard and Breadboard with Arduino. The output of the IC tester will be displayed through LEDs. 2.12 Schematic diagram of IC tester Page 18 of 26 3.2 Software Implementation After doing all connections of Arduino Uno with the breadboard we connect Arduino UNO using a USB cable to the power supply source which is a laptop as we are also to able compile and upload our code in Arduino IDE through this device. 3.2.1 Arduino IDE Arduino IDE (Integrated Development Environment) is an open-source software application that provides a platform for writing, compiling, and uploading code to Arduino boards. Arduino is an open-source electronics platform based on easy-to-use hardware and software. The Arduino IDE plays a significant role in real-life applications-based projects. Once the primary code has been written on the IDE platform, which is often referred to as a sketch, the Hex File will be sent to and uploaded to the controller on the board. The two most important components of the IDE environment are an editor and a compiler. Writing the required code is done with an editor, while creating and uploading codes to a specific Arduino module is done by using your Compiler. In this environment, both C and C++ languages are supported. 3.2.2 Operation The IC tester has developed such a way so that it can be user-friendly. Its every operation is understandable to the users. Users will be able to check different types of IC manually by using this IC tester. Mainly IC tester depends on the program besides the hardware implementation. Arduino is playing a very important role in this project. Because it is interacting with both IC and LEDs. The result of the IC tester will be displayed through LEDs. In this project implementation, we have used the concept of C programming language to develop the program in Arduino. After the hardware implementation, we need to upload the corresponding code of the project. If we want to upload the program, first of all, we need to connect the IC tester to the PC by using a USB cable of Arduino. Then we can upload the program easily into the IC tester by using the uploading option of Arduino. Page 19 of 26 3.2.3 ALGORITHM OF CODE FOR DIGITAL IC TESTER 1. Variable Declaration: - Declare integer variables `a`, `b`, `c`, and `d` to represent the inputs. - Declare integer variables for pin assignments: `andLED`, `nandLED`, `orLED`, `notLED`, and `xorLED`. 2. Pin Configuration: - Set the pin modes for digital pins 1, 2, and 3 as OUTPUT. - Set the pin modes for LEDs (`andLED`, `nandLED`, `orLED`, `notLED`, `xorLED`) as OUTPUT. 3. Loop Setup: - Inside the `setup` function, configure the pins for input and output. 4. Main Loop (`loop` function): - Call functions `part1()`, `part2()`, `part3()`, and `part4()` to read input values for different combinations of inputs. - Check the input values (`a`, `b`, `c`, `d`) and light up the corresponding LED based on different logic gate conditions. 5. Part Functions: - `part1()`, `part2()`, `part3()`, `part4()`: These functions set the inputs `a`, `b`, `c`, and `d` based on different combinations of digital write to pins 1 and 2 and read the input from pin 3. 6. LED Conditions: - If `a == 0 && b == 0 && c == 0 && d == 1`, light up the AND LED. - If `a == 1 && b == 1 && c == 1 && d == 0`, light up the NAND LED. - If `a == 0 && b == 1 && c == 1 && d == 1`, light up the OR LED. - If `a == 1 && b == 0 && c == 1 && d == 0`, light up the NOT LED. - If `a == 0 && b == 1 && c == 1 && d == 0`, light up the XOR LED. This algorithm describes the logic gate simulation code. The Arduino reads input values from different combinations of pins 1 and 2, sets the input variables (`a`, `b`, `c`, `d`), and then checks these variables to determine which LED should be lit based on various logic gate conditions. Page 20 of 26 3.2.4 FLOWCHART OF IC TESTER PROGRAM Page 21 of 26 CHAPTER 4 PERFORMANCE ANALYSIS All the apparatus of the system are connected according to the circuit diagram. The system has been tested with different types of IC. IC tester is working correctly according to the logic designed within a second. Also, the IC tester is able to check unknown limited ICs according to design. The LEDs are showing the result according to the ICs. The detailed implementation result of the system is described below: 4.1 AND gate of 7408 IC The unknown IC detected here is of the AND gate and it can be seen that the blue jumper wire is connected to digital pin no.4 which is in series with LED which confirms the detected gate. We have checked the 7408 IC which contain 4 two input AND gate. IC tester has checked its 4 internal gates and identified that all gates are okay. As a result, the LED is blinking. That means whole IC is okay 2.13 LED Blinking of AND gate 4.2 NAND gate of 7400 IC The unknown IC detected here is of NAND gate and LED blinking verifies that the IC is in working condition. It can be seen that the brown jumper wire is connected to digital pin no.5 which is in series with LED which confirms the detected gate. Page 22 of 26 2.14 LED Blinking of NAND gate 4.3 OR GATE OF 7432 IC The unknown IC detected here is of OR gate and IC tester is working properly for 7432 IC. IC tester have checked the all-internal gates of IC and identified what kind of gates has been used to design its schematic diagram. Then it is showing the result using LEDs according to the program. 2.15 LED Blinking of OR gate Page 23 of 26 4.4 NOT GATE OF 7404 IC The unknown IC detected here is of NOT gate and the IC is in working condition. It can be seen that the white jumper wire is connected to digital pin no.7 which is in series with LED which confirms the detected gate. 2.16 LED Blinking of NOT gate 4.5 X-OR gate of 7486 IC Similarly, we have checked another IC which is the X-OR gate. IC tester also checked its internal 4 gates and identified that all gates are okay for that IC. It can be seen that the green jumper wire is connected to digital pin no.8 which is in series with LED which confirms the detected gate 2.17 LED Blinking of X-OR gate Page 24 of 26 CHAPTER 5 CONCLUSION The project’s aim and the main objectives have been accomplished properly. The Logic IC Functional tester is basically an Arduino-based project and gives a response to the user within a few seconds. The Logic IC Functional tester is able to test the basic gate (74LS08 AND, 74LS32 OR, 74LS00 NAND, 74LS86 XOR, 74LS04 NOT) of 14 pins. There are many ways to build an IC tester. But we have made the IC tester in such a way that it can be user-friendly. Users just need to set up IC on the breadboard properly with the correct connections of jumper wires. After that User will get the desired result. There have been lots of projects on the IC tester but most of them are microcontroller based. Arduino-based IC testers are rare. Some Arduino-based IC testers are also available but those are not so user-friendly and the cost is too high with comparatively other projects. We have used fewer components to accomplish our project. That’s why our IC tester is looking very simple but effective 5.1 Challenges Users can test only 5 ICs by using the IC tester which has been made by us. That’s the big limitation of that project. But there is a valid reason behind that limitation. Internal schematic diagrams of 74LS08 AND, 74LS32 OR, 74LS00 NAND, 74LS86 XOR, and 74LS04 NOT are the same. But our main target was IC tester could check at least 8 ICs. The Internal schematic diagram of the rest 4 ICs is not the same as 74LS08 AND. As a result, the user will not be able to check other ICs without valid ICs for that project. The easiest way to fix that problem is to modify the code. If a user can modify the code, then he or she will be able to check other ICs like X-NOR and NOR. The main challenge of the project is how it can be made more effective for the user to check all of the 8 ICs without modifying the code. For this, we need to do more research on that project and find out a very good algorithm to fix this problem. 5.2 Future Recommendations This project has large potential to be improved in a number of ways. This system can be further developed for many other market ICs other than 74 series IC (such as counters, shift registers, comparators etc.) used here as it is reconfigurable. The developed IC tester is useful for educational or academic purposes, but further advanced development can make it efficient for industrial use. Also, we can modify the program to check the specific gate that is damaged in an IC. Page 25 of 26 REFERENCES 1. Mirza Shoaib Ahmed, Iqbal Muhammad Umair, Kashif Mehboob “MICROCONTROLLER BASED IC TESTER.”, Engineering Sciences and Technology, SCONEST, August 2005. 2. DIGITAL IC TESTER by amit r naikwadehttps://www.scribd.com/document/105304234/Ic-Tester-Report 3. Yasir Hashim, Marwa Awni, Abdullah Mufeed Computer Engineering Department, Faculty of Engineering, Tishk International University, Erbil, Iraqhttps://www.researchgate.net/publication/374352411_Arduino_based_74series_integrated_circuits_testing_system_at_gate_level 4. Design and Development of Arduino Based IC Tester by Md. Tanvir Nurhttp://dspace.ewubd.edu:8080/bitstream/handle/2525/3049/Md._Tanvir_Nur.p df?sequence=1&isAllowed=y 5. Digital IC Tester using Arduino-Prof. D. G. Kanade, Nikhil Zambare and Krishna Rathode, Department of Electronics, Vishwakarma Institute of Technology, Punehttp://www.ijtrd.com/papers/IJTRD20262.pdf 6. LOGIC INTEGRATED CIRCUIT(IC) FUNCTIONAL TESTER by GOH SIANG WEI, Faculty of Engineering and Science Universiti Tunku Abdul Rahmanhttp://eprints.utar.edu.my/89/1/EE-2011-0706544-1.pdf 7. IC Tester (Logic Gates)-https://www.hackster.io/taisir-jibian-rahi/ic-tester-logicgates-268b02 Page 26 of 26