Skip to content

An implementation of a wireless, decentralized, multi-hop network using Bluetooth. Note that the code quality is terrible; this was a meet-the-deadline uni project.

License

Notifications You must be signed in to change notification settings

abdullahkady/wireless-multihop-network

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wireless Multihop Network

An implementation of a network:

  • Wireless (Using Bluetooth)
  • Decentralized (the full network topology is eventually known at every node)
  • Multi-hop (no direct connection required between end-users, a path is sufficient)
  • Auto network discovery (for joining) & disconnection handling (updating the state of the network and informing the network)
  • Routing & forwarding using Dijkstra Shortest Path (all connection assumed the same weight)

The demonstration application is a chatting application that supports a dynamic number of users. The project is a part of the postgraduate course at the GUC (CSEN 1066: Selected Topics in Communication Networks project)

Requirements

System Dependancies

sudo apt-get install libbluetooth-dev

Python packages

pip install pybluez pexpect inquirer

Configuration

To allow the use of 'services' in bluetooth, edit /etc/systemd/system/dbus-org.bluez.service and change:

ExecStart=/usr/lib/bluetooth/bluetoothd

To

ExecStart=/usr/lib/bluetooth/bluetoothd --compat

Then restart the bluetooth:

sudo systemctl daemon-reload
sudo systemctl restart bluetooth

You'll need to run the application as sudo for the correct permissions.

About

An implementation of a wireless, decentralized, multi-hop network using Bluetooth. Note that the code quality is terrible; this was a meet-the-deadline uni project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages