Anytone AT-D878UV not displaying roaming channel – fixed!

When I got my first Anytone AT-D878UV in 2019 the roaming function used to display which channel it had roamed onto but later on, probably after a firmware upgrade this disappeared rendering the roaming function rather useless.

This continued even though I switched to the latest AT-D878UVII Plus. I recently asked a friend who also got the latest model if he had the same problem – which he hadn’t.

This made me suspect that this is an error that had occurred in my codeplug and continued to exist even though I’ve switching models (since the RDT-files are upward compatible I didn’t bother to make a new codeplug for the new radio, so I just opened the RDT-file from the old one).

So I exported everyting on my current codeplug to CSV-files, went into the CPS and made a new codeplug, imported the CSV files and walked through Optional settings to set up everyting as I wanted. Then wrote the new codeplug to the radio and guess what – now it displays the channel it is roaming on!

Acymailing Joomla frontend error 'Uncaught ReferenceError: acymModule is not defined' solved

Acymailing Joomla frontend module error ‘Uncaught ReferenceError: acymModule is not defined’ [Solution]

To solve this, I changed the settings of the module to -> Advanced -> Load javascript module = On the module itself

Anytone AT-D878UV / AT-D578UV wishlist

This is my wishlist for features / fixes for the Anytone AT-D878UV and AT-D587UV DMR radios. Comments, additions and suggestions are welcome, contact me on Maybe the Anytone people will read it 😉 I will submit it through my dealer as well, for them to forward to the Anytone developers.

  • In the analog APRS message, add the possibility to enter a code which will be replaced by the radio’s current frequency, mode etc so people who sees my APRS packet knows what frequency I am listening on, for example %QRV1 will be replaced by the frequency, mode etc receiver 1 is set to. And %QRV2 will be the corresponding for receiver 2 in my radio. For example, if receiver 1 is set to 434.650 MHz DMR, CC04, TS2 the analog APRS will become “434.650 CC01 TS2”. And if it is set to for example 145.600 MHz FM it would become “145.600 FM”.
  • Make APRS Voice Alert work. The problem is that CTCSS filtering is done before AX.25 APRS decoding. Turn them around, so AX.25 APRS decoding is done before CTCSS filtering. Doing that, Voice Alert would work well on the Anytone since you can select no CTCSS for the APRS transmission but select CTCSS, both TX and RX for the APRS monitoring channel, which also will be used when you press PTT to make a voice alert. (Today, if I set CTCSS RX filter to 136.5 Hz in europe or 100 Hz in US, no APRS will be received at all.)
  • Scanning. When scanning and the scan stops on a channel with traffic, it would be very nice if the radio stayed on that channel when pressing exit to stop scan. Now it goes back the the channel that was selected when scanning started and I have to manually go to the channel with traffic. Also a quick press on the PTT should stop the scanning on the current channel.
  • Roaming. Please bring back so the radio displays which channel it is roaming on. This was the case in early firmwares but disappeared, so now it just displays the channel that was selected when roaming was started. Which means that on a roaming channel, I have no idea which repeater I am using or even which band I am transmitting on. Useless! I know there was a problem if there were more than one channel in the roaming zone with the same freqency, CC etc, the first one in the list matching was displayed even if it was the wrong one. Still, this is better than now knowing at all.

Analog vs digital APRS

There is actually no such thing as “analog” APRS. The traditional APRS over AX.25 on 144.800 MHz (or 145.390 MHz in other parts of the word) is actually defined as a digital mode.

However, Anytone has a possibility in their radios choose wether to send APRS over AX.25 or as position data over the DMR channel. This settings can be found in MENU -> APRS -> Upload Type, “A -Aprs” for APRS over AX.25 or “D – Aprs” for using the DMR. In Anytone they call these modes “Analog APRS” and “Digital APRS”.

APRS over AX.25 – “analog” APRS

In this mode positions are transmitted on a simplex channel (144.800 MHz in IARU region 1) and can be received by anyone in range. The packets can be repeated by digitpeaters (WIDE1 for local “fill in” digitpeaters and WIDE2 for wide coverage digipeaters). If the packet hits a digitpeater with an I-gate it is transported into the APRS-IS system and can be seen in

The traditional APRS over AX.25 packet radio has many more functions than just position reporting, such as telemetry, weather reports, messaging etc etc. If your radio is capable of receiving APRS you can also see other hams in the area (position, distance, direction etc).

APRS over DMR – “digital” APRS

In this mode, the radio uses the built in function in the DMR specfication to transmit position data. When this position data reaches the Brandmeister servers it is converted to APRS and fed into the APRS-IS system and can be seen on

APRS over DMR is limited to only position data so if your goal is to just show up on, this can be the mode of choice for you. You miss out on all other features of APRS when using DMR or “digital” APRS.

If you look at the APRS menu on the Anytone for example, the APRS SMS function is only availible for “Analog APRS”.

APRS SMS only in
APRS SMS not availible in “Digital APRS” (over DMR)

For me, I choose the “old school” APRS over AX.25 all days in the week 🙂

APRS (packet radio) – FM wide or FM narrow?

Looking at many how-to guides for the Anytone AT-D878UV / AT-D578UV and APRS, it can be hard to determine if APRS should be transmitted as FM (20 kHz bandwidth) or FM narrow (12 kHz bandwidth). Some guides show WIDE while others show NARROW.

The answer is clear in the IARU region 1 VHF band plan – APRS on 144.800 MHz should be transmitted using FM narrow.

Anytone AT-D878UV analog APRS TX not working

