Overview

This is my very first project. The idea came from an article that reported some students at the Massachusetts Institute of Technology (MIT) had built a fully-functional do-it-yourself (DIY) feature-phone. Cool enough? My first thought was: awesome, I NEED it! So I decided to build something like this. Here is the result.

myphone v1 complete off myphone v1 complete on myphone v1 complete standby off hook myphone v1 calling

There are two versions of this device. The v1.0 which can be seen above has no case, the keyboard is on the main PCB, and this version has no battery. However this version is fully-functional, it has some minor problems: the keyboard handling is difficult (there are no button-labels and the level of the keys are much lower than the top of the phone), and you cannot carry a big power supply with you all the time... So shortly I had finished the v1.0 version, I decided to make a new one.

Functions

The module can connect to the GSM network, and the user can launch and receive calls. It has a memory for storing contacts and numbers which can be downloaded into the device from a computer through USB port. On the display the user can see the actual state of the phone: service name, signal strength, date & time and battery info.

  • The myPhone can launch calls
  • The myPhone can receive & answer (or deny) incoming calls
  • Phone-book: there is an EEPROM for storing contacts
  • The phone-book is downloadable from a computer via USB port
  • Power supply: 12V external
  • Step-down converter to produce 5V for the components
  • 4x16 LCD display with backlit & adjustable contrast
  • 3.5mm jack connector for loud speaker
  • 3.5mm jack connector for microphone

Components

  • Atmel AtMega128 microcontroller with 12.288MHz clock frequency
  • J-TAG interface for programming & debugging
  • HUAWEI EM310 GSM module with micro-SIM card holder & external aerial
  • DEM 16481 SYH-LY 4x16 LCD display with backlit & adjustable contrast (with HD44780 compatible controller)
  • 512Kbit SPI EEPROM for storing the contacts and numbers (max. ~1000 contacts)
  • LM2574 step-down converter to produce 5V
  • LP2985 step-down converter to produce 3.3V needed by the GSM module for UART communication
  • 74LVC1G07 non-inverting buffer needed by the GSM modue for UART communication
  • FT232RL UART to USB converter for the USB communication with mini-USB port
  • MCP601 pre-amplifier for the microphone and the loud speaker
  • LM4861 1W audio power amplifier with shutdown mode for the loud speaker
  • MCP130 reset IC
  • LEDs to indicate the status of the device
  • Two 3.5mm jack connector for loud speaker & microphone

Schematic

Note: You can download it as a PDF!

myPhone v1 schematic

Software

I wrote the software in C language and used a JTAGICE mkII for programming & debugging. You can find the source files below or you can check out the source at GitHub.

GitHub repository

Block diagram

Note: You can download the block diagram as a PDF!

myPhone v1 uml block diagram

Video

Here is a video about the myPhone which demonstrates the major functions & calling.
I would like to thank my sister who helped me in the filming.