Skip to content

Amateur Radio Receiver/Transceiver Channel Memory Files for Editcp and CHIRP

License

Notifications You must be signed in to change notification settings

tylert/freq-lists

Repository files navigation

freq-lists

This information is intended purely for educational purposes. It is your responsibility to ensure that you and your equipment are behaving themselves properly.

Requirements

You must have the following tools installed:

  • (REQUIRED) Python 3.10.x or newer; for using the "multi_outputter.py" script for processing the input data files
  • (REQUIRED) gojq; for working with JSON payloads
  • (REQUIRED) dmrRadio binary 1.0.23 or newer; for exporting/importing codeplugs to/from JSON and generating blank codeplugs
  • (SUGGESTED) editcp 1.0.23 or newer; for further editing codeplugs
  • (SUGGESTED) LibreOffice; for creating PDF handouts to accompany the programmed data

There are some really good programming tutorials at https://youtu.be/VExx628R0DM and https://youtu.be/Lw0Y-jQZMZ0 which are useful for learning about the digital side of things.

Running Things

# Initial setup
make && source .venv/bin/activate

# Create and upload new codeplugs
./scripts/generate_rdt.sh     # create generic codeplugs for anybody
./scripts/personalize_rdt.sh  # create specific codeplugs for my radios
dmrRadio writeCodeplug tmp/foo.rdt          # upload a single codeplug

# Fetch and upload new contacts
./scripts/fetch_db.sh         # download a bunch of fresh contacts
dmrRadio writeMD2017Users tmp/filtered.csv  # if radio is Retevis RT90
dmrRadio writeUV380Users tmp/filtered.csv   # if radio is Retevis RT3S

# Produce data in a format useful for analog radios
./scripts/generate_csv.sh  # create programming data for analog radios

Radio Programming Kiosks

Arch-based distros (Arch Linux, EndeavourOS, etc.), on x86 and ARM:

sudo pacman --no-confirm --sync gcc git go libusb pkgconf
git clone https://github.com/dalefarnsworth-dmr/dmrRadio && cd dmrRadio
go build

Debian-based distros (Debian, Ubuntu, Raspberry Pi OS, etc.), on x86 and ARM:

# Don't use the go provided by the OS as it is super old
# Fetch an appropriate tarball from https://go.dev/dl/
# Install the contents of the tarball somewhere convenient
sudo tar -C /usr/local -xvfz ${GO_TARBALL}

sudo apt-get --yes install git libusb-1.0-0-dev
git clone https://github.com/dalefarnsworth-dmr/dmrRadio && cd dmrRadio
go build

macOS, on x86 and ARM:

brew install git go libusb
git clone https://github.com/dalefarnsworth-dmr/dmrRadio && cd dmrRadio
go build

Windows users should probably just go fetch the pre-built (x86) binaries directly from https://www.farnsworth.org/dale/codeplug/dmrRadio/downloads/windows/ and https://www.farnsworth.org/dale/codeplug/editcp/downloads/windows/.

Converting Existing Codeplugs To Templates

# Export the binary codeplug as JSON and fix some values
dmrRadio codeplugToJSON codeplug.rdt before.json
gojq --from-file Retevis_RT3S.jq before.json > after.json

Generating Codeplugs From Templates

# ========
# WARNING:  Don't put spaces in the intro screen lines
# ========

# Create a data file containing your specific values
cat << EOF > VA3DGN.conf
{
  "GeneralSettings": {
    "IntroScreenLine1": "VA3DGN",
    "IntroScreenLine2": "3023396",
    "RadioID": "3023396",
    "RadioID1": "3021794",
    "RadioID2": "3023706",
    "RadioID3": "3021795",
    "RadioName": "VA3DGN"
  }
}
EOF

Starting a New Codeplug

# Create a brand new, empty codeplug
dmrRadio newCodeplug -model RT3S -freq "400-480_136-174" new.rdt

# Make it even emptier still
dmrRadio codeplugToJSON new.rdt new.json
cat new.json \
    | gojq 'del(.Contacts[])' \
    | gojq 'del(.Channels[])' \
    | gojq 'del(.GroupLists[])' \
    | gojq 'del(.ScanLists[])' \
    | gojq 'del(.Zones[])' > empty.json

DFU Mode

Retevis RT90 DFU mode uses orange emergency button + P1 + plug-in "hard" power (ignore "soft" power button).

Retevis RT3S DFU mode uses top side key + PTT + twist power knob.

Talkgroups

Hotspots and Tuning

VE3YXY -> 445.225

Admit Criteria determines when your radio is allowed to transmit. The recommended setting for repeater channels is Color Code Free; this configures your radio to be polite to your own digital system. You should configure your In Call Criteria to Follow Admit Criteria. Simplex channels should be configured as Always for both Admit Criteria and Always or Follow TX for In Call Criteria.

Linking and Transcoding and Repeater Building

Control Software
  Controller Software:  MMDVM Host
  Controller Mode:  Duplex Repeater

MMDVMHost Configuration
  DMR Mode:  On  (RF Hangtime:  2, Net Hangtime:  20)
  All other modes disabled
  MMDVM Display Type:  None

General Configuration
  Hostname:  ve2cra
  Node Callsign:  VE2CRA
  CCS7/DMR ID:  302093
  Radio Frequency RX:  449.400000
  Radio Frequncy TX:  444.400000
  Latitude:  45.50
  Longitude:  -75.85
  Town:  Ottawa-Gatineau FN25bm
  Country:  Canada
  URL:  https://oarc.net  (Manual)
  Radio/Modem Type:  STM32-DVM (USB)
  Node Type:  Public
  DMR Access List:  blank
  APRS Host Enable:  Off
  APRS Host:  noam.aprs2.net
  System Time Zone:  UTC
  Dashboard Language:  english_us

DMR Configuration
  DMR Master:  DMRGateway
  BrandMeister Master:  BM_3021_Canada
  BM Hotspot Security:  blank
  BrandMeister Network ESSID:  None
  BrandMeister Network Enable:  On
  DMR+ Master:  DMR+_IPSC2-Canada
  DMR+ Network:  blank
  DMR+ Network ESSID:  None
  DMR+ Network Enable:  Off
  XLX Master:  197
  XLX Startup Module:  B
  XLX Master Enable:  On
  DMR Color Code:  1
  DMR EmbeddedLCOnly:  Off
  DMR DumpTAData:  Off

Mobile GPS Configuration
  MobileGPS Enable:  Off
  GPS Port:  /dev/tty/ACM0
  GPS Port Speed:  38400

Firewall Configuration
  Dashboard Access:  Private
  ircDDBGateway Remote:  Private
  SSH Access:  Private
  Auto AP:  On
  uPNP:  On

Firmware and CPS

DMR SMS

Send a SMS message to the APRS destination (310999 in North America) with the following body...

SMSGTE @<phone number> <message content>

After a few moments you will receive an ACK message and the recipient will get a text message.

To have someone reply to you, send a text message to the number that sent you the text with the body...

@<callsign> <message content>

After a few moments you should receive a message on your radio!

Other Links

Maps

Tall Pines Rally / Rally of the Tall Pines

Happens on the 3rd or 4th weekend in November.