PSK31 Audio Beacon     

PSK31 Beacon

Project Description

App #1: Tone Gen


Source Code

PSK31 Beacon



PCB Layout

Source Code

Programming the SX

Useful SX Links

SX28 Overview

Beaconing Guide

Back to 
Digital Homebrewing Home Page

Application #1:


Although the PSK31 Beacon board comes with a pre-programmed SX chip containing the Beacon program and your custom text beacon string, you can burn a new program into it that we’ll develop right here. Don’t worry, you can always just load up the original Beacon code in the editor and program it into the chip again.

The simple Tone Generator program that we’ll create for the Beacon board uses a look-up-table (LUT) technique for putting sine wave values out to the R-2R D/A converter hanging off port B of the SX chip.  See the PSK31 Beacon schematic page for detail on how this D/A works. This continuous stream of sine wave values, each separated by a short delay, will form a 0-to-5V sine wave running at 1 kHz into the LM386 audio amp.

You could either enter the short assembly language source code program by hand as listed below, or you could download the source file  and load it up into the SXkey editor. Selecting the Assemble menu item should produce an error-free assembly and you can program your SX chip as described previously.

When you run the ToneGen program, you should hear a strong 1 kHz tone coming from the speaker hanging off the LM386 output. At this point you could change the value of thedouble-byte variable FREQ_HI and FREQ_LO and see how it changes the tone when the program is assembled and run again. The FREQ variable determines how long of a delay is inserted between each sine wave sample that is put out to the D/A … hence the frequency of the waveform is changed. 

Coming soon ...
As mentioned, this is a very primitive  program but we’ll explore various ways to enhance this basic technique in order to provide some real usefulness for the project. The next software updates for this project will tie in the
RS-232 serial communication line to provide some user programmability of the tone generator.  With this capability, you'll be able to connect the pcb to your computer with a serial cable and command generation of specific frequencies. Another future modification planned is to put a shaft encoder onto a few of the input pins to provide a manual frequency control that is reported back out the serial control line to a datalogging PC program.  

Yes indeed, there's lots of fun still planned for this base project. Please be sure to regularly check back here for a growing amount of detail and additional applications coming your way.

Page last modified: November 28, 2001

Copyright 2001 G. Heron, N2APB