VoxMotoChat Android application
PLEASE NOTE: The version of the app provided is a Beta version and it may contain bugs (as well as simplified graphics, UI, templates, design, placeholders, etc.), which may cause the app to malfunction, such as freezing, crashing unexpectedly, communication errors, certain features not working correctly, etc. (Restarting the app (force-closing it) usually helps to get it working again). The appearance and functions of the application are subject to change..
The VoxMotoChat app is a hobby project. The app is available (or will be, depending on the acceptance time on the stores side) for free (no charges, no adverts) via the Google Play Store, the Samsung Galaxy Store and the official VoxMotoChat website.
Licence (EULA): https://voxmotochat.com/pl/eula
VoxMotoChat is a voice chat app (VoIP - for real-time voice communication) designed specifically for motorcyclists to enable group voice communication using any motorcycle intercom system (this solves the problem of communication between different brands and models of motorcycle intercoms, but requires an internet connection).
The app can also be used successfully for voice communication via any Bluetooth headset or Bluetooth hands-free system (e.g. in a car) or even using the speaker and microphone built into your phone.
VoxMotoChat can be used for communication whilst on the road between cars or on hiking or cycling trips in the countryside.
Frequent internet outages or disconnections affect audio quality, which may lead, for example, to interruptions in audio playback or transmission. The VoxMotoChat app has no control over this, but it does not destabilise the app's operation, nor does it cause the app to close or result in a sudden, unplanned disconnection from the server due to lost data packets, however, if a disconnection from the server occurs (as a result of a prolonged loss of internet connection), the app will automatically re-establish the connection to the server as soon as possible (once a connection to the internet and the server is re-established).
1.1 TIP: To improve the quality and stability of your internet connection whilst travelling on mobile phones, we recommend using 5G networks only. On Android devices (Network & Internet settings -> Mobile network -> Preferred network types -> Set to 2G/3G/4G). Mobile networks and mobile internet are characterised by instability and high latency and the app has no control over this. This is an inherent feature of mobile networks and mobile internet access and all VoIP apps face these issues. To stabilise your mobile internet connection at the cost of a lower data transfer speed (though still perfectly adequate), disabling 5G support may help, as phones with 5G enabled often switch between modes such as 4G and 5G due to poor 5G coverage, leading to frequent interruptions in audio packet transmission, dropped calls and high battery consumption.
PLEASE NOTE VoxMotoChat can be used on a local network, but the phone cannot use the 2.4 GHz Wi-Fi network and the Bluetooth intercom/headset at the same time (the connection will be intermittent, severely delayed or impossible) because Bluetooth also operates in the 2.4 GHz band, causing 2.4 GHz Wi-Fi and Bluetooth (2.4 GHz) to interfere with each other (you can use "phone" mode with Bluetooth turned off).
SOLUTION: is to connect mini-jack/usb-c headphones to the phone and not use Bluetooth or connect the phone to the WiFi 5 GHz network and then you can use the intercom/Bluetooth headphones at the same time (this is a phones hardware issue, not an application problem).
The app has been designed to operate reliably under variable and challenging mobile internet connection conditions whilst driving (where there are frequent packet losses, interruptions to the internet connection, periods of several minutes without an internet connection, significant delays, etc.)
2.1 TIP: The VoxMotoChat app has no control over this, but if the start of messages from the Yanosik app is being cut off, you should set a message playback delay in the Yanosik app (Settings -> Bluetooth -> Message delay, e.g. 2000 ms), unfortunately, message truncation is often caused by Bluetooth devices aggressive power-saving measures and the VoxMotoChat app has no control over this. If the audio intercom is not playing any audio (e.g. a conversation), the Bluetooth audio channel is "closed" by the Bluetooth device to save battery power. If a conversation is in progress (e.g. chat audio is being played), messages from other apps are not cut off, as the audio session to the Bluetooth device remains open at all times. Setting the message delay in the Yanosik app allows time for the Bluetooth device to "wake up", for the audio channel on the Bluetooth device to open, and for the entire message to be played.
When you first launch the programme, you must fill in the "Nickname" and "Room" fields, the "Room password" field is optional.

