Anytone 878 firmware update 1.25, 1.26, 1.27

Most devices of this sort get an update lifecycle of a year or two, max, and then they're left as-is in the state they were in. Sometimes that's fine, sometimes it's not.

Anytone 878 firmware update 1.25, 1.26, 1.27
Brand new firmware, what could go wrong!

In the case of the Anytone 878, they continue to support the radio and have been making small incremental improvements, until today, when they made rather large improvements.

The Anytone 878 has had roaming for quite a while, perhaps from its inception, but the way it worked was it would ping the repeater it was on and if it didn't get a response it would then cycle through the rest of the repeaters which were configured to roam until it found one that responded.  Crude, but functions.  Today Anytone released a firmware that still supports the old roaming method but also adds GPS roaming which makes this radio a LOT more powerful.

GPS Based Zone Roaming

For example, each city around me has a repeater in it, and there is certainly some overlap between repeaters but ideally, I would use the closest repeater to reduce my power output.  Now I can let the radio roam on its own using the GPS location and let it pick the correct zone for my location.  What really happens is if you have everything enabled and you are within a matching GPS Roaming Zone it'll just simply switch to that zone, nothing more to do.  If you're outside of a GPS Roaming Zone it will, presumably, do nothing at all.  And if you disable GPS Roaming it also does nothing, which is good because if you leave it enabled you effectively can't switch Zones at all as it will switch it back for you.  And by the way, this is not only useful for DMR; it can also work perfectly well on an Analog zone as well.

However, I don't know what happens if two GPS Roaming Zones overlap.  I personally have a DMR zone on the top Channel and an Analog zone on the sub-Channel most of the time.  I am not 100% sure but I don't think it'll really do more than one GPS Roaming Zone and it won't switch both the main Channel and sub-Channel.  When I experimented with this it appears to just go to the first matching GPS Roaming Zone on the primary Channel and stay there, but it does not do anything with the sub-Channel which is both good and bad.

I suspect however that you could do something like the following.  Say you always use Simplex with your buddies hiking in a particular part of the city, you could set a Zone at the top of the Zone list for that area and the radio will automatically switch to that Zone when you're in the area.  Meanwhile, you have a much larger GPS Zone set for normal repeaters and when you leave the hiking area it will switch to your normal repeater Zone.  A small region inside of a larger one.

If your zones are set up like mine where I mainly just have a single DMR Zone, not to worry, they also added a "Hide Zone" functionality so you can add more Zones to cover more GPS areas, add the respective repeaters, and then hide those zones so you don't normally see them, but the radio will switch to them automatically.  Some folks like to organize zones into locations/regions so GPS Roaming will work perfectly as-is for those configurations.

Setting up GPS Roaming

Go to the GPS Roaming section in the GPS and just fill out the table.  Zone name, coordinates, and most importantly set the Radius in either feet or meters, depending on your chosen units.  This is what possibly trips some folks up; thinking this is surely in miles/km, not feet/meters!

As noted above, it does seem to evaluate from the top down, as soon as it finds a match it will use it.  So if you have overlapping zones you'll have to put the more specific ones first.  Then when you want to use GPS Roaming just turn on the GPS and enable GPS Roaming in the radio through the menus.

You may have the need to create more Zones to have more granular GPS Roaming, such as you may have all of your DMR repeaters in one zone, but if you want to only have one repeater when you're in a location, put it in its own zone and set up GPS Roaming for that zone and location.  You can hide the zone so it doesn't otherwise show up in the radio when changing zones.

Limitations to GPS Roaming

GPS Roaming is a really great feature, however, it's not perfect.  As mentioned above if you have GPS Roaming turned on and change Zones manually when the radio checks it will automatically switch Zones on you.  Which is great when you want it to roam, but can be frustrating if you're just trying to use another Zone that isn't necessarily tied to a geographical area.

My personal workaround is to just disable GPS Roaming when I don't need it, but there are some other possible things that Anytone could implement.

One option might be to have a flag for the Top and Bottom channels on the radio to allow Roaming.  For example, you could allow Roaming on the Top channel, but not on the Bottom one.  So if you want to use an arbitrary Zone while GPS Roaming is enabled you would use it on the Bottom channel.

Another option might be a flag to set on a Zone that effectively disables GPS Roaming while in this Zone, so when the radio is set to that Zone it does not do any GPS Roaming.

Another possible option could potentially be the radio will not roam to another Zone if the radio has been manually changed, perhaps with a configurable timeout after which the radio will roam again.

But wait, there's more!

Another neat thing they added to this firmware is the ability to select up to 8 Analog APRS frequencies and assign any of those 8 to channels.  For example, you could primarily use 144.390MHz (in the US) on most channels you want to report APRS on, but you have an event APRS frequency that collects event data and you could assign that to the frequencies you're using for the event.  Or perhaps at your house, you have a digipeater set up on an oddball frequency, or even on 70cm, you can set up channels to use that frequency.  Honestly, I doubt I'll ever use anything beyond the standard one but I do think this overall functionality added a feature that did not exist before and that is broadcasting analog APRS when on an Analog FM channel which was not APRS.  For example, a repeater you listen to you could have APRS transmitting to 144.390MHz while monitoring the repeater.  I could be wrong here and this was always possible and I only considered it when pondering how to use this new flexibility.

Other Features Added

My 878 does not have APRS receive, only transmit, but it appears to me from the changelog that you can now receive APRS SMS on the models that support receiving APRS at all.  Previously this was not possible to my knowledge, only very specifically formatted location/beacons, not freeform SMS, so this may be another major new improvement that I'm just not really familiar with because my radio didn't support APRS receive to begin with.

Sending SMS on Analog APRS was also added, but sadly only supported on those radios that can also receive Analog APRS.   Not that I send messages on APRS frequently, even with my Kenwood D710G mobile, but it'd certainly be nice to have the option.  In case you're unaware, the 878 could previously only send location beacons, but not arbitrary messages, on Analog APRS.  It can send arbitrary messages using Digital APRS; ie: on a DMR channel.

Another nice feature added is you can now manually change the default Talk Group and RX Group for a channel on the radio itself, which was previously only possible via the CPS.  There were also some other tweaks and bug fixes.

Features I wish were added

It would have been pretty sweet if it could set both the Primary Channel and Sub Channel Zones with GPS Zone Roaming, but it only sets the Primary Channel, doesn't matter if that's the top or bottom one.  If you switch from the Primary Channel to the Sub Channel, it will then change the Zone to the first matching GPS Roaming Zone as described above.

But, what's the catch?

I did notice a bit of a quirk when I first installed the update but pretty sure it's sort of user error, sort of not.  When I imported the 1.24 codeplug into the 1.25 CPS it still had all of the GPS related information set, but the CPS itself was set that I did not have GPS or APRS so those options did not otherwise show up in the CPS and the radio acted rather odd; transmitting APRS using a fixed location and not waiting on the GPS.  Once I turned on GPS and APRS in Tool->Options and wrote to the radio again everything seems fine.  Every guide I've ever read says setting your radio options are one of the first things you need to do and when you update the CPS for the Anytone you're effectively installing a brand new app as far as I can tell, so having to set these options makes logical sense in a way, however, as a user I would expect an app I am upgrading to maintain settings from the previous version.  Ideally, these settings would just be set in the codeplug, which they do not appear to be.  So long story short; I doubt this is a new bug, rather an existing limitation.


  • Hide Zone may be default for all of your current zones, so you can't just hit Up/Down to change zones in the radio
    • In the CPS, open the zones and just uncheck this option for all of them and re-write the codeplug to the radio
    • Some users said all of their Zones were hidden, personally, none of mine were. I'm not sure why there would be different behavior noted from user to user.
  • APRS Callsign entry requires capital letters
    • Otherwise, you may think it only allows numbers, must be capital letters.
    • I did not recall this being the case in 1.24N but when I re-tested it on the older CPS the same thing happens; if you try to type in lowercase it doesn't work.

Any other new bugs I find I'll report here.

Where do I get it?

Normal spots, I would prefer to not link directly to any of them but they're all the same thing.  Keep in mind that some folks will wait longer than others to release the firmware to their customers so they can do some additional testing.  And some folks will prefer not to update at all as what they have currently works fine.  It's all up to you, I prefer to tinker around with radios and new firmware is one aspect of that.  Just make sure you get the right version for your radio.  They released updates for the 578, 868, and 878 today and each of those has several models of their own so just make sure you pick the right one.  Read the instructions, make sure you follow them, and you'll have a fine experience.  Just, uh, remember to turn your Options back on.  ;)

Anytone D878UV Changelog for 1.25

For reference, here's the changelog for the D878UV, not the II model.  D578, D868, D878UVII, etc, will likely have different changelogs, however as far as I know the added features are similar between the models.

  1. Allow selecting TG and RX group list for the new channel created in radio menu.

  2. Improve the Single Frequency Repeater unstable problem.

  3. CPS->APRS->Analog, add 8 groups analog TX frequency. In CPS->Channel->Analog APRS Report Freq, allow selecting a TX frequency to transmit the analog APRS.

  4. CPS->Common Setting->Channel ->DMR Mode, add “DCDM TS Split” mode. In this mode, the radio receives on the selected slot in the channel, but in transmission it will use the other slot. This configuration is only in use when the radio talks through a D578UV in repeater mode with fixed slot.

  5. CPS->Common Setting ->GPS Roaming, allow user set a list of GPS locations, when GPS positioning is within the preset radiation radius of coordinates, the radio will switch to the corresponding zone. CPS->Common Setting-> Optional Setting ->GPS/Ranging -> GPS Roaming should be set ON to enable this function(make sure the GPS should be ON first).

  6. CPS->Common Setting ->Zone -> Zone hide, add Zone Hide function in the Zone menu, it allows user hide some zone when they don’t need it on display. Since the Zone Hide is new inserted item, it may be checked automatically when open an existing codeplug. CPS->Tool-> Zone Hide Operation, allows you check or uncheck all Zone Hide.

  7. Add APRS SMS function in the radio menu, allows the radio to receive and transmit APRS message.

(Valid only when install the optional BT+APRS board)
Sending APRS Text from one AnyTone radio to another that has the APRS Rx feature.

Go to the radio Menu –> APRS –> APRS SMS where you can add a text message using the microphone keys, use the # key to switch from alpha to numbers, etc.

After entering your text, confirm it with the Menu button to get to the next Call Sign / SSID entry screen.

Enter the Call Sign and SSID dash number for the user you want to send the message to; use the # key to switch from alpha to numbers, etc. When you confirm the Call Sign the APRS test message will send.

NOTE: APRS SMS TX setting is using the CPS->APRS-> Analog setting, so the received channel should have the matched frequency setting/CTCSS setting/band width to the TX radio's APRS setting, and have the APRS RX turned on.

  1. CPS->Common Setting ->Optional Setting->Key Function, add “Ana APRS Info”, for fast accessing the received APRS information. (Valid only when install the optional BT+APRS board)

  2. CPS->Common Setting ->Channel -> Send Talker Alias, make the Talker Alias to be private setting for each channel, instead of public setting for all channels.

  3. CPS->Tool -> APRS information Manager, allows the CPS to read the received APRS message from radio and export. (Valid only when install the optional BT+APRS board)

  4. Add “Draft” in the Messages menu, unsuccessful SMS is saved in draft and can be resent.

  5. Add timezone GMT+5:30(India), GMT+5:45 (Nepal), GMT+4:30(Afganistan), GMT+3:30(Iran) GMT-3:30 (Newfoundland, Canada), GMT+8:30 (Eucla)

  6. Change the APRS message to be a lower priority than menu, the radio will not be kicked out of radio menu when receive the APRS message.

  7. Correct the reverb/echo sound issue when transmit analog in the A+D channel.

Changelog for version 1.26

Primary changes here were fixes for "repeater access issues", of which I did not experience or haven't heard of other people mention but none the less they put out this quick fix to fix what sounds rather important so I updated to 1.26 as soon as it was released and so far no obvious differences, which is good.

Here's the changelog from 1.26

  1. Resolve the issue in V1.25 that radio can’t make contact with Repeater.
  2. Resolve the issue that Talker Alias setting is not saved in export CSV file.
  3. CPS->Tool-> Channel Talker Alias Operation, allows you check or uncheck all Talker Alias in channel.

Update April 12, 2022 - Version 1.27

As of this date, there is an update, version 1.27, however the changelog is so minimal I have not yet at this time updated to this version, however, I am curious about change #1.  I suspect this is a minimal 'fix' to the fact that if you have GPS Roaming on and switch to the Sub Channel, it starts GPS roaming there as well.  Not sure, I'll update this post when I've given it a try.  Change #2 makes sense as these two were never possible as Long Press really anyway, or they were always Long Press, depends on how you look at it.  If you assigned these to a Short Press they "took over" the Long Press anyway.

If you're updating your radio from an older version you might as well use 1.27; I have not yet heard anything negative about it.  It does still have the same quirky CPS issue that defaults to hiding Zones.  Here's the changelog, for those interested.

  1. Set the sub band default OFF when GPS roaming is turned On, to avoid the issue that sub band VFO channel jumps to random channel.
  2. In CPS->Optional Setting-> Key function, remove the Monitor and SubPTT from the long key function.
  3. Resolve the issue that export .dcf file doesn’t work with Contact Manager V270.