Arduino Based Electronic Queuing System




About: A place for DIY projects

This is a Queuing System project requested by a clinic asistant which allows the doctor enter number from a keyboard and display it on a 32x16 LED panel.

This project uses two Arduino, the first Arduino functioned as a SENDER which included a PS2 keyboard and a mini LCD for number input. While the other Arduino is functioned as a RECEIVER which will trigger a "ding-dong" tone and display number on the 32x16 LED panel.

The SENDER uses a PS2 keyboard instead of USB keyboard, USB keyboard will cost higher since it require a USB host shield. You should get a Matrix keypad (please use google translate) in case the PS2 keyboard is not available in the market.

These two Arduino (SENDER & RECEIVER) is connected via a CAT5e network cable, the CAT5e cable provide power to the RECEIVER and also transfer data between two Arduino.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: What You Will Learn From This Project

  1. Built your own DIY Arduino without using the Arduino development board
  2. Using 8MHz internal oscillatior & eliminated the uses of 16 MHz crystal
  3. Serial communication between two Arduino
  4. Connect a PS2 keyboard for user input
  5. Control a Hitachi HD44780 compatible LCD
  6. Trigger a ding-dong reminder tone
  7. Driving a 32x16 Dot Matrix Display LED panel
  8. Monitor serial data while blink the Dot Matrix LED without delay

Step 2: Materials for SENDER

  1. ATMEGA328 microcontroller
  2. PS2 Keyboard
  3. 10K resistor
  4. 0.1uF capacitor
  5. 100uF capacitor
  6. Printed circuit board
  7. 1602 LCD screen
  8. 2.2K resistor or resistor 6.8 K
  9. 5V 2A power adapter
  10. RS232 serial port header (DB9 male and female each one)
  11. Some wire

Step 3: Materials for RECEIVER

  1. ATMEGA328
  2. Printed circuit board
  3. 10K resistor
  4. 0.1uF capacitor
  5. 100uF capacitor
  6. 32x16 Dot Matrix LED Display panel
  7. RS232 serial port header (DB9 male and female each one)
  8. 470 ohm resistors
  9. 8021-2 ding-dong doorbell IC
  10. 2W or 3W amplifier board + Mini SpeakerSome wire

Step 4: Arduino Software Libraries

You must have the following software libraries install on your computer:

Freetronics dot matrix display library: Driving Freetronics 512 pixels (32 × 16 layout) matrix LED display

TimerOne Library: Use with Freetronics dot matrix display library to configure 16bits hardware timer

PS2 Keyboard Library: An Arduino library for PS2 keyboard

LCD Monitor Library: Arduino LiquidCrystal dirver based on the Hitachi HD44780

Step 5: Circuit Diagrams and Source Code Download

There are two folders (Queue_calling_system_Sender and Queue_calling_system_Receiver) inside the ZIP file, download and extract it to Arduino sketch folder. After that upload the Queue_calling_system_Sender.ino & Queue_calling_system_Receiver to the two Arduino.

Step 6: SENDER PCB Design

This is a homemade Arduino (DIY Arduino) , it uses the 8MHZ internal oscillator as the clock source and require very few components. Resistor R3 is used to control the contrast , its resistance can be varies from 2.2K ohms to 6.8K ohms, it is recommended to use an 10K adjustable resistor to test the contrast before selecting a resistor. I have 20 sets mini LCD screen, most of them can use the 2.2K ohm resistor for contrast control, however several of them have to use 6.8K ohm resistor.

R3, LED + and LED- is soldered directly to the PCB in order to reduce the wire connection beween the Arduino & mini LCD screen

Step 7: RECEIVER PCB Design

The RECEIVER also using an 8MHZ internal oscillator as the clock source, its design is very similar to SENDER with additional 470 ohm resistor and a 8021-2 ding-dong sound effect IC near to the pin 28 of ATMega328 .

The 8021-2 ding-dong sound effect IC is not able to drive a 3W speaker since its output signal is very weak, and therefore it must connected to a mini-amplifier. I will not talk much about 32x16 Dot Matrix Display panel, please visit here for more details.

Step 8: 8021-2 Ding-dong Sound Effect IC

The 8021-2 is a ding-dong sound effect generator IC produced by LSI CMOS technology. With built-in RC oscillator and digital envelope circuits, minimal external components are required.

Step 9: Keyboard Functions and Instructions

Step 10: More Photos

1 Person Made This Project!


  • Made with Math Contest

    Made with Math Contest
  • Multi-Discipline Contest

    Multi-Discipline Contest
  • Robotics Contest

    Robotics Contest

13 Discussions


6 weeks ago

Can I use any p10 16*32 led display for this project or freetronic display only?


Question 1 year ago

How add 3rd digits in p10 like 000
I make it its coool but I need 3 digits


2 years ago


smchingDiann LorraineT

Reply 2 years ago


3 years ago

Queue_calling_system_Sender:11: error: 'PS2Keyboard' does not name a type

Queue_calling_system_Sender.ino: In function 'void setup()':

Queue_calling_system_Sender:37: error: 'keyboard' was not declared in this scope

Queue_calling_system_Sender.ino: In function 'String getInput()':

Queue_calling_system_Sender:75: error: 'keyboard' was not declared in this scope

Queue_calling_system_Sender:78: error: 'PS2_ENTER' was not declared in this scope

Queue_calling_system_Sender:102: error: 'PS2_BACKSPACE' was not declared in this scope

where does the fault? //

1 reply

Reply 3 years ago

You need to install PS2Keyboard library


3 years ago

i am trying to make that with electronic laser system . so will turned you younger or not ?????????????????? any help please

1 reply

3 years ago

please call me at 626 766 2743


4 years ago

This is awesome! Nice idea, thanks for sharing :)


4 years ago on Introduction

Very nice Instructable. I like the way you have the two Arduinos talking communicating. Will you be posting And Instructable for the homemade Arduino?

1 reply