new version of mvoice

A new version of mvoice (201118) is available. It’s now easier than ever to connect to an M17 reflector. Start mvoice with “./start-mvoice” from your build directory and this script will download the latest connection information about all registered M17 reflectors. Select a reflector from the drop down list, select a module and link and you are connected. Once you’ve selected a registered reflector, use the “Open Dashboard” button to see its dashboard.

Depending on how you set up your system, you can still start movice with “./mvoice” or “bin/mvoice” or simply “mvoice” if you don’t need to update your registered reflectors list.

If you’ve selected IPv6-only operation, your drop down list will only contain those registered reflectors that support IPv6. There are only two currently, M17-M17 and M17-USA.

The format for saved destinations has been changed and so mvoice now uses a different file, ~/etc/M17Hosts.cfg. The downloaded registered M17 reflectors are in ~/etc/M17Hosts.csv. (Thanks to the dudestar guy for this!) Your previously saved Destination callsigns/IPs are still in the original file, ~/etc/M17-destinations.cfg.

Several bugs with the settings dialog have been fixed.

If you already are using mvoice, go to your build directory and do “git pull” followed by “make install”.

N7TAE made a big update to the program, so I translated it all over again…. Thank you very much Tom for the great program !!! Here is the Spanish version for the entire Spanish-speaking community

73es EA7IYR

And just like that, there is a new version of mvoice available.

With this release, 201121, mvoice will download the list of reflectors automatically from the website. It does this whenever you start mvoice and you’ll see a notice in the terminal in which you launch mvoice.

If you are already using mvoice, you will need a new curl package that enables the list download, “sudo apt update libcurl4-gnutls-dev”. Then you can make the new version. In your build directory type: “make uninstall && git pull && make install”. The “make uninstall” will get rid of some files that aren’t needed anymore.

If you’ve never installed mvoice, follow the instructions in the file. Of course mvoice is Linux only (and it will run fine on a Raspberry Pi).

Thanks Tom for this new version, but I have problems I have on the modulation in transmission, when I do the “echo test” I listen to myself with a totally distorted modulation with a strong noise that completely covers my voice, I can’t define a sort of hum together to a pot of beans that boils … I replaced the USB sound card, replaced the power supply and changed the Raspberry 4 with a Raspberry 3+ … but the problem continues to be present I cannot understand what it depends on, what can it be?


Thanks Maurizio,

Sorry you’re having trouble. I just checked on my RPi 3+ and this latest version is working for me. I’m using an inexpensive USB Microsoft LX-3000 headset.

In a terminal window, type “aplay -L”. The “default” device should be one of the first devices listed. If it is not, then pulse audio may not be installed properly.

If Echo Test is not working, I suspect your sound device is the problem. It would be useful to know of your system can it play audio okay, like with YouTube? If it can do that, can you record with your microphone with another app, like audacity?

Also go into the RasPi Menu and select “Pulse Audio Volume Control” in the “Sound & Video” sub-menu. In that control, look at the Input and Output Device tabs. You can try turning down all the output devices that your aren’t using and then on the input, you can check to see how sensitive your voice is detected.

I have done all the tests you have listed for me, everything works, the output audio is perfect with a movie playing, the problem I have is on the microphone input (Mic) there is a distortion in my voice this I check by doing the function “echo test”
I would like to be able to record what I listen to in “echo test”
I tried to make an adjustment through the sound card settings as you indicated … I disabled the “Auto Gain Controll” in this way and improved … maybe I expect too much !!!
it is possible to record the “echo test” output so I could post it here !!

Sorry Maurizio, but posting a recording of Echo Test won’t help me. Exactly what sound hardware are you using?

Good morning Tom

The model is of the matsuyama CF208, Today I find myself a new problem, I can no longer start it automatically when the raspberry is turned on, I did it from this start

“sudo nano / etc / xdg / lxsession / LXDE-pi / autostart”

@lxpanel - LXDE-pi profile
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
/ home / pi / mvoice / mvoice

it opens the program but does not connect, I noticed it does not do this: copied to /home/pi/etc/m17refl.json
Starting M17 Gateway …

how did you do to start automatically when the raspberry is turned on?



Sorry, I have no idea how to start a gui application on a Raspberry Pi when it boots up. But the next release will include a file for installing a desktop icon for launching mvoice.

And just like that, there is another version of mvoice, 201123.

This version has a new file for installing a desktop icon to launch mvoice on a Raspberry Pi. Please see the file for more information on this and how to avoid a bug in the Raspberry Pi OS when using the new “Open Dashboard” button.

