Network simulation tool supporting Bluetooth - bluetooth

We'd like to perform a Bluetooth network simulation.
As far as we have researched, Bluetooth module has not been implemented in ns-3 and ns-2 modules recommended in this question have not been updated for years. We have not found any other simulation tool supporting this protocol apart from this mention to Qualnet, which I have not been able to verify on their website.
Is there any current network simulation tool that includes a Bluetooth module or should we still use ns-2?

All the Bluetooth examples in ns-2.29/ucbt-0.9.8.2a/test/ are working OK :
$ ns-nist-pmipv6 1f.tcl etc. etc.
( Except tcp.tcl, which causes "Segmentation fault", when the old executable 'ns-nist-pmipv6' is used with a contemporary "Linux OS".)
Examples are :
1f.tcl mr5n.tcl pico-3mb.tcl scat-form-law.tcl test_inq.tcl
2sco_inq.tcl ms5n1.tcl pico.tcl tcp.tcl test_sco.tcl
3f.tcl ms5n.tcl rphsi.tcl tdrp.tcl test_sdp.tcl
dsdv.tcl multislot.tcl rs.tcl test_fh.tcl udp.tcl
Code : ns-2.29-nist-mob-022707.tgz ( + pmip6-for-ns-2.29-nist.patch )
NIST-MOB info :
. https://groups.google.com/forum/?fromgroups#!searchin/ns-users/nist|sort:date
. http://www.linuxquestions.org/questions/tags/nist-mob/
The compat-gcc-34-**-3.4.6 compilers from CentOS ( RHEL ) which can compile the old nist-mob code have been repacked to Debian packages. Versions are available for Ubuntu 10.04 + 10.10 and for Ubuntu 11.10 .. 15.04 .

Related

Eclipse Kura installation on Linux machines or VM

We know that eclipse kura can be installed on edge devices and Raspberry pi is the most popular edge device at now.
As per https://www.eclipse.org/kura/downloads.php, we can see various downloads for Raspberry pi, Intel Edition, BeagleBone and Fedora with the beta release.
But we couldn't see the download link to install it on Linux machines or VM. (Ubuntu or centos VM ). We want to install it on ubuntu machine and possible to view web UI on that machine.
EDIT(edit the question)
Is that possible to install only on Fedora ?
What are the complete steps to install kura on ubuntu or Centos ?
I believe the question was asked and answered here. To summarize, there is no generic installer for Ubuntu, Fedora, or CentOS. Kura has dependencies on both the OS and CPU architecture. The supported platforms are:
Raspberry Pi based on Raspbian: Raspberry Pi, Raspberry Pi B+,
Raspberry Pi 2/3
BeagleBone Black based on Debian
Fedora 25 ARM
Intel Edison
The "No Net" versions of the posted installers will remove most of the OS dependencies. For CPU architectures, if you are using something other than ARMv6 HF or x86_64, you will need to compile the native libraries. The minimum native library needed for Kura to start is udev.

Beaglebone cross compilation

I am a freshman for the beaglebone. I need your help. I have installed the cross compiler toolchain arm-linux-gnueabi on my 64 bit xubuntu in eclipse as well as codeblocks environment. I have made a hello world program, cross compiled it in 3 ways using eclipse , using terminal,using Codeblocks. But when i run my executable file in Beaglebone i get the error saying cant load shared file libstdc++6.so.6:file not found.
Though i have already installed latest libstdc++6,ia32-libs and configured it. I am using ssh for logging into my Beaglebone. My all projects are pending because of this. Please suggest solution. I will be grateful to you. I have worked according to derek molloy c,c++ video but still got the error. I think it is because of difference between 32 bit and 64 bit in beaglebone and laptop respectively.
Have you really installed libstdc++6,ia32-libs on your BB? It looks like x86 lib. Take a look at Buildroot. It already provides BB target, so you can get your basic rootfs quite quickly. Then just add needed packages and you are done. The main benefit, when using such distro like BR, that you have all needed dependencies in your rootfs, that you burn on your microSD card. BR also provides Eclipse plugin.
I thought abi used was arm-linux-gnueabi but when i got the details of abi version running on my beagleboard i found it was arm-linux-gnueabihf. So i just replaced the compiler and then it was able to find all the files.

make-kpkg not working in Fedora 20

