Skip to main content

Release beta version of CAT support uBITX firmware.

CAT support uBITX firmware

Import Note
A new version has been released v1.0.
Please use the link below to download the firmware.

This article is version 0.25.

Version 0.25 We will list the revised history and the added features at the end of this document, Because it is too much.

Important memo : The 0.224 version supported most of the software and operating systems, but the 0.25 beta version of hamlib, especially raspberry pi, such as Linux can not connect to the problem was obtained from the beta tester.
It has been modified now and will be applied in version 0.26. Thank you all for the beta test.

You can restore it to the original firmware whenever you do not like my new firmware.
(Do not worry )

If you have uBITX and usb cable, everything is ready. No devices or parts are required for CAT communication.

When the beta test period is over, I will reload it with the stabilized version.

Below are the test results that I and beta testers
-In Ham radio deluxe, you can set basic settings such as CW speed side tone as well as frequency and mode change. You can conveniently set uBITX values using Ham radio deluxe.

If you use wsjtx, fldigi, jt65-hf etc., you can control the PTT control as well as the frequency by setting FT-817 as shown below.
In digital communications such as the FT-8 and JT65, if only USB is connected to the computer, software such as wsjtx will control the uBITX's frequency and PTT.

I also experimented with control on Windows, linux, and Raspberry pi.

Memory Keyer function is also built in.
I will post about the memory keyer implementation separately.

I have created dedicated software that supports this firmware 100%.
With this software, you can backup and restore various setting values of uBITX and manage the CW Text of the built-in memory keyer.
In addition, you have built-in tips to launch your Callsign at boot time.
Most of the bugs I found were fixed.
For more details and videos, please see below.

1.A major change - Please refer to the bottom section for details.
  - I added the feature, but the memory usage is greatly reduced
    (just strings are F () processed -> )
  - I implemented the CAT protocol compatible with the FT-817 protocol.
    In other words, most software is compatible.
    Below are the test videos for compatibility with popular software.

  - Most of the bugs I found were fixed. (a lot of...)
  - Auto save frequency (protect EEProm, do not worry)
  - Added uBITX dedicated protocol to CAT communication.
    You can back up or restore the settings of uBITX through external software.

  - Improved process for CW Key input.
  - Built-in memory keyer.
  - The concept is to improve on software alone without modifying a single piece of hardware. so
  - So you can enjoy this with just a firmware upgrade without any modifications.

  How to use WSJT-X and Ham radio deluxe will be posted on other pages. (Because it is too long)

2.Install Firmware
Click the link below to download the firmware

See the link below for firmware upgrade instructions. I prepared for today.

If the firmware has been upgraded normally, the following screen will appear for rebooting for 0.5 seconds.

3.Test requirements
Thank you for your beta test.
Again, you can always restore to the original version. do not worry.
Most of the results of the first beta test have already been applied.

If possible, I would like to take a stress (or called load test) test.
For example, during CW Keying, the frequency shift to Ham radio deluxe.
Testing with WSJT-X is the longest protocol, not short FT8.

Please note that there is a problem with Arduino, and be aware of it in advance.

I am trying to transfer FT8 from wsjt-x in about 3 hours prior to firmware distribution.
Of course, testing it by connecting it to the dummy load to protect the transceiver.

I will post usage of the new firmware later.
The order of posting on the blog is as follows.

Most people will be able to use it without any explanation. They can use it right away.
Or watch the videos I uploaded to see how to set it up.
It is also good to use common functions and try it together when I post it.

I will post one or more each day.
  - How to set and use Ham radio deluxe, wsjt-x, JT65 etc.
  - UBITX usage for first time users
  - How to backup and restore uBITX using uBITX management program
  - How to use the built-in memory keyer in uBITX
    uBITX manager is required to use the built-in memory keyer.

  I was trying to stabilize and distribute after the first beta test.
  Applying the feedback from the first beta testers, But I also added features such as memory keyer. If stabilization is needed,  maybe i will remove one or more of the many features of the memory keyer.

The firmware was based on Fashar's uBITX 0.2.  It's changed so much now.
Modified or added functionality

1.Most of the bugs I found were fixed.
  - CW Tone code configuration Problem,
  - Frequency Control Problem - Go to 4 Ghz when going below 0,
  - Screen Update Problem,
  - Frequency Display Problem - Problems occur below 1Mhz,
   and more...

 2.Enhanced CAT communication.
  Compatible with FT-817 and FT-857.

3.CAT communication is not broken in CW or TX mode.
  If communication is interrupted by strong radio waves, it will probably be recovered within 10 seconds.
 include auto recovery - I have been programming with the FT-817 about 15 years ago, but I have experienced some broken protocol on TX occasionally. So I put this feature in.

4.New CAT Protocol Implemention
  - Read Write Frequency
  - switch VFOA / VFOB 
  - Read Write CW Speed
  - Read Write CW Delay Time
  - Read Write CW Pitch (with sidetone)
  All of these can be controlled by Hamradio deluxe.

5.Save mode when switching to VFOA / VFOB

6.Ability to change CW Delay
  Since it is fixed at 600ms now, there is a problem when communicating over 15wpm.
  You can change it with the radio dial, or change it via Hamradio deluxe.

7.Added Dial Lock function
  Because the encoder is sensitive, the recognition frequency will change sometime. so Added Dial lock function
  Press the function key for more than 3 seconds to lock or unlock.

8.The first time you press the CW key, it reduces the time to TX.
  However, we have added a function that can delay the transmission time of CW when switching to TX by CW key.
  When I tested it with my receiver, there was no big problem in transferring without delay (TX -> CW Interval).  But I implemention a TX->CW interval feature for personal choice. This may be useful when using external amp.