Also in this release, mvoice is now using ephemeral ports for its UDP connection(s).

If you are upgrading from a previous version, in you build directory, do: “make uninstall && make clean && git pull && make install”. If you’ve never installed mvoice, please follow the instructions in the file.

thank you!!! updated in spanish too!

Thanks Tom

I saw that you have solved the problem of the “Destination list” but now it does not allow me to select the “Setting” and “echo Test” buttons, perhaps having done “git pull” something has broken … …

Sorry you’re having so much trouble with mvoice, Maurizio.

If the Settings button is insensitive, then something is very broken, and I have no idea what has happened to your installation. It sounds like you need to start over again with a clean slate.

I also don’t have any idea why your USB sound device is not working with mvoice. If you’ve installed pulse audio and “aplay -L” shows a “default” device at the beginning of the list, it should work. You might want to consider trying dudestar as it uses the qt audio package and mvoice uses alsa+pulse audio. Maybe dudestar will work better for you.

I confirm Tom

I delete the directories “mvoice”, “bin” and “etc”, re-installed from scratch at the end with no error, when I go select the “Setting” button it goes into Block and I have to terminate the Process, mvoice [Not Responding]

Can you check this block?

The USB board works and the result of my modulation I get by doing the Echo Test which is distorted and overmodulated by background noise as the conversion is squared


Good morning Tom

I was able to understand the reason for my microphone because it had that strong buzz … I had to connect the negative with the earth ground of my home, with this system the hum of 50Hz is gone, surely my station is very disturbed from various tools turned on, I have not yet read any answer from you, I hope I have not bothered you with my problems … You have verified and found the problem of the “Setting” that makes the Mvoice block … I would like to complete this your project !!

73, Mauritius

Samplerate being 8000 s/s not supported properly by all motherboard soundcards.

In particular, my HP 4340 i3 laptop.

I’ve modified “mvoice” to do 48000 samples/sec, find the code on my website:
www (dot) unixservice (dot) com-au / parrot / src

BTW: This problem on Linux is not new, dating back to the early WSJT and WSPR days.

Questions re “mvoice”:

  1. Is there a way to signal “mvoice” that PTT is pressed from another app?

  2. Can “mvoice” signal that other process, audio is being received?

I’ll attempt to code it myself, in the meanwhile.

I’m lost in C++ programming, can somebody help?
I’m trying to use a semaphore to signal PTT has been pressed
and, to send back to my other process, audio is coming from the net.
I added “checkSem()” to MainWindow and want to call it from M17Gateway.process().
Here is my code so far.

mvoice342sem.tgz at:
www (dot) unixservice (dot) com-au / parrot / src

Hello All,

I experimented a bit with M17 with a lot of plaesure
So here my configuration:
Computer board is a Orange Pi zero
Debian buster installed XCFE gui and tightvncserver, because no way to connect a screen directly
a micro/haedphone I use a plantronics blackwire m320 on the USB port.
The reflector is running and published when i look on the webpage
But the reflector is never shown up in the reflector list
The reflector is up and running during a good week, and reachable from the Netherlands where i made some test calls using mvoice

My question is how can i make that my refelctor is showing up in the list? without typing it in all the time i want to connect

Are there poeple out who were installing dudestar on debian? the executable on windoze is running, but i dont have a own windoze system…
Some informations howto would be appreciated
King regards

73’s from Hans in Western France, Britanny

A new version of mvoice (210117) is available.

There are two major changes:
[]There is no longer a dependency on sqlite3.
]M17 reflectors are now read from the new json file at [color=#d4d4d4][size=small][font=Droid Sans Mono", “monospace”, monospace, "Droid Sans Fallback][color=#ce9178][/color][/font][/size].[/color]
It’s not a big deal, but try to make sure you do a “make clean” before you do a “git pull”, otherwise you will leave a useless QnetDB.o file in your build directory:

cd mvoice
make clean
git pull
make install

You can also do “sudo apt remove libsqlite3-dev” if you don’t have anything else that depends on sqlite3.

I have a strange error when trying to go to the dashboard. When I do this, mvoice locks up. The error looks like this…

pi@raspberrypi:~/mvoice $ ./mvoice copied to /home/pi/etc/m17refl.json
Starting M17 Gateway…
libEGL warning: DRI2: failed to authenticate
[7160:7271:0507/] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[7160:7271:0507/] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[7160:7271:0507/] Failed to call method: org.freedesktop.UPower.EnumerateDevices: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[7208:7208:0507/] Exiting GPU process due to errors during initialization

This is a clean install of Raspbian32 and following your README. I would appreciate any pointers