Overview
What is qMp?
- It is a firmware for embedded network devices, based on the OpenWrt Linux operating system
- It provides an easy way to set up MESH networks, no matter if they are wired or WiFi -or a mix of both-
- It is a fast and reliable way to extend an Internet up-link to end-users
Why?
qMp is useful for two main purposes:
- For quick deployments (roaming mode)
There's no need to think about network topology, all you need to do is to spread the nodes and connect one of them to an Internet up-link.
Use it at any kind of environments like concerts, meetings, demonstrations or in case of a natural disaster.
- For wireless community networks (community mode)
If you are new into this, whether you want to be part of an existing community or to start a new one, all you need to do is to download and install the firmware. It won't take longer than having a coffee to have your node ready to work.
If you are already an old hands at wireless communities, qMp will let you forget about all those weird network administration tricks that don't last more than a day in your mind and focus on what makes your community grow: deploying nodes and engaging people.
Here there is a basic example (wiki) on how to start a wireless community network based on qMp.
Not clear enough? You can read this short article (wiki) to understand the differences between roaming and community modes.
How?
- Providing a complete autoconfiguration system from the first boot.
- Using a layer 3 MESH routing protocol [http://bmx6.net].
- Using IPv6 as the main IP protocol with autoconfigured ULA addresses (global is also possible).
- Using IPv4 only for end-user connection (tunneling).
- Providing an easy and intuitive administration web interface (LuCI based).
Main Features
- Mesh: Using a set of mesh protocols to provide automatic networking participation.
- Autoconf: A system to auto-configure all settings. So the user does not need to configure anything.
- qmpinfo: It is a tool written in Lua to get some information about the qMp system.
- qmpcontrol: It is a tool written as a shell script to manage the qMp system.
- qMp web: A LuCI (web interface) module to manage and monitor qMp.
- Map: A map tool (named b6m and written in JavaScript and Shell Script) to see the position of all network nodes and how are they connected.
- Internet detection: A tool (named gwck) written in Shell Script which is monitoring if the node is connected to internet, in this case it modifies all needed things to share it with the whole network.
Take a look into the Screenshots section.
Using the Firmware
By default, the network interfaces of your device are used in the following modes:
- eth0: LAN, IP address 172.30.22.1, DHCP server enabled
- eth1: WAN, IP address obtained via DHCP client (to connect it to an Internet uplink)
- wlan0: MESH (Ad-hoc) in 5 GHz // MESH (Ad-hoc) + LAN (AP) in 2.4 GHz. Routing daemons using IPv6
- wlan1: LAN (AP), IP address 172.30.22.1, DHCP server enabled
If any of the interfaces does not exist in your device, it is simply ignored.
You can access your device connecting your computer to eth0 or wlan1 and going via web browser to http://172.30.22.1 or http://admin.qmp using default login:
- user: root
- password: 13f
Check the article on How to start a community network and many others in the Wiki.