Alltune for Hamvoip v 0.32
March 10, 2024

 

Introduction

 

I am not a software developer and I didn't stay at a Holiday Inn Express last night. The last meaningful code I wrote was a custom constitutive theory for the modeling of high temperature composites using FORTRAN. My entire kit intentionally consists of a Quansheng UV-K6, Pi4, USB hotspotradios.com and a cell phone. But I have Hamvoip with DVSwitch Installed along with Allscan and Supermon2 and I wanted an easy way to surf DMR Talkgroups.

 

I started with command lines, used DTMF code configurations and tried Analog Reflector with hUC. But I wanted something compact enough to sit on my mobile screen or in a frameless control window on my desktop. This is what I came up with. All PHP from the ground up with a goal of being clean, lean, repeatable and easy.

 

Alltune is a work in a progress. Yes, the name and appearance are entirely based on Allscan because I found that entirely useful and well done. Allscan just doesn't do digital tuning. I originally started with some hacky code that put an interface into Allscan itself (and I'll include that method below if you prefer it). But this standalone version is easier to install and currently meets my needs the best.

 

Installation

 

Create a new folder /srv/http/alltune and place all the following files in it

 

 

Using Alltune

 

Open a browser and navigate to your.hotspot.ipaddress/alltune and the index.php should load by default.

 

Alltune is the default home page on my node. I did this by editing /srv/http/index.php to read :

 

<?php

header("Location: alltune/index.php");

 

You can also call fav_mgr.php, tune_mgr.php or index.php individually in the /srv/http/alltune directory.

 

The old OPTIONAL Hacky Method

 

I’m probably abandoning this approach, however, the original (and less functional) tgtune.php can be included directly into AllScan by doing the following:

 

 

        // Define TGIF Security Key and Brandmeister Selfcare Passwords

        $TGIF_HotspotSecurityKey = "Your Hotspot Key";

        $BM_SelfcarePassword = "Your Selfcare Password";

 

 

// Uncomment file path on the next line to Show DMR talkgroup tuner if available

$tgtune = 'tgtune.php';

if(file_exists($tgtune)) {

    echo '<br>';

    echo '<div style="text-align: center;">'; // Centering container

    echo '<iframe src="' . $tgtune . '" frameborder="0" style="width:500px; height:90px;"></iframe>';

    echo '</div>';

}

 

Save and refresh the page and the original tgtune panel should be part of your allscan page.

 

Final Notes

 

This is a work in progress. There's no security, user roles, special protections and it's not complete. Feel free to use this code to add the other DVSwitch modes you may want. I find that TGIF if the fastest and easiest to use, so that's why it looks this way for now.

 

This was developed and tested using Chrome on a PC. There shouldn't be anything unique that won't work in other browsers or operating systems, desktop, Pi or hosted. I just don't have the other platforms on which to test. None of this code is copyrighted or even attributed to me because it's PHP and ChatGPT. Use it, modify it, extend it, toss it as you please. Hams wrote the other solutions that I use. I'm just giving a little back that you may find useful.