When we started thinking about what we would need outside of the Beaglebone to make a phone, we thought of three main components: battery power, a screen, and network connectivity. Having to hook up the beagle bone to a computer or the wall just to power it would make it no better than a corded phone, and the same applies for having to connect it to a computer to see the phone GUI. Perhaps most important, is that without being able to connect to a cellular network, no calls can be made and no texts sent.
The easiest problem to fix was the screen, we bought a touchscreen made for the BeagleBone Black, it came in the cape form factor and was for the most part plug and play. The touchscreen ended up being less sensitive than we had hoped for but we were still able to use it for our application (with bigger buttons).
To connect to the network, we purchased a pay as you go SIM card from AT&T that we can interface with a SIM chip and antennae to get a signal. For development, we purchased a SIM5100B chip and module from SparkFun electronics. The module allowed us to talk with the chip and use the built in headers to connect to the BeagleBone, we used the sparkfun protocape to access the pins of the Beaglebone that weren’t being used for the LCD. Having COTS products allowed to gain some development and debug time on the software component while we waited for later hardware revisions to arrive.
The battery ended up being the biggest hardware challenge. Luckily, Sean had an extra Li-Po laying around that we were able to use that had enough power for both the SIM module, which could pull up to 2A, and the LCD screen, which could also pull up to 2A. The Li-Po, at 7.4V, 2S, and 5000mAh, was plenty to power the phone, but it had to be regulated down using battery eliminator chips which could step 12V down to 5V at up to 3A each. These chips are popular in the robotics and RC market and can be found here.