Testbed-specific installation instructions¶
VESNA testbed uses VESNA sensor nodes designed by the Institute Jožef Stefan.
One USRP N200 connected over a gigabit Ethernet interface to be used as a spectrum sensor. Use default network settings (use 192.168.10.1 for the computer’s IP)
Current setup uses SBX daughterboard, a 2.4 GHz antenna.
VESNA sensor nodes, connected through a powered USB hub. As many as you need (two nodes per player).
Nodes should consist of a SNC core board and a SNE-ISMTV-2400 radio board.
If you need to upload firmware, you will also need a SNE-PROTO board and a Olimex ARM-USB-OCD programmer. For debugging, a serial-to-USB converter connected to VESNA’s USART1 is recommended.
As of 0.0.3,
spectrumwars_runner no longer uses VESNA nodes connected
over serial-to-USB converters.
Firmware has to be uploaded to VESNA sensor nodes before they can be used with
Spectrum Wars. Firmware source code is stored in the
You will need the ARM toolchain installed. See https://sensorlab.github.io/vesna-manual/ for instructions. These steps assume you are using Linux and that the command line tools are properly set up.
You will also need a checkout of the
vesna-drivers repository. Current
packet driver in the
master branch is very unstable and unsuitable to be
used with this firmware. It is recommended that you use the
branch from the following repository:
First make sure that the
VESNALIB_LOCATION in the
Makefile points to
the directory containing the
vesna-drivers git repository:
$ cd firmware $ grep VESNALIB_LOCATION= Makefile
To compile the firmware run:
To upload the firmware, make sure you have the Olimex ARM-USB-OCD connected to the node and run:
$ make install
To test the firmware, connect two nodes using the mini-USB connector and run:
$ cd ../controller $ python setup.py test -s tests.test_radio
In case of problems, there are some debugging options available on top of
vsndriversconf.h. See also Firmware interface.
Additional dependencies for game controller¶
In addition to packages listed in Installation instructions, the following additional packages are required to use Spectrum Wars game controller with the VESNA testbed:
- GNU Radio with UHD (GNU Radio version 18.104.22.168 is known to work) - http://gnuradio.org
- gr-specest - https://github.com/avian2/gr-specest
- pyudev (
apt-get install python-pyudev)
- pyserial (
apt-get install python-serialor
pip install pyserial --user)
Also, make sure that
/dev/ttyACMxx devices are accessible to the user
running the game controller. Typically, this requires adding the user to the
dialout group. For example:
# adduser myuser dialout