OpenBTS

Discussions related to embedded firmware, driver, and user mode application software development
dk5ras
Posts: 70
Joined: Fri Mar 01, 2013 3:23 am

Re: OpenBTS

Post by dk5ras »

Sounds promising. This is exactly what my hope was - integrating the thing into the official OpenBTS branch. A good way, and worth waiting a bit more :)

Ralph.
bnt2025
Posts: 33
Joined: Thu Jul 18, 2013 6:14 am

Re: OpenBTS

Post by bnt2025 »

does this also apply to OpenBSC and the other Osmocom software?
jynik
Posts: 455
Joined: Thu Jun 06, 2013 8:15 pm

Re: OpenBTS

Post by jynik »

bnt2025 wrote:does this also apply to OpenBSC and the other Osmocom software?
I believe the efforts right now are specifically focused on getting the bladeRF working with OpenBTS, evaluating the current state of things, and improving libbladeRF/FPGA/firmware to achieve the desired performance. Once things are working there, I'm sure some of the knowledge gained could be applied to getting bladeRF support going for similar projects.

Please feel free to help get the ball rolling in the meantime. I think it would be best to create a wiki page/new thread for focused OpenBSC discussions, rather than to continue to grow this thread. Certainly, it would be helpful to devs to have some ideas as to what changes may be needed in the future while still implementing and refactoring things now.

Personally, I'm not too familiar with OpenBSC, so I can't speak to what would have to be added to or changed in libbladeRF/FPGA/firmware to achieve bladeRF support.

I think some tasks that folks could help out on are:
  • Identifying and summarizing the interface by which the bladeRF would have to present itself. How does this interface map to the existing libbladeRF interface?
  • Identifying what the aformentioned interface requires that the current bladeRF support lacks? As Brian mentioned, metadata such as timestamps are being added to allow for integration of bladeRF support into OpenBTS.
  • Are there performance concerns? Do certain functions need to be implemented in the FPGA? (e.g., mod/demod, filters, etc.)
  • Writing code, of course!
Touching base with the developers of projects of interest to get their opinions on these is always helpful. Just remember, when looking to contribute bladeRF support to a project, you're a guest in someone else's home - always be courteous and follow their desired development workflow and community guidelines. :)

- Jon
bnt2025
Posts: 33
Joined: Thu Jul 18, 2013 6:14 am

Re: OpenBTS

Post by bnt2025 »

As per Jon's suggestion I have created a basic Wiki page about OpenBSC.

https://github.com/Nuand/bladeRF/wiki/OpenBSC

I hope you don't mind but I have copied Jon's suggestions as the basic tasks.
Please feel free to add anything. Adding more guides is the main thing at the moment.
OpenBSC is mainly written in C, unfortunately my experience is mainly in Java so I don't really have a start point.

Many thanks
robert.ghilduta
Posts: 156
Joined: Thu Feb 28, 2013 11:14 pm

Re: OpenBTS

Post by robert.ghilduta »

