The CAT Software Interface

Top  Previous  Next

General aspects


The CAT software handshake between TurboLog 4 and the large variety of transceivers from different manufacturers follows a few common procedures (...fortunately..!). The implementation of these procedures, however, is as different as can be. It is unbelievable to see how many varieties of the same functionality have been invented.....obviously just for the purpose of preventing commonalities between radios of different manufacturers.


All communication, however, is based on the master slave principal. The user's PC represents the master and the TRX always is the slave. This means that all CAT communication is initiated by the master. The TRX only answers on request and will never send data on its own. As a result of this the TRX will not cause any interrupt to the PC's current task which in turn underlines the statement already made while discussing hardware aspects of connecting your transceiver. The master slave procedure does not require a separate/unique IRQ on one of your precious comports.


The price for the master slave method used in CAT communication, however, is some delay which needs to be managed. The PC being under control of TurboLog 4 sends out a command string which consists of a number of characters in a format the TRX will understand. The TRX's firmware decodes and processes the received command string. It finally sends back the requested data in a distinct arrangement of characters in a response string. This string is loaded into the receive buffer of the comport. The receive buffer waits until the previously known number of characters are received since the information which needs to be extracted is normally spread and/or mixed with other data all over the response string. Depending on the TRX the necessary delay until all information is returned may well be of the order of several 100 milliseconds. Of course there has to be a time-out limit for the program to be continued and an error procedure started if the TRX does not respond within a predefined time window. This window can be the shorter  the TRX sends less dummy characters and the higher the baudrate is. Just to give a short example:


A rig working on 1200 Baud and 8 databits plus 2 stopbits per character ( = 10 bits per character ) will take 1 second to transmit 120 characters. Typically a slim response of frequency data of say 10 characters will take about 83 milliseconds under these circumstances.


The following paragraphs describe the master slave procedure and what needs to be done to cope with its different implementations in greater details.


This topic was last edited on  Thursday, 17-Jun-2021,  at  10:49