Custom Open Source Phone: Parts are in!

Ever disappointed that your phone is missing a certain feature? Wish you knew exactly what your phone was doing ("WHY ARE YOU SO SLOW RIGHT NOW?"). I've felt those feelings, and that's why I've decided to try my hand at putting a phone together on my own. Since this can be a pretty big project, I'm going to start as simple as I can, and start expanding from an established base line. I found a really good place to start is at Adafruit Industries, where they have a 3G GSM modem on a development board with a few on board peripherals (battery charging circuits, voltage level shifting, etc.). Here are the parts I've ordered so far:

Phone Parts List
Description Purchased From Link Cost
Adafruit FONA 3G Cellular Breakout Adafruit Industries https://www.adafruit.com/products/3147 $79.95
Slim Sticker-type GSM/Cellular Quad-Band Antenna Adafruit Industries https://www.adafruit.com/products/1991 $2.95
Lithium Ion Battery - 3.7v 2000mAh Adafruit Industries https://www.adafruit.com/products/2011 $12.50
Adafruit 1.44" Color TFT LCD Display with MicroSD Card breakout Adafruit Industries https://www.adafruit.com/products/2088 $14.59
20x Aluminum Housing Stereo 46dB Full-Directional Electret Microphone Amazon https://www.amazon.com/Aluminum-Housing-Full-Directional-Electret... $6.70
4Pcs 0.5W 8 Ohm 28mm Dia Mini Metal Inside Magnet Music Player Speaker Amazon https://www.amazon.com/Metal-Inside-Magnet-Player-Speaker... $9.67

 

Luckily, I had a few of these parts sitting around. I have not chosen how to handle the inputs yet (Buttons? Voice? Potentiometers? IR distance sensors?), but it's really exciting to think about all of the possibilities! I did not go with a touch screen, because I really don't want to take that step yet. Granted, it will be just as easy to interface with a bigger screen as it would to interface with this tiny 128x128 screen. But I like the cute little thing, so I went with it!

All of the parts accumulated so far
All of the parts accumulated so far

I've managed to do a hardware test of the module connected directly to a computer (via USB) and send and receive phone calls, as well as send out texts all via a terminal interface (PuTTY). The next step is for me to choose a microcontroller for this project. Should I go as simple as possible? Microchip, Atmel, TI, or something else? It's very tempting to go with an Arduino compatible controller just because of all of the similar projects out there to draw inspiration (and code) from.

Here are some features I think would be really cool to implement or are already inherent in the system:

  • Disconnectable antenna: When all else fails, strap on a large active antenna! I think it will be a lot of fun to experiment with different types of home made antennas, and to see how they turn out (imagine trying to hook a clothes hanger to your cell phone when you're in dire need of service in the middle of the Upper Peninsula of Michigan)
  • (Almost) Fully Modular: Broke your screen? No problem, just crack open the case, and put a new screen on; plug and play! Same with batteries, speakers, anything!
  • 3D printed case: Of course this phone is going to be packaged ina 3D printable case, and it's going to be awesome!
  • Code-to-ring: If you're like me, your phone is always on silent. This poses a problem when someone trys to get ahold of you for something important. Now they just have to text a secret code that only they know, and your phone silence is bypassed. (My parents are going to love that feature)
  • Fully open source: All of the code, CAD files, and board designs will be hosted on Voltfolio, so anyone can follow along with my progress, and potentially help contribute!