For my Cellular Communications course, we were asked to look into some aspect of Cellular technology (hooray for open-ended grad-level projects). One of my friends and I decided to team up to attack OpenBTS. And by “attack,” I mean figure out how the hell it works.
OpenBTS is an open-source base station that runs on top of Linux. It provides a cellular access point that requires the USRP to enable the air (“Um”) interface. Ideally, this can be used to route calls from your cell phone over IP (i.e. providing a VoIP service) to anywhere else. However, this requires additional software like Asterisk. I wanted to just get OpenBTS to accept an incoming call and connect it to Asterisk’s echo server, which would enable me to do further research using HMMs and pattern recognition.
Bryant Ferguson (email@example.com), on the other hand, took the software one step further and created an end-to-end system that allowed phone calls to other GSM cell phones and even landline phones. This was accomplished using OpenBTS and Asterisk along with Google Voice. He has created a gorgeous tutorial for anyone who’s interested on getting OpenBTS and Asterisk up and running on their Linux computer and USRP. Check it out here: