Enhancing Situational Awareness using Ham Radio & TAK

Ham Radio Operators use TAK to aid unit tracking at major sports event.

This article describes a project to enhance unit tracking & Situational Awareness at the San Francisco Marathon in September 2021. This project resulted in the creation of several novel tools and solutions, outlined in detail below.

SFM2021 TAK Infrastructure

Background & Motivation

The San Francisco Marathon is a yearly foot race held in between San Francisco & Marin county Runners can participate in races ranging from 5K to Ultramarathon covering a diverse range of environments from city to waterfront.

The San Francisco Radio Club (SFRC) provides communications between 30 first aid & watering stations, 5 SAGs, a motorcycle-based Sweep, and other down-range spotters. SAG units are used to pickup and delivery racers who cannot continue back to race finish. Tracking these units is the responsibility of the SFRC Net Control operators, a task accomplished in previous years with a combination of paper maps and computer-based APRS.

For the 2021 race an effort was made to fuse multiple disparate unit tracking systems into a single pane of glass common operating picture (COP) for display at forward event command/ICP.

Challenges & Solutions


The marathon's geographic footprint covers both dense urban canyons, open ocean crossings, and regions in-between. These different environments present different signal and location positioning challenges. A myriad of tracking devices were used to address these challenges and each unit could carry more than one different tracking device. For example, a unit in a larger vehicle could cary both an APRS Beacon and a TAK Tracker.

Common Operating Picture Nomenclature & Visual Communication

Different position location information (PLI) sources use different unit identifying information. Of need for an effective COP is the use of a unified nomenclature for units & assets. These"tactical callsigns" can vary by event, sponsoring entity and command agency. (Probably covered within NIMS?)

A particular challenge of these different tracking systems is the disparate nomenclature each system uses for tracked units. (e.g. Some systems use verbose unit identifiers, others are simple callsigns.) Additionally, regardless of the unit name or callsign, the COP may have its own common language & visual representation (icon).

Additionally, the ability to visually represent unit 'typing' using a common reference (icons) aids in disambiguation and communication.

Situational Awareness Application Diversity

There are several Situational Awareness (SA) applications available across various form factors and end user devices (EUD). Each SA App adheres to different formats & levels of support for PLI Data.


A fusion of multiple different unit tracking systems overcame many of the challenges of holding a special event in a diverse and vast geographical footprint. Nomenclature normalization and standardization of icons for visual representation enhanced SA understanding across organizational units. Users in different operating modes & environments can use native SA Apps to achieve an event-wide COP.

TAK Tracker

TAK Tracker Limitations

TAK Tracker Feature Enhancements

  1. Allow auto-configuring using QR codes or deep links.
  2. Macro style callsign configuration. E.g. ‘CA-SF-SFM-${IMEI:-4}’
  3. Change TAK Tracker to support FusedLocationProvider.
  4. Change TAK Tracker to allow loading Data Packages from physical media.
  5. Change ATAK & TAK Tracker to allow loading Data Packages from HTTP endpoints.

Unexpected Outcome

TAK Tracker's use of Android GPS Location Provider alone did not present a notable unit tracking hindrance. This could be due to all units being either outdoors or in moving vehicles, and none being indoors or underground.

Future Considerations

Several gaps were identified in this project and are outlined below.

Add the CAD incident locations to the COP

Allow both dispatch/MEDCOM and field units to populate a COP map display with incident location and other SA data (call type, nature, disposition, etc).

"Runner Down" CAD incident on a map

Create a SA Kiosk

Forward operating positions, incident command posts (ICP), and emergency operations centers (EOC) can vary in available IT infrastructure, capabilities, and upkeep. Creating a "SA Kiosk", similar to a Google Chromecast, with PLI data feed pre-configured & mapping sources or tiles pre-loaded, would ease COP implementation in these environments.

Create dynamic Data Package endpoint

To ease configuration of TAK clients like WinTAK, ATAK, TAK Tracker, et al, Data Packages can be created dynamically from within a Node-RED Flow. This allows on-the-fly or in-the-field changes to nomenclature, icons, map imagery, and more, programmatically without needing to manually create Data Packages.


Multiple Tracking Systems

Logical data flow