Server – a list of voice chat servers (official public and unofficial community servers) to which the app can connect
Nickname (letters and numbers only) - any username (maximum 32 characters). If a username is already taken, the server will automatically add random numbers to the nickname.
NOTE: certain special characters, including i.e. polish characters, cannot be used.
Room (letters and numbers only) – any name of the room the user wishes to join (maximum 32 characters)
NOTE: certain special characters, including i.e. polish characters, cannot be used. Case sensitivity applies, which means that a room named "MYRoom" is a different room from one named "myrom". Every user must enter the exact same room name (case-sensitive) and an optional password (if set by the first person to join the room).
A room is created on the server the moment the first user joins it, and it is this first user who sets the room password, which the other users must enter. It may happen that someone has already created a room with the name you have chosen and secured it with a password, in this situation, if you do not know the room password, the application will not join that room and will disconnect from the server (displaying a message stating that the password is incorrect). You should then choose a different room name.
Rooms on the server are not permanent - if all users leave a room with a given name, the room on the server will be closed after a few seconds and the name will be released (becoming available to others).
Room password (optional) - an optional room password. Only users who enter the correct password can join a password-protected room. The password is optional, and if it is not provided by the first user creating the room (the password field is empty or contains 0 characters), the room will have no password and anyone who knows the room name will be able to join.
Server - clicking on this field opens a server browser, allowing you to select a server from the list or enter a server address. By default, the app selects the official public server and will connect to it unless another server is chosen, all users must be connected to the same server to be able to chat with one another.
Audio device - a drop-down list for selecting an audio device (microphone recording/audio playback). The Phone option selects the phone's hands-free system (the speaker and microphone built into the phone) for communication. The Bluetooth option selects a Bluetooth device for communication. If an intercom or Bluetooth headset is connected to the phone, the app will use that device for communication (this also works with in-car hands-free systems).
To avoid problems or unusual behaviour, it is best to ensure that the Bluetooth device - e.g. an intercom - is connected to your phone before connecting to the server (before pressing the "Connect" button). If the Bluetooth device is not available, the app will not connect to the server as it will have no device to communicate with, in this case, you should connect your phone to a Bluetooth device, such as an intercom or switch to using the phone itself (the phone’s built-in speaker and microphone).
Connect – this button connects to the server. The green "Connect" button indicates readiness to connect, when pressed, the app will connect to the server. The "Connect" button changes to a "Cancel" button whilst connecting to the server; when the "Cancel"’ button is red, clicking it will cancel the connection to the server.
Close – this button closes the application
An example login screen with the fields filled in, which will connect to the server as the user MotoRider to a room (creating a room without a password) called MyRoom; our default communication device will be Bluetooth

Room history – the "room" field stores the last 10 rooms the user has joined (including the room name and password), allowing you to select a room from the history without having to re-enter all the details.
Example:

In the server browser you can select the server you want to connect to from the "Public Server" list. To select a server, click on the selected server tile. After clicking, the server will be selected and the application will return to the main/login screen. The "Refresh" button refreshes the server list, while the "Cancel" button returns to the login screen.
The server list is sorted by lowest ping/latency.
A server with a padlock icon next to its name means that you must enter a password to connect to it.
If a server is not visible on the public server list (it was launched as "hidden"), enter the server's IP address/domain and port in the "Custom server address" field (IP address/domain and port) and click "Confirm" to have the application configure the entered data and return you to the login screen.

The chat screen that appears once you have connected to the server and joined the selected room.

a highlighted frame around the username tile indicates that the user is transmitting audio/speaking
When we are connected to a room, we can freely switch communication devices, for example, switch to the phone's speakerphone or to a connected Bluetooth device. The displayed device name (the phone is selected in the image) indicates that this device is currently selected for communication. If a Bluetooth device is selected but the Bluetooth device is not available, the app will revert to the "Phone" device.
PING - the app has no effect on internet or mobile network latency, unfortunately, mobile networks are characterized by unstable connections, frequent disconnections, and variable and often quite high latencies depending on the coverage and signal strength of the mobile network (LTE/5G internet). The total audio latency depends on our ping (latency in communication with the server) and the latency of other clients.
For example (to simplify), let's say our ping is 50 ms, meaning the server receives our audio packets after 25 ms, another user in the room currently has a latency of 200 ms, which means they will receive the packets after 125 ms (25 ms + 100 ms), so the audio playback delay for the other user will be 125 ms, and this is not the app's fault it is a characteristic of network communication and applies to all real-time voice communication (VoIP) applications.
Sampling rate: 8 kHz or 16 kHz, this indicates the audio sampling rate at which the communication device is currently operating (this depends solely on the device being used). Older Bluetooth devices often support only 8 kHz, while newer ones support so-called HD 16 kHz. The app always performs audio sampling/tests and attempts to establish a connection with the best possible quality (16 kHz). If one of the users experiences noticeably poorer voice quality (muted or a narrower frequency range of the transmitted voice) this often means that the app has established an 8 kHz connection with the Bluetooth device. The audio quality for callers also depends on the microphone of the device used for communication. Bluetooth headsets, earphones and similar devices have microphones of varying quality and despite the 16 kHz audio quality, some devices will sound better while others will sound worse.
BLUETOOTH: If your communication device is a Bluetooth device and you turn off the Bluetooth intercom/headset or if the Bluetooth device goes out of range of your phone, the app will automatically switch to the "Phone" device (i.e. will switch to hands-free mode). This may cause echo or microphone feedback if you are near other users. However, when the Bluetooth device is back in range and was previously the selected device (the user did not change any settings) the app will automatically switch back to the Bluetooth device (from "Phone" back to "Bluetooth").
The available features depend in part on the hardware on which the app is running. A button in white indicates that the selected feature is enabled a button in red indicates that the selected feature is disabled. If a button is gray, it means that the selected feature is not available on that device (the screenshot is just an example).

In some intercoms, it may be necessary to set VAD to level 1 (fast detection) due to, for example, low microphone quality or poor microphone sensitivity. A lightweight AI model - VAD Silero (https://github.com/snakers4/silero-vad) has been implemented for speech detection.
Contact the developer (if you have any questions, suggestions, ideas, etc., feel free to write):