TwoToneDetect Paging Repeater


A two-tone paging simplex repeater for coverage fill-in

This page shows how to use a $25-$35 Raspberry Pi single board computer along with a two-way radio to create a two-tone paging simplex repeater.  These types of simplex repeaters are used to provide fill-in paging coverage for dead spots or indoors where distant transmitters provide poor coverage.  Two tone voice paging is the most common fire department alerting method in the U.S.

This device is based on the Python code used in TwoToneDetect.  When the program detects a valid two-tone paging sequence, it will record the page and the voice message that follows.  Then, instead of emailing the recording out like TwoToneDetect, this version of the program will activate a GPIO output (pin 26 active high, pin 29 active low) on the Raspberry Pi to key a transmitter, and then replay the recording.  It also has provisions for a second GPIO output (pin 24 active high) that can be used to control an antenna relay to switch between indoor and outdoor antennas for receive and transmit, as an example. See the video below for a demonstration.


Here are the Python files for the PagerPiPyr

See the PeaterPiPyr page and the TwoToneDetect on a Raspberry Pi page for details on the hardware interfacing and software setup.  In addition to the config.cfg file mentioned on the PeaterPiPyr page, you’ll also need a tones.cfg file that tells the program which tone sets to trigger on.  This tones.cfg file is just like the tones.cfg file used in TwoToneDetect, but with a few less parameters (since we don’t care about things like email addresses in this application).  Here are the required and optional parameters:

  • Atone – required for A/B tone pages
  • Atonelength – optional for A/B tone pages
  • Btone – required for A/B tone pages
  • Btonelength – required for A/B tone pages
  • Longtone – required for long tone pages
  • Longtonelength – required for long tone pages
  • Description – required for all pages
  • ignore_after – optional for all pages

What would you use this for?

Here’s one example.  There is a factory in our area where a number of volunteer firefighters from several departments work.  Because the factory is a large  metal building, pager reception inside is spotty at best.  There have been multiple instances of firefighters missing calls because their pagers never went off.  A device like the PagerPiPyr can be placed in an area in the factory with known good pager coverage (like near a window).  It will then receive the page, record it, and then retransmit it inside the building.  Since the transmitter is in the building, the coverage will be much better than the signal from the distant paging transmitter.  A more permanent installation may have a receive antenna outside the building and a transmit antenna inside the building.  The PagerPiPyr can control an antenna relay to switch  between the two antennas automatically.

Similar situations may exist where a hill or other terrain feature causes a localized “radio shadow”.  In that case, a simplex repeater placed at the top of the hill can provide “fill in” coverage in the “hole”.


This program is free for personal and non-commercial use.  For commercial  licensing options, please contact the author.