9.Automatic storage of VFO frequency
   was worried a lot because EEProm has a limited number of writes.
   Maybe the author has saved it only when VFOA and VFOB are converted.
   It was implemented by storing it only once when the frequency stays 10 seconds or more after the change.   

10.Program optimization
The global variable used in the program written by the author has a capacity of 67%. Above 70% ~ 75%, Arduino IDE started to alert you.
I reduced this to less than 40% and continued the next task.
(Instead, the program size increases, adjust the ratio later)

11.Improved speed in frequency display

12. Added CAT Protocol for uBITX
You can manage the memory of uBITX from the outside, and you can backup and restore the memory.

13. modified the default usb carrier value used when the setting is wrong.
14.Fixed a routine to repair when the CAT protocol was interrupted before program distribution.

Last full test Movie before release for tester


  1. Excellent, thanks for sharing your skills and innovation.
    I am looking forward to trying out your arduino code and software.
    Does your current software support the lcd touch display?
    I saw your demo and thought it would be a great addon as well.

    1. Thanks for your interesting.
      Source code released today. If you fork my source on github you can always see the latest version. I tried to release it after the beta version, but there were a lot of people asking for it. So the code will change from time to time.

      And uBITX is difficult to program because it does not have touch screen, but it can be easily implemented by connecting Raspberry pi.
      Now I'm preparing to do something interesting in raspberry pi.

      source code

      Ian KD8CEC

  2. Amazing coding. Congradulations.

  3. Hi Thanks for new CEC version of code, but I have slight problem. Mine is homebrew ubitx and it uses 27MHz crystal with SI5351, so I am not getting any output after uploading new hex file.

    For my homebrew ubitx I also need to disable " cwKeyer(); " in main loop as it causes issue with my setup. Can you please help me with these two issues?. Do you have any plans to share your source code.

    Thank you for your all efforts.

    Mahesh VU2IIA

    1. Sure! i am ready at any time to help you! Using 27Mhz, the VCO frequency seems to have changed a lot.
      If you do the test, I will modify some of the code and register the firmware file.
      or you can modify it yourself.
      The source code was scheduled to be released next week after the Beta version was released, but it was released today.So the code is likely to change from time to time.
      What I want is a modified source for 27Mhz that will be open to people like you who use 27Mhz.

      If you fork my project from github you will always see the fixes and I will accept it anytime you do pullrequest.

      source code

    2. Thank you very much sir. I will try to modify source file to suite my homebrew ubitx project. If required I will trouble you again, I hope you don't mind.

      Mahesh VU2IIA

    3. Mahesh
      I will cooperate whenever I can. Just when I finish my vacation and go back to research or project, I may not be able to answer immediately.

      Ian KD8CEC

  4. Hello, Thank you for you work :), i have a question- its same version of code that this version of 4x20 lcd ? ? this version also support cat, but i really want your cat version :) ? Maybe this your version with your cat but only modifited to 4x20 lcd ? Could you tell me :) thank you !

    1. I am sorry that the reply is too late. Comments on blogs are difficult to check quickly. The vk3dan code is also very good!
      If you want other things, please wait a moment. The concept so far has been a concept without hardware modification.
      Now a small unit of hardware modification will be done together.

    2. Thanks, i will wait, lcd 4x20 with full cat working without any hardware mod sounds good :)

  5. Hi Ian. I'm using a different Raduino, and wondering if the .27 calibration mode is similar to the original ?

    1. I can not tell you exactly because I do not know other Raduno. However, the calibration of my firmware is the same as the original source for uBITX. I am the only unmodified part.

  6. Is it possible to use the CAT interface without USB?
    Just with a separate 3-Pin serial connection RX/TX/GND ? (D0,D1 and GND).

    I tried but it did not work out - so I just wanted to check if I hade made a mistake or if the firmware does not support this

  7. Metaverse Development Company - Webllisto

    If you are looking for the best blockchain game development company. Do visit Webllisto, it is one of the best companies that provide smart contract development services, metaverse development services, Defi development services, Defi wallet development services, and internet marketing services for various industries. Visit the website -


Post a Comment

Popular posts from this blog

Introduction to UV-K5 HF Fullband receive version 0.3

Introduction to UV-K5 HF Fullband receive Version 0.3 This is an introduction to UV-K5 HF full-band reception firmware 0.3HF using SI4732-A10. This version is released separately from the existing UV-K5 CEC firmware version. because space is needed to store a large PATCH file to use SI4732-A10's SSB. 0.3HF added several functions to use SSB for shortwave radio and amateur radio.

Release CEC Firmware v1.200 for uBITX All version(include V2, V3, V4, V5)

Release CEC Firmware v1.200 for uBITX All Version (include v2, v3, v4, v5) I did the firmware work for v5 when uBITX V5 was released, but I release it now. I received the feedback from a thankful beta tester and tested it myself by converting my uBITX v3 to v5 but I was not sure. I ordered the uBITX V5 and delivered the correct uBITX V5, so I made a little more fine-tuning. If you use V2, V3, V4, you do not need to update this firmware.

Introduction to UV-K5 HF Fullband receive version 0.41 (Changed from 0.40)

  Introduction to UV-K5 HF Fullband receive Version 0.41 (Changed from 0.40) This is an introduction to UV-K5 HF full-band reception firmware 0.4HF using SI4732-A10. This version is released separately from the existing UV-K5 CEC firmware version. because space is needed to store a large PATCH file to use SI4732-A10's SSB. 0.4HF added several functions to use SSB for shortwave radio and amateur radio.