Git Product home page Git Product logo

bramble's Introduction

BRamble

BRamble is a web-based administration system for 6LoWPAN border-routers. It provides setup and diagnostic tools to easily deploy 6LoWPAN networks.

Features

  • RPL network visualization

    • queries routing information from nodes implmenting rplinfo CoAP resources
  • Automatic IPv6 network configuration

  • Radio managment

    • automatic firmware loading

Screenshots

Getting Help and Contibuting

Please see the wiki for detailed development details. If you need help, please ask questions in the issue tracker.

Installation

Get BRamble

git clone https://github.com/malvira/bramble.git

Install dependencies

On a debian/ubuntu machine, the following should get you pretty close:

apt-get update 
apt-get install cython libjs-jquery python-flask python-pip python-dev ipv6calc
pip install Flask-OpenID Flask-Login Flask-Principal Flask-Bcrypt Flask-Mako IPy gevent-socketio

See also the advanced scripts in:

bramble/files/debian/install-debian.sh bramble/files/arch/install-arch.sh

These scripts will setup nginx and automatically start BRamble etc... READ THROUGH THEM BEFORE RUNNING ON YOUR SYSTEM

Install gevent from source

git clone https://github.com/SiteSupport/gevent.git
cd gevent
python setup.py build
python setup.py install

Install libcoap and coap-client

BRabmle currently uses coap-client from libcoap.

Currently mainline contiki implements coap-08 in erbium (used by erbr and rplinfo). To get the latest version of libcoap that works with with this version of erbium:

git clone git://libcoap.git.sourceforge.net/gitroot/libcoap/libcoap
cd libcoap
git checkout a662f73
autoconf
./configure
make
cp examples/coap-client /usr/local/bin

Econotag tools

If you are using econotags or mc13224vs with bramble you will need mc1322x-load (the C version and not the perl script):

/contiki/cpu/mc1322x/tools$ gcc mc1322x-load.c -o mc1322x-load
sudo cp mc1322x-load /usr/local/bin

and probably bbmc (esp. if you are using PC w/econotag):

sudo apt-get install libftdi-dev
/contiki/cpu/mc1322x/tools/ftditools$ make
sudo cp bbmc /usr/local/bin

Contiki stuff

You should just need tunslip6 in a executable place.

Distribution files

See the files directory for details on how to configure your particular distribution.

In particular,

Gogoc template

only necessary if you are using a TSP tunnel

A suitable gogoc template must be present in the BRamble search path (default: ['/etc/gogoc', '/var/cache/bradmin', '/etc/lowpan', '/usr/local/etc/lowpan', '.']

getbripv6.sh

This script needs to be in your path somewhere. E.g.:

cp ./files/debian/bin/getbripv6.sh /usr/local/bin

Running Bramble

cd bramble/web
python runserver.py

This will print initalization information to the screen while the border-router is loaded with firmware, tunslip is connected, and gogoc aquires a tunnel. It will also start the BRamble webserver.

If all goes well, point your browser to localhost the default password is default.

License

BRamble is released under GPLv3.

bramble's People

Contributors

malvira avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.