Several unit tracking systems were used, each chosen to meet the various geographical, signal and location positioning challenges of the event's footprint.

  1. VHF Ham Radio APRS Beacons
  2. Orion Labs Push-to-Talk smartphone App
  3. TAK Tracker smartphone App
  4. Garmin inReach satellite location trackers

Cloud Infrastructure

Two Google Cloud Computing Servers instances were created:

  1. CentOS: TAK Server
  2. Debian: Docker, node-red, tileserver-gl, ownCloud

TAK Server & TAK Tracker

TAK Server was utilized as a PLI data destination endpoint for TAK Tracker, and a 'transformed' PLI data source for APRS & WinTAK. Individual users were auto-enrolled from ATAK & WinTAK.

A shared certificate was created for TAK Tracker to speed EUD provisioning. This certificate was bundled with a ATAK Preferences file into a Data Package and loaded onto the EUD using 'adb push' from an Android development workstation. Once loaded the TAK Tracker settings UI was used to install the Data Package and complete configuration, including updating the the callsign to replace the 'XXXX example with the last for digits of the IMEI.

TAK Tracker Setup Screen


Node-RED Screenshot

Node-RED was used as a PLI data transformation layer. A Node-RED Flow was created to ingest PLI data from different sources and rename or 'normalize' the data to fit the COP.

This Node-RED "PLI normalization" Flow added new capabilities over previous tracking solutions:

  1. A unit could be tracked using one or more different sources
  2. Unit nomenclature can be normalized to fit the COP
  3. Unit icons can be normalized to fit the COP visual language

Multiple Sources

The Node-RED Flow was configured to read PLI data from every tracking system and ingest their respective PLI data. Once data was ingested, it could be transformed and delivered to other SA Apps in their native PLI data formats.


Name normalization

The Node-RED Flow's "PLI normalization" capability allowed the transformation of a disparate PLI Data and its respective unit identifiers to be normalized to the COP nomenclature.

As an example, an APRS Beacon could be transmitting to the APRS Network with a callsign of 'W2GMD-TAC-09', while an Orion user could be online with the username 'Greg A.'. The PLI Normalization Flow can rename each of those to the unit identifier 'SAG 2'.

Icons & Reference Image


The Node-RED Flow allowed a single reference image to be applied to each unit across different SA Apps. As there was existing COP visual language in use, Font Awesome fonts were used a standard reference icons for all SA Apps. A Data Package was created for WinTAK & ATAK matching that used by Node-RED Worldmap.


tileserver-gl screenshot

tileserver-gl was used to deliver event map tiles to EUDs. Maps were taken from an event planning PDF and split into individual map tiles using mapTiler's desktop tool. tileserver-gl was running inside a Docker container on the Google Cloud Instance Debian host.

Camera feeds

A common & routine request over the radio was for location census, e.g. "How many runners are there currently at the intersection of 16th & Potrero Streets?" This question, and the radio traffic/bandwidth required to answer it, can instead be answered by viewing a camera fixed or pre-positioned at critical positions, such as start/finish, choke points or security gateways. Once enabled these cameras can be displayed in the COP interface.

Camera integration utilized existing public feeds from CalTrans, as well as camera feeds from the Bay Area Mesh public service high speed wireless mesh network.

CalTrans Camera in ATAK

BAM Camera Diagram

BAM Camera in ATAK


Orion utilized the Orion PTT multitenant service & Orion Aster workflow tool.

Garmin utilized the garmin xxx service with a Garmin inReach mini

Smartphones used by TAK Tracker & Orion users were Samsung Galaxy XCover Pro and varied between Verizon Public Safety and AT&T FirstNet.

VHF Ham Radio APRS beacons varied.

SFM 2021 Live Data


The San Francisco Radio Club would like to thank all the Ham Radio operators who volunteered for this event.

APRS is a registered trademark Bob Bruninga, WB4APR

TAK Tracker, TAK Server, WinTAK & ATAK are managed by the TAK Product Center.

Node-RED is copyright OpenJS Foundation and Node-RED contributors.

Funding for BAM/SFWEM was provided by a grant from Amateur Radio Digital Communications (ARDC).

AREDN is Copyright © 2015-2021 Amateur Radio Emergency Data Network Inc. More information on AREDN can be found at www.arednmesh.org

Special thanks to the Ham Radio Operators who maintain the APRS Network around the San Francisco Bay Area and Northern California.




blog comments powered by Disqus