Anytone AT-D878UV analog APRS transmissions not working

My analog APRS transmissions with the AT-D878UV was not received by any other stations. The problem was that when the codeplug is created (using New in the CPS), the values for Transmit delay and Prewave Time is set to 0 (zero) for APRS and this will not work (probably to battery saving as this is not a problem with the AT-D578UV for example, which will work with much lower values for Transmit Delay and Prewave Time).


In the CPS -> APRS -> set Transmit Delay to 600 ms and Prewave time to 600 ms.

Anytone AT-D878UV analog APRS TX not working
Anytone AT-D878UV analog APRS TX not working – solution


Ana Aprs Tx should be set to “Narrow” according to IARU region 1 bandplan.

What is Transmit Delay and Prewave Time?

I’ve tried to find an explanation to these values online but haven’t found anything closer than “it controls the time after activating the transmitter until data is being sent”. So I tried setting each value, one at a time to it’s maximum and this is what I think it does:

  • Transmit Delay: The radio starts transmitting a packet but it sounds like it waits “Transmit Delay” milliseconds before it starts transmitting any valuebla data. During this time my guess it is filling the packet with zeroes.
  • Prewave Time: The radio pulls the PTT but waits “Prewave Time” milliseconds before it starts to send the packet. During this time, the radio just sends carrier.

If I set the Prewave Time too high, my receiver will not receive and decode the packet. I’ve experimented with values for Prewave Time with different values and between 80-600 ms it seems to be working.

TigerTronics TigerTrak TM-1 configuration under Windows 10

This little APRS-tracker from the late 90’s or early 00’s is a neat little device, however pretty old. It uses an external GPS receiver (via RS232) and connects to a radio, like a HT for example.

According to the manual, the configuration utility runs under Windows 95 or 98 (yes, indeed old stuff). I have a TM-1 lying in a box collecting dust so I figured that I should fire it up and see if I could use it for something fun (today APRS is gaining some attention again since many new radios has analog APRS rx and tx build in, like the Anytones).

It turned out that it worked fine under Windows 10. I used an USB to RS232 adapter. In the device manager, find the COMx-port adapter, under Properties -> Port -> Advanced, I had to select COM1 to COM4 since the old software just supports these ports.

I installed it and right clicked on the program file for the TigerTrak configuration utility and selected Compatibility -> Win 95 (not shure if this is needed but I did it anyway).

To connect the TM-1 to the configuration utility, first start the utility. With the TM-1 connected to the serial port (straight cable), power it on while holding PWR and MODE simultaneusly. The software should indicate CONNECTED and the LOCK led on the TM-1 should go green.

As special path 1 i used WIDE1-1 and special path 2 WIDE2-2. This will cause packets received by a WIDE digitpeater to repeated two hops. If that is overkill (like in an urban area with many digipeaters) you could use WIDE2-1 to limit it to one WIDE hop instead.

Nowadays there is a specific TOCALL for TigerTrak units: APTIGR

HP Proliant “Hardware RAID support is disabled via NVRAM Configuration Setting”

I got my hands on a used HP Proliant server with P420i raid controller, however was unable to create a logical raid drive using the ACU. A message while booting shows “Hardware RAID support is disabled via NVRAM Configuration Setting“. It turns out the raid had been disabled by enabling hba mode.

This can be solved but it is a bit tricky. I used information from the following sources:

  1. Connect one of the network ports to a switch on a LAN where you have a DHCP server and and Internet connection (so you don’t have to fiddle with manual network configuration).
  2. From another computer, download Debian Live ISO. I used the “standard” version (link above).
  3. Boot the server on Debian Live either by making a bootable stick or mounting it via ILO (I had to use Firefox, in Chrome the ISO was unmounted mid process)
  4. When booted on the Debian Live do:
    sudo nano /etc/apt/sources.list
  5. Add the line to the file and save it (CTRL-X):
    deb jessie/current non-free
  6. Add the keys for the repository:
    sudo curl | apt-key add -
    sudo curl | apt-key add -
    sudo curl | apt-key add -
    sudo curl | apt-key add -
  7. Install ssacli:
    apt-get install ssacli
  8. Check the status (you will se hbamode true somewhere):
    ssacli controller slot=0 show
  9. Disable hbamode:
    ssacli controller slot=0 modify hbamode=off
  10. Now reboot the server, remove the USB stick or ISO using ILO and press F5 during boot to start the ACU. Now you should be able to create a logical raid drive.

Joomla 3 You can’t remove your own Super User permissions [solved]

On a Joomla! 3 site I got the error “You can’t remove your own Super User permissions.” when trying to save global configuration.

It turned out some previous admin had set the file permissions on this file so the system wasn’t allowed to write to it. I set rw permissions to it using FTP connection to the server and the problem was solved.


apache2 randomly uses old self signed certificate

On a site with a valid SSL certificate, sometimes a page load would result in a warning about being insecure. When inspecting the certificate, it turned out to be an old self signed certificate that shouldn’t be in use any more since the site now has a valid “real” SSL certificate.

Reloading the page a couple of times after the problem occured, and the site loaded again with a green SSL “lock” symbol. But randomly the problem kept occuring.

Even after deleting the old self signed certificate files from the server and restarting apache2, the problem remaind.

It turned out that neither systemctl restart apache2, service apache2 restart or apachectl stop / start killed all running processes.

To verify this I did apachectl stop and then ps ax | grep apache2 revealing there where still running processes. After killing each of them manually I started apache2 again and the problem was resolved.