J.F.Drew © 2000-2017

Projects by John F Drew Site map

Mobile menus


The purpose of this program is to provide a mechanism to calculate the values to be read into a TAIT T800 series 1 radio's PLL system.

EPROM burners are getting harder to come by, especially as many relied on a parallel port from the computer. Others were DOS programs and didn't work at the higher speeds now available because the delays for the burn process were no longer correct.

The PLL system requires 8 nibbles (the lower nibbles of the bytes sitting in memory) to be sent to it to determine the PLL dividers and hence the frequency.

The sequence is:

1) PLL sends Chip enable signal to PIC indicating it's ready for business.

2) PLL activates appropriate addresses DS0, DS1, DS2 (active low)

3) PIC responds by putting data corresponding to the address request onto D0, D1, D2, D3. This data is the lower nibble of each byte, upper nibbles are ignored.

4) PLL reads the data and then updates the address to gather the next nibble.

5) PIC puts next byte onto the D0..D3 bus.

6) and so on until nibble 7 is read and the enable returns high.

Remember byte 0 is the first byte and byte 7 is the last.

On board switches of the PIC EPROM replacement board determine which 8 nibbles are accessed to determine the operating channel. Each subsequent channel is 8 positions higher in the EEDATA memory of the PIC.

The switches allow 8 positions, hence 8 channels are selectable using 64 bytes of PIC EEDATA memory.

Address Choices

111 = send byte 0 lower nibble

110 = send byte 1 etc

101 = send byte 2

100 = send byte 3

011 = send byte 4

010 = send byte 5

001 = send byte 6

000 = send byte 7 lower nibble

The maths in this Delphi based program make use of the information on this site:


You'll need to copy the URL into your browser, when I include a link in the helpfile there are script errors.

Access the Help file in the program for further information.

Note that the 20MHz offset used in David Osborn's article is not required in the TAIT radios. In addition, the transfer of bytes in the TAIT receiver does not need reversal of the bits. The SIMOCO base station of David's example has hardware wiring that requires this reversal whereas the TAIT radios are direct 1 to 1 connections.

Once this program has been fully proven in pratice a PIC version will be created although this program will be useful for anyone with a copy of MPLAB 8.92 and a PIC programmer as they will be able to change the bytes in EEDATA from within MPLAB and reburn the PIC. Not started at this point in time.

The fully completed bundle of software will see a plugin PIC based interface unit. This interface will read the contents of the onboard PIC, change the frequency where necessary and instruct the PIC to update its memory. The complete package will consist of this program, the PIC on a board replacing the EPROM, and an interface PIC board to adjust frequencies on the fly.

Download here

TAIT frequency calculations by John VK5DJ