Hi everyone,
We have put together a beta release of OpenBTS support. We are having some issues getting it to work but it may be an issue with our OpenBTS configuration or a problem with our handset units. According to a snippet from my OpenBTS.log ( http://nuand.com/captures/OpenBTS.log ) the MS is able to complete quite a few association steps getting as far as getting to a point where its authenticating with the BTS. Here is the corresponding PCAP for that association http://nuand.com/captures/gsmtap.pcapng .
I am not entirely sure if there is a problem with the underlying timestamping mechanism or if this is, as I said before, a problem with our OpenBTS configuration or handset.

For anyone that is interested in experimenting or debugging with what we have so far, you can take a look at my cloned dev repository at https://github.com/robertghilduta/dev . My last two commits provide a mechanism for overriding the location from which certain repositories are fetched. In this case OpenBTS is fetched from my repository ( https://github.com/robertghilduta/openbts ).


Thanks,
Rob
boodrow
Posts: 6
Joined: Mon Mar 10, 2014 8:50 pm

Re: OpenBTS

Post by boodrow »

Rob,

I see that OpenBTS 4.0 was released not too long ago. By chance did this beta make it into the 4.0 release?
blagoja
Posts: 11
Joined: Tue Feb 04, 2014 2:43 pm

Re: OpenBTS

Post by blagoja »

Hello Robert Ghilduta,

I tried to build from the https://github.com/robertghilduta/dev on my Laptop with 32-bit Ubuntu 13.10, but I got the following errors:

svn: E155007: '/home/blagoja/SDR/robertg/dev/openbts' is not a working copy
svn: E155007: '/home/blagoja/SDR/robertg/dev/openbts/CommonLibs' is not a working copy
g++ -DHAVE_CONFIG_H -I. -I.. -D'SVN_REV=" CommonLibs:rev"' -I../CommonLibs -I../Control -I../GSM -I../GSMShare -I../GPRS -I../SGSNGG$
URLEncodeTest.cpp: In function ‘int main(int, char**)’:
URLEncodeTest.cpp:13:22: error: expected primary-expression before ‘(’ token
string test = string("Testing: !@#$%^&*() " TIMESTAMP_ISO);
^
URLEncodeTest.cpp:13:46: error: expected ‘)’ before ‘TIMESTAMP_ISO’
string test = string("Testing: !@#$%^&*() " TIMESTAMP_ISO);
^
make[3]: *** [URLEncodeTest.o] Error 1
make[3]: Leaving directory `/home/blagoja/SDR/robertg/dev/openbts/CommonLibs'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/blagoja/SDR/robertg/dev/openbts'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/blagoja/SDR/robertg/dev/openbts'
make: *** [install-arch] Error 2
dpkg-buildpackage: error: debian/rules binary gave error exit status 2
# ERROR: command failed!


BR,
Blagoja
blagoja
Posts: 11
Joined: Tue Feb 04, 2014 2:43 pm

Re: OpenBTS

Post by blagoja »

Hi,

I have overcome the building issue with ordering ./pull.sh and then again ./build.sh.
The ./pull.sh shows differences in openbts 4.1 application.

Everything went OK, but still have problem with accessing the tranceiver e.g. BladeRF device.
Every time I started the OpenBTS application (sudo ./OpenBTS) I have the following output.
It's strange that I have the same output when the BladeRF device is not connected to my Laptop.
Looks like there is not connection between the tranceiver function and the device.

1399126101.903458 3074709248:
Starting the system...
ALERT 30467:30467 2014/05/03 16:08:26.9 OpenBTS.cpp:439:main: starting the transceiver
EMERG 30467:30479 2014/05/03 16:08:27.0 OpenBTS.cpp:160:startTransceiver: Transceiver quit with status 256. Exiting.

Has anyone idea what could be the problem?

BR,
Blagoja
schrambo
Posts: 16
Joined: Sat Mar 02, 2013 1:33 am
Location: Perth, Western Australia

Re: OpenBTS

Post by schrambo »

Hi dudes.

Hi Blagoja, did you manage to resolve your problem with running the OpenBTS daemon?

i'm currently having a play with OpenBTS. But having some troubles with configuring / interacting with it.

I have followed the instructions in the Quick Start Guide Which everything went well without any issues. I compiled it with the build.sh script with the argument of SDR1

Code: Select all

daredevil apps # ./OpenBTS -v
release 5.0-master+add83ed1f3 CommonLibs:11d8baa826+GPRS P built 2015-01-28T15:04:20 
I managed to compile and install the v5 branch of OpenBTS on my laptop fine. I have managed to start the services as listed to do on the guide however when trying to run the OpenBTSCLI

Linux 3.13.0-24-generic #47-Ubuntu SMP x86_64 x86_64 x86_64 GNU/Linux


Code: Select all

daredevil apps # pwd
/home/schrambo/openBTS/dev/openbts/apps
daredevil apps # ./CLI 
OpenBTS Command Line Interface (CLI) utility
Copyright 2012, 2013, 2014 Range Networks, Inc.
Licensed under GPLv2.
Includes libreadline, GPLv2.
Connecting to 127.0.0.1:49300...
connect stream socket: Connection refused
Is OpenBTS running?
daredevil apps # pidof OpenBTS
23001
daredevil apps # ps aux | grep OpenBTS
root      2744  0.0  0.0 271716  3232 ?        Ssl  Jan28   0:04 /OpenBTS/sipauthserve
root      2746  0.0  0.0 353712  3308 ?        Ssl  Jan28   0:14 /OpenBTS/smqueue
root     23080  1.5  0.0  80812  4716 ?        Ssl  13:08   0:00 ./OpenBTS
daredevil apps # telnet -l [email protected]
telnet> 
telnet> 
telnet> ^C
daredevil apps # telnet -l [email protected] port 49300
telnet: could not resolve port/49300: Name or service not known
I'm now going though the OpenBTS handbook to see if there is any clues or hints for this.
However i'm a little puzzled as to how to tell the OpenBTS's transceiver to use the bladeRF.

I have the x115 FPGA model of the bladeRF. Currently connected to a USB2.0 port.

Code: Select all

bladeRF> info

  Serial #:                 072d504e8bef4e4148afac852a93a579
  VCTCXO DAC calibration:   0x9b97
  FPGA size:                115 KLE
  FPGA loaded:              yes
  USB bus:                  1
  USB address:              3
  USB speed:                Hi-Speed
  Backend:                  libusb
  Instance:                 0

bladeRF> version  

  bladeRF-cli version:        1.1.0-git-c05bc6e
  libbladeRF version:         1.1.0-git-c05bc6e

  Firmware version:           1.7.1-git-ca697ee
  FPGA version:               0.1.2
I"m currently i'm reading though the Handbook but so far have yet to come across anything that would suggest would be the problem.

EDIT: Okay so I found out that I should be following this guide instead which i now have started to do. https://github.com/Nuand/dev
everything again seemed to have compiled and installed fine (minus a few hiccups with file permissions and ownership) but it's still having the same issue when trying to start the OpenBTSCLI.
Post Reply