Multitrack is an open-source software that passes commands/messages from radios (via and RS232 interface) to tracking/dispatching sytems.
This initial version is able to connect to an ICOM radio (IDAS/NXDN or dPMR), parse the GPS positions received and send them to Traccar. It handles various cases such as channel changes. Text messaging isn't implemented yet, nor are positions requests (at this time).
No one-click setup is available just yet. However, the process is quite straightforward
- Download and install Traccar locally
- Restart the computer (or start the traccar service manually)
- Open a web browser page and browse to: http://localhost:8082/
- You should be greeted by a traccar welcome page. Create a user and password, login.
- On the main interface click on the "Add" button (the plus sign). Set a name, and the identifier (Radio ID). Click save.
- Refer to Traccar's documentation for more information on this interface's use.
- Make sure you have connected an appropriate radio, with command output enabled (for Icom Radios: PC-CMDV2). Identify the COM port and speed.
- Download the latest release of Multitrack.
- Extract the .zip in an empty folder.
- Edit config.ini to match your settings (Radio Port and Speed are the most important). Other settings should be left as default.
- Run main.exe. It should display the radio's serial number. As soon as a GPS position makes it to the radio, you should be notified by a line in the console, and the position should appear on Traccar's interface.
Most common errors are either a wrong COM port, bad radio configuration or absent traccar entry for the radio you wish to track. Most of them can be narrowed down by looking in the logfiles.
Logfiles can be found in the default's program folder, under the \log directory.
No logfiles are implemented yet. However, the console's output will help in narrowing down the reason.
This initial version has been developed on a Windows 10 computer. However, no issues should come up when running it under Linux or MacOS. Here are the tools used:
- Python 3.12 with pip
- git
- Python libraries: pyserial, pynmea2, configparser
- Traccar
Optional, create a virtual environment :
python3 -m venv ./venv
source ./venv/bin/activate
After installing and setting up Traccar, the following lines will allow to create a dev environment:
pip install pyserial pynmea2 configparser
git clone https://github.com/MSF-Telecom/multitrack/
cd multitrack
git submodule init
git submodule update
cd python
python main.py
If you wish to update your copy to the latest commit (including its submodules):
git checkout master
git submodule update --remote --merge
Verbosity levels can be changed in main.py's first lines.
- Implement an easy-to-use GUI
- Implement message/SDS handling
- Implement automatic traccar updates with new messages