Home > Blog > Arduino Phone

Arduino Phone

Summary of Arduino Phone


This article details the construction of a DIY mobile phone called ArduinoPhone V2.0, combining an Arduino Uno with various shield modules and a custom 3D-printed shell. The project covers hardware assembly, including power management circuits, and software implementation for functions like calling, messaging, and touch-based UI navigation via gesture controls.

Parts used in the Arduino Phone:

  • Arduino Uno
  • TFT Touch Shield
  • GPRS Shield
  • RTC module
  • Custom ArduinoPhone Charge Circuit or Lipo Rider
  • Li-po battery
  • 3D printed shell

Note that ArduinoPhone V2.0 had been published at Jan 26, 2016, click to view more details.

Combining Arduino and other shield modules, we make a mobile phone named Arduino Phone. Meanwhile, we printed a shell for it with the 3D printer. Although it’s not such fine as you think, even a little bit clunky, it’s still very cool. That is the point this is a cell phone made by ourselves.

While, we can’t install Arduino Phone Apps limited by Arduino. So, if you want to play Angry Birds, then you need to do some big modifications on Arduino Phone. 🙂

Next, I will make a detailed explanation about the steps of making an Arduino Phone, including the hardware connection and software implementation.

Now, let’s begin.

Step 1: Preparing Stuffs

At the very beginning, we’d better prepare the materials. Of course, most of these modules can be purchased directly, such as Arduino Uno, TFT Touch Shield and GPRS Shield.

Owning to we want to put our Arduino Phone into a 3D printed shell, and in order to adapt the size of this shell, we have to DIY a charging and discharging PCB board (including two parts) and an expansion PCB board which can connect to the headphone jack of GPRS Shield.

If you want to make a shell by yourself, you can directly take Lipo Rider, or something like this, as the charge sheet. Thus, you do not need to DIY PCB board in order to meet the size of the shell.
What you need:

1.Arduino Uno

2.TFT Touch Shield

3.GPRS Shield

4.RTC

5.Custom ArduinoPhone Charge Circuit (or Lipo Rider)

6.Li-po battery

7.A shell (with 3D printer)

All components at here.

Step 2: Hardware Connection

After preparing the materials, we need to assemble the above electronic components to lay the foundation functional part of Arduino Phone.

1.Plug GPRS Shield into Arduino UNI, then, connect the TFT Touch Shield to GPRS.
2.Connect RTC module to Arduino UNO.
2.Plug into the power module, and connect your earphone to the headphone jack on GPRS.

Well, if you choose to use Lipo Rider, you can refer to this sort of connection.

Ok, now, we are going to get into the software program part.

Step 3: Programming and Test

This Arduino Phone contains the following main functions.

1. receive & send message, letter input

2. dial & answer calls

3. real time clock display

4. A convenient and concise UI, You can switch function by sliding your finger on the screen. A standard 12 key input method for inputting message.

You can get all of the Arduino Phone code from the Github, including the dependent libraries.

1. When you get to the github page, find a Download ZIP button, click to download the code.

2. The code you downloaded is not an Arduino library, it’s a sketchbook, which is include all the library the project need.

3. Unzip the file you had downloaded from github, you will get a folder named ArduinoPhone-master.

4. Open your Arduino IDE, click File > Preferences > Sketchbook Location, browse to the folder we had mentioned above – ArduinoPhone-master. Then click OK to save it.

5. Close and re-open Arduino IDE, click File > Sketchbook > PhoneCode, then the main code of Arduino Phone is open.

6. Choose the right board and port to upload the code.

Refer to the image above.
However, a much more difficult problem is that this Arduino Phone hasn’t physical buttons
(except the Reset button switch and GPRS). So, how to manage UI will be a challenging task.

Fortunately, TFT Touch not only provides a display function, also a touch screen function.
Thus, we can manage the UI through gesture, like left-swipe and right-swipe.

It this step, we will show how ArduinoPhone works. And the picture indicates the workflow of ArduinoPhone.

Finally, opening ArduinoPhone.ino with Arduino IDE, then uplaod source code to ArduinoPhone.

Read more: ArduinoPhone

Quick Solutions to Questions related to Arduino Phone:

  • Can I install standard Android apps on the Arduino Phone?
    No, you cannot install Arduino Phone Apps due to limitations imposed by the Arduino platform.
  • What is the best way to manage the user interface without physical buttons?
    You can manage the UI through gestures on the TFT Touch screen, such as left-swipe and right-swipe.
  • How do I obtain the source code for the project?
    You can download the code as a ZIP file from the Github page provided in the article.
  • Does the project require a custom charging PCB board?
    A custom charge circuit is needed if using a specific 3D printed shell size, but you can use a Lipo Rider instead to avoid this step.
  • What main functions does the Arduino Phone perform?
    The phone supports sending and receiving messages, dialing and answering calls, displaying real-time clock, and touch-based navigation.
  • How should I configure the Arduino IDE to run the project code?
    You must set the Sketchbook Location preference to the unzipped ArduinoPhone-master folder before opening the PhoneCode sketch.
  • Which components connect directly to the GPRS Shield?
    The TFT Touch Shield connects to the GPRS Shield, which also provides the headphone jack for earphones.

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter
Scroll to Top