0x01:前沿:
本文档是进行SMS_Send的功能,全部为命令行。
0x02:环境
- ubuntu-14.04.4-desktop-amd64-LTS
PS:如果在ubuntu-16.04-desktop-i386会运行./build.sh SDR1报错,后续会研究一下原因。
0x03:代码构建
1:编译GNU ARM toolchain
####官方文档:http://osmocom.org/projects/baseband/wiki/GnuArmToolchain
sudo apt-get install build-essential libgmp3-dev libmpfr-dev
libx11-6 libx11-dev texinfo flex bison libncurses5 libncurses5-dbg
libncurses5-dev libncursesw5 libncursesw5-dbg libncursesw5-dev zlibc
zlib1g-dev libmpfr4 libmpc-dev libusb-dev libusb-0.1-4 libpcsclite1
libccid pcscd libfftw3-dev libfftw3-doc libtool shtool autoconf
automake git-core pkg-config make gcc libpcsclite-dev libtalloc-dev
git wireshark -y
mkdir armtoolchain
cd armtoolchain/
wget http://bb.osmocom.org/trac/raw-attachment/wiki/GnuArmToolchain/gnu-arm-build.3.sh
mkdir build install src
cd src
wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2
wget http://ftp.gnu.org/gnu/binutils/binutils-2.21.1a.tar.bz2
wget ftp://sources.redhat.com/pub/newlib/newlib-1.19.0.tar.gz
cd ..
chmod +x gnu-arm-build.3.sh
./gnu-arm-build.3.sh
echo "export PATH=\$PATH:/home/ubuntu/osmocom/armtoolchain/install/bin">>/home/wenzhang/.bashrc
source /home/ubuntu/.bashrc
2:下面进行osmocom-bb的交叉编译
cd ~/osmocom/
git clone git://git.osmocom.org/libosmocore.git
cd libosmocore/
autoreconf -i
./configure
make
sudo make install
cd ~/osmocom/
git clone git://git.osmocom.org/libosmo-dsp.git
cd ~/osmocom/libosmo-dsp/
autoreconf -i
./configure
make
sudo make install
sudo ldconfig
mkdir ~/osmocom/osmocom_send
cd ~/osmocom/osmocom_send/
git clone git://git.osmocom.org/osmocom-bb.git
cd ~/osmocom/osmocom_send/osmocom-bb/
git sylvain/testing
osmocom-bb/src/target/firmwire/Makefile
CFLAGS +=-DCONFIG_TX_ENABLE
cd ~/osmocom/osmocom_send/osmocom-bb/src
make HOST_layer23_CONFARGS=--enable-transceiver
3:OpenBTS 5.0的环境搭建
####OpenBTS的下载,一定要使用root。
官方文档:https://github.com/RangeNetworks/dev.git
#####升级Git 确定Git版本要>>= 1.8.2
sudo apt-get install software-properties-common python-software-properties -y
sudo add-apt-repository ppa:git-core/ppa
(press enter to continue)
sudo apt-get update
sudo apt-get install git -y
+++++git version >= 1.8.2_+++++
#####工具下载
su
cd /opt
git clone https://github.com/RangeNetworks/dev.git
####现在,下载所有的部件通过简单的运行./clone.sh
cd /opt/dev/
./clone.sh
####组建之前,应该选择想使用./switchto.sh编译哪个分支或标记。这里使用的5.0
./switchto.sh 5.0
####在进行下面操作时,先声明,由于编译./switchto.sh需要下载google的文件,所以这里提前下载到本地,然后修改文档内容
链接:http://pan.baidu.com/s/1pL70CzT 密码:d3t6
将coredumper-1.2.1.tar放在/opt/dev/libcoredumper
将asterisk-11.7.0.tar放在/opt/dev/asterisk
gedit /opt/dev/build.sh
#installIfMissing libzmq5
#rm -rf range-asterisk* asterisk-*
gedit /opt/dev/asterisk/build.sh
#if [ ! -f asterisk-$VERSION.tar.gz ]
#then
# sayAndDo wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk- $VERSION.tar.gz
#fi
#if [ -d asterisk-$VERSION ]
#then
# sayAndDo rm -rf asterisk-$VERSION
#fi
gedit /opt/dev/libcoredumper/build.sh
#if [ ! -f coredumper-$VERSION.tar.gz ]
#then
# sayAndDo wget http://google-coredumper.googlecode.com/files/coredumper-$VERSION.tar.gz
#fi
#if [ -d coredumper-$VERSION ]
#then
# sayAndDo rm -rf coredumper-$VERSION
#fi
####组建
cd /opt/dev/liba53
sudo make install
cd /opt/dev
./build.sh SDR1
####安装
####编译包现在正处于一个新的命名的目录BUILD—sometimestamp
cd ~/opt/dev/BUILDS/TEMPTIME
sudo dpkg -i *.deb
sudo apt-get install -f
sudo dpkg -i *.deb
4:Running
####启动所必须的服务,
sudo start asterisk
sudo start sipauthserve
sudo start smqueue
sudo start openbts
osmocom:
cd /home/wenzhang/osmocom/osmocom_send/osmocom-bb/src/host/osmocon/
sudo ./osmocon -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/trx.compalram.bin
transceiver:
cd ~/osmocom/osmocom_send/osmocom-bb/src/host/layer23/src/transceiver/
sudo ./transceiver 80
OpenBTS:
cd /opt/dev/openbts/apps
sudo ./OpenBTSCLI
####在OpenBTS命令行下修改OpenBTS的配置文件,重点修改下面5个
devconfig GSM.Radio.NeedBSIC 1
config GSM.RACH.MaxRetrans 3
config GSM.RACH.TxInteger 8
config GSM.Radio.C0 ARFCN
config Control.LUR.OpenRegistration .*
#config Control.LUR.OpenRegistration.Message Fuck you you're a sucker
#config Control.LUR.OpenRegistration.ShortCode 10086
####配置完成后,需要重新启动一下各个服务
sudo restart asterisk
sudo restart sipauthserve
sudo restart smqueue
sudo restart openbts
0x04:运行:
####现在就可以手机发短信了
OpenBTSCLI
$ tmsis ---查看当前连入基站的手机IMIE号
OpenBTSCLI
$ sendsms YOUTMSIS number messege
———————————-Enjoy————————————————–
必须出现如图2的内容才说明成功的开启,出现图1就是没成功开始,解决办法,多次的调试sudo ./transceiver * // 换一下*.直到出现图2的情景