I have been working with Linux kernel, compiling and inserting modules, in my custom kernels. Previously I had Ubuntu where I had been working with my custom kernel and all the commands for compiling and installing kernel worked like a charm once I had installed all the required libraries.
Now I have switched over to Fedora 20, here I want to install my custom kernel and for that I downloaded all possible kernel tools, namely, Kernel Development Kernel Tools these are group installs and other libraries that I downloaded were ia32 libraries (as I am working on 64-bit OS), kernel-devel package. Still I am not able to work with make-kpkg command. It says bash: make-kpkg: command not found....
I googled out and did everything I could.
Can anyone get me out of this trouble?
make-kpkg is a Debian kernel packaging tool. It does not exist on RHEL family distributions, such as Fedora.
Please refer to the Fedora documentation page "Building a custom kernel" for the correct procedure. (I have not reproduced it here as it is rather long, and I'm not sure how far you may have gotten.)
The make-kpkg tool is part of the 'kernel-package' package on Debian systems. It is a Debian tool to produce debian package files. Ubuntu is based on Debian and has this tool. However, Fedora uses a different system to manage packages. So, make-kpkg would not be available on Fedora.

Identifying a Raspberry Pi host with configure

I work on a cross-platform project, and recently added support for the Raspberry Pi. The project, to make sure it is available at as wide as possible audience, has a premake, a cmake and an autotools build system. I have set up cross-compilation for the RPi, and everything works great.
Recently, I also set up a Raspberry Pi VM (Until I get a real RPi) trying to build the library. From Linux, I run './configure --host=arm-raspberry-linux-gnueabihf', and configure takes it from there. On the RPi however (Rasbian 7), the default host found by config.guess is 'armv61-unknown-linux-gnueabihf'. For that reason, even natively on the Pi, I have to run './configure --host=arm-raspberry-linux-gnueabihf'. So, my question sums up to this:
Currently, I currently have something like this in my configure script:
case "$host" in
armv61-unknown-linux-gnueabihf)
if [[ -f /usr/bin/rpi-update ]]; then
on_raspberry=yes
fi
;;
## other hosts here
esac
So, my question sums up to this:
Is 'armv61-unknown-linux-gnueabihf' only reported on the Raspberry Pi? If not, how can configure make sure that it is really on RPi? Is checking for rpi-update sufficient? Do different distros (Arch Linux, Pidora, ...) also have rpi-update?
Are there any other possible host triplets like this that are reported by different versions of the Pi?
Thanks in advance
Is 'armv61-unknown-linux-gnueabihf' only reported on the Raspberry Pi?
Other platforms could use that as well.
If not, how can configure make sure that it is really on RPi?
It can't really (e.g. running it on a RPi VM). configure is just a shell script.
Is checking for rpi-update sufficient?
See above.
Do different distros (Arch Linux, Pidora, ...) also have rpi-update?
Current Pidora and Arch images don't have /usr/bin/rpi-update. Neither does old Rasbpian images at least as far back as 10 Aug 2012.
Are there any other possible host triplets like this that are reported by different versions of the Pi?
There are 3 triplets for the RPi cross compilers, so it would not be surprising if there were others.
EDIT: so basically what is wanted is a way for configure to detect when it's building on a Raspberry Pi. Easy as pie:
configure.ac
# need to detect build...
AC_CANONICAL_BUILD
...
AC_MSG_CHECKING([if build is on Raspberry Pi])
# The test for 'BCM2708' might be sufficient,
# but the presence of Serial is definitely part of
# the Pi firmware for codec licensing.
# See this thread
# <http://www.raspberrypi.org/phpBB3/viewtopic.phpf=29&t=28304&p=252357#p251536>.
AS_CASE("$build",
[arm*-*-linux*],
[on_rpi=`awk -v r=0 '/^Hardware#<:# \t#:>#+:#<:# \t#:>#+BCM2708/ { ++r;} /^Serial#<:# \t#:>#+:/ { ++r; } END { print ((r > 1) ? "yes" : "no");}' /proc/cpuinfo`],
[on_rpi="no"])
AC_MSG_RESULT($on_rpi)
Detects on Raspbian, Pidora, should work on Arch. Arch doesn't seem to include a compiler in its current install image, so configure failed when I tried it. All detected build as armv6l-unknown-linux-gnueabihf when running ./configure. I have not tried this on any kind of RPi emulator or VM.
BCM2708 in /proc/cpuinfo might be unique for RPi.
From File /proc/cpuinfo
Processor : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS : 697.95
Features : swp half thumb fastmult vfp edsp java tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xb76
CPU revision : 7
Hardware : BCM2708
Revision : 000d
Serial : 00000000db690cb4

installing headers for 3.5 kernel in debian wheezy?

Yesterday, I compiled the 3.5 kernel in debian wheezy (testing), in a thinkpad edge S430 (i5). I did it following this blog, with all the default options. It seems succesful, but then, I tried to install the proprietary nvidia driver with m-a auto-install nvidia-kernel. The install is not able to proceed until the correct headers are installed. However, I have tried both manually to install linux-headers-3.5.0-18 and the linux-headers-amd64 package, but module assistant is not able to see them, showing the following message:
Bad luck, the kernel headers for the target kernel version could not be found and you did not specify other valid kernel headers to use.
There are other ways to install the driver, but I think that the problem with headers is broader.
Although I have been a Debian user for some years, I am far from being an expert, and I am not clear with the problems that I might face when compiling a 3.5 kernel on a Debian testing, so any help and explanation will be much appreciated.
First run
sudo m-a prepare
Getting source for kernel version: 3.8.5-ck1
Kernel headers available in /usr/src/linux-headers-3.8.5-ck1
Creating symlink..
Then do
sudo m-a a-i nvidia
and it should work.
Note that I did this on 3.8.5-ck1, but I built and installed that kernel in a similar fashion to how I wrote up the 3.5 build that you followed.

Resources