Welcome to the new FlexRadio Community! Please review the new Community Rules and other important new Community information on the Message Board.
If you are having a problem, please check the Help Center for known solutions.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.

MATLAB CAT control

kr4kkr4k Member
edited May 23 in New Ideas
I posted a new MATLAB class definition script that enables all CAT commands plus audio or I/Q streaming. The posting is at the MathWorks File Exchange.

This is one of the classdefs I mentioned during the 2014 33th Annual  ARRL and TAPR Digital Communications Conference in Austin, TX.

This classdef is provided under GNU licensing. This implementation is Windows only, but can be adapted for other platforms. It uses the CAT serial port system and Windows audio.

The classdef contains a complete Flex and Kenwood CAT command library. There is also an example script showing how to use the classdef. Within the classdef you can 

I continue updating a parallel TCP/IP command and VITA-49 streaming MATLAB classdef. Once completed, I plan to post that too.

MATLAB is now available in a "Home" version for ham experimenters. You get the full capabilities of MATLAB for $149.



  • Justin SmithJustin Smith Member
    edited November 2015
    Thank you for so graciously sharing your script and for providing a overview of the use of the script within Matlab. I use Matlab and Mathematica for my professional work but this will be the first time I have used Matlab to access an external instrument. I appreciate your generosity. Justin W2ANN
  • kr4kkr4k Member
    edited September 2017
    Ran into a snag this morning that MathWorks will no longer allow the GNU free software license. MathWorks does allow for a BSD license, and I am exploring that. So it is temporarily off of FileCentral until we resolve this licensing issue. If you would like a copy directly, please send me a note.
  • Jerry W4UKJerry W4UK Member ✭✭
    edited November 2015

    Matlab offers a 30 day free trial. See their website for details.

    Also, Coursera has a free(?) matlab course which comes with a 90 day free matlab trial.

    Finally, Matlab offers a $99 deal for students - the Coursera course probably qualifies you as a student.

    Jerry w4UK

  • kr4kkr4k Member
    edited September 2017
    The MATLAB scripts and license files are now available via MathWorks File Exchange as: gklott/FlexRadioMatlab . This is also the GitHub repository that I will be using.

  • k3Timk3Tim Member ✭✭
    edited May 23
    Hello Gus,

    Thanks for doing this effort.  I haven't used it yet but looked at the SRC files and there's a lot of effort there.  Can one capture the I/Q channels and graph / process?

    I am very curious your opinion of the BSD Vs. GNU OS license?



  • kr4kkr4k Member
    edited September 2017
    Thanks. I welcome all suggestions and feedback.

    I will need to add recording audio or the DAX IQ recording.

    For this version, I concentrated on full CAT control functionality and transmitting audio (baseband) that I created.

    Capturing the I/Q channels and graphing / processing should use the MATLAB audiorecorder and getaudiodata functions, reading I on left channel and Q on right channel. You can also stream that into a SIMULINK "From Audio Device", and then process it other blocks.

    Will add IQ input to my ToDo list for CAT classdef. I am working right now on testing the Ethernet API class definition. Hope to have that posted in the next 10-14 days.

    Dr. Gus Lott  KR4K
  • kr4kkr4k Member
    edited September 2017
    On the BSD Vs. GNU OS license, I might be willing to use the three-clause BSD license. However, MathWorks only allows the 2-clause BSD license. BSD is not a copyleft license.

    I like the GNU GPL license because it is copyleft and other clauses.


Leave a Comment

Rich Text Editor. To edit a paragraph's style, hit tab to get to the paragraph menu. From there you will be able to pick one style. Nothing defaults to paragraph. An inline formatting menu will show up when you select text. Hit tab to get into that menu. Some elements, such as rich link embeds, images, loading indicators, and error messages may get inserted into the editor. You may navigate to these using the arrow keys inside of the editor and delete them with the delete or backspace key.