In this project, I am going to set up a Raspberry Pi Mumble server. It’s an excellent project if you want to set up your own VOIP system.

For those who have not heard of Mumble before, it is an open-source VOIP (Voice Over Internet Protocol) chat software that provides a low-latency high-quality voice chat.

Mumble is often used amongst gamers to coordinate over voice chat while playing video games. It is very similar to TeamSpeak. It can also be used as an open voice chat room or pretty much anything where you require voice chat rooms.

Mumble is not the only Raspberry Pi VOIP solution out there. Other VOIP solutions such as Asterisk offers a much more complete package. It offers features such as inbound and outbound calls, audio, and video conferencing and much more. Mumble is much easier to set up and provides enough functionality for most people.

Equipment

Here is a list of equipment that you will need for this project. There are also some optional pieces of equipment that you might be interested in picking up.

Recommended

Raspberry Pi

Micro SD Card

Ethernet Cord or WiFi Dongle

Optional

Headset for Voice Chat

USB Keyboard

USB Mouse

HDMI Cable

Video

I have put together an excellent video guide to take you through all the steps required to have a fully functioning Mumble server.

If video is not your thing, you can find the full written tutorial underneath the video.

Setting up the Raspberry Pi Mumble Server

The first step you will need to do is make sure you have Raspbian installed on your Raspberry Pi. If you haven’t done this, then you can follow my guide on installing NOOBs for the Raspberry Pi. It will provide you with all the information you need to get started.

Installing the Mumble Server

1. On the Raspberry Pi, open up the terminal or SSH to the Pi.

2. First, install the Mumble server onto the Raspberry Pi by typing the following command.

sudo apt-get install mumble-server

3. Now we need to do some basic configurations, such as setting up a superuser so we can connect. You can do this by running the following command.

sudo dpkg-reconfigure mumble-server

4. This command will present you with a few options, set these to how you would like Mumble to operate.

Autostart : I selected Yes

: I selected High Priority : I selected Yes (This ensures Mumble will always be given top priority even when the Pi is under a lot of stress)

: I selected (This ensures Mumble will always be given top priority even when the Pi is under a lot of stress) SuperUser: Set the password here. This account will have full control over the server.

5. You need the IP address to connect, to get this type the following command.

ip addr show

6. Make note of the number that is next to inet (It will be under either eth0 or wlan0). We will need it to connect to the server and also setup port forwarding for outside access.

Configuring the Mumble Server

Now we will want to set up a few things on the Mumble server such as a welcome message and password.

1. Using SSH or the terminal app enter the following command.

sudo nano /etc/mumble-server.ini

2. This command will open the server config in the nano text editor.

3. Everything here is pretty self-explanatory:

Find welcomeText and update to whatever you would like displayed when a user joins the channel.

and update to whatever you would like displayed when a user joins the channel. Find serverpassword and update if you would like a password for users looking to join the server.

and update if you would like a password for users looking to join the server. Uncomment registerserver by removing the # and replace mumble server with the name that you would like to use for the base channel.

4. You will need to restart the server for changes to take place. Enter the following command.

sudo /etc/init.d/mumble-server restart

Once the server has rebooted, you can now move onto accessing it via the Mumble client.

Accessing the Mumble Server

There are a few things we will need to do to access the server, and this includes downloading the Mumble software.

1. Download and install the Mumble client from their website mumble.org.

2. Open up the program and go to Server->Connect

3. In here, add the details:

Label : The name that will appear in your server list.

: The name that will appear in your server list. Address : This is the IP Address we wrote down earlier.

: This is the IP Address we wrote down earlier. Port : 64738 (Unless you changed it)

: 64738 (Unless you changed it) Username : superuser

: superuser Password: The one you set earlier using the dpkg command.

You should now be able to connect to your server.

4. Now we have it working, there are a few more things you may want to configure and setup.

Setting up an Admin User

You might want to give yourself admin rights so that you don’t need to login to the superuser again.

1. In the Mumble client login as the superuser. Make sure you have logged in under a different account first.

2. Right-click on the servername and go edit.

3. In here, go to the group’s tab and select admin from the drop-down box.

4. Either type in or add your username in the drop-down box next to add in the members’ column.

5. Click add and then exit.

6. Now login under the username you just added. You should be able to add, edit channels, and complete other admin tasks on your Raspberry Pi murmur server.

Setting up External Access to the Mumble Raspberry Pi Server

To set up external access, we will need to change some settings in the router.

All routers are different, so I will provide the details on what I have done to mine, and you will most likely need to adapt to different brands or models. Mine is the AC1750 TP-Link Router.

1. Head to your Router admin page (This will typically be 192.168.1.1 or 192.168.254

2. Enter the username and password. The default typically is admin and admin. You should change this if this is the case.

3. Go to forwarding->Virtual Server and then click on add new .

4. Now, enter the following.

Service port : In this case 64738

: In this case IP Address : 192.168.1.103

: Internal Port : We want this to be the same as the service so 64738

: We want this to be the same as the service so Protocol : All

: All Status: Enabled

5. These settings will route all traffic destined for port 64738 to the Mumble server ( 192.168.1.103 )

6. You should now be able to connect to the Mumble server on the Raspberry Pi outside your network. You may need to restart the router for changes to take effect.

The best way to test if this is working is to get a friend who has Mumble installed or is willing to install the client to connect to your server. Provide them with your external IP and or dynamic DNS, and they should be able to connect to the Raspberry Pi Mumble server.

If you wish to learn how to set up dynamic DNS, then be sure to check out our guide on it.

If they are unable to connect, you can try the following:

Check your router settings and confirm they are correct.

Check your IP hasn’t changed (Some ISPs will provide you with a dynamic IP rather than a static IP)

Restart the router.

Restart the Raspberry Pi.

I hope that this tutorial has shown you all the necessary steps to getting the Raspberry Pi Mumble server up and running. If you come across any problems, have feedback, or anything else, then please don’t hesitate to leave a comment below.