The functionality of the QCX kit depends greatly on the firmware in the microcontroller. Since the launch if the QCX kit in August 2017, there have been a number of new versions providing more functionality and sometimes including bug fixes. The firmware version files are hosted by the QRP Labs groups.io forum. An inexpensive AVR programmer can be used to upgrade your firmware version, or you can buy the latest firmware chip from QRP Labs.

Upgrading your firmware

The QCX kit includes a 2 x 3-pin standard AVR header for In-Circuit-Programming on the board. Many suitable AVR programmers are available inexpensively on eBay and elsewhere. They have a USB cable to connect to a PC. On the PC you need software such as avrdude (very popular command line driven tool), or Windows programs with graphical user interfaces to avrdude.exe, for example Extreme Burner, Bit Burner, or AVRDudess. All are free. When upgrading the firmware, ensure:

1) Only use an original QRP Labs QCX firmware chip
2) Program only the provided .hex file (see above); do not change the Fuse settings, or other memories (e.g. EEPROM). 

CLICK HERE for a tutorial written by Simon VK3ELH on how to use an Arduino UNO and the AVRDudess program to update your QCX firmware. 

CLICK HERE for another tutorial written by Mike N5BGZ

Version history

Version Date Features
1.09a 28.Apr.2022 - Support 160m operation on the MS5351M by a time-delay 90-degree phase shift implementation, rather than relying on use of a 12MHz crystal which does not seem to work properly on MS5351M. With firmware 1.09 and up, a 25MHz TCXO or 27MHz crystal must be used for 160m operation. Not 12MHz crystal. 
- Bug fix: 1.09a implements a bug fix, CAT did not work properly (FA command) on 160m.
1.08 03.Dec.2021 Click here for operating manual 1.08
- New menu item in Other menu: AGC On/Off (for use with QCX AGC module)
1.07a 07.Dec.2020 Click here for operating manual 1.07
- Moved backlight control to triple-click of left button (increase dbl click delay to use this)
- CAT FA; command now returns beacon frequency if beacon is active
1.07 02.Dec.2020 Click here for operating manual 1.07
- Added FSKCW beacon mode
- Removed menu 6.1 Beacon On/Off enable; instead, beacon mode menu contain one of OFF, CW, WSPR or FSKCW
- Backlight enabled at power-up including Splash screen
- Bug fix: after cancelling beacon operation, manual transmit was on the beacon not VFO frequency
1.06a 12.Nov.2020 Click here for operating manual 1.06
- Bug fix: Semi-QSK mode, non-IAMBIC keying, no power output until entered and exited menu system
1.06 30.Oct.2020 Click here for operating manual 1.06
- CAT: OM command response shortened to OMQC;
- CAT: KY command set text is now a circular buffer; if full, it returns ?;
- CAT: KY command get is KYn; where n = 0 if buffer < 75% full, 1 if buffer > 75% full, 2 if buffer empty and previous sending is complete
- CAT: Sent message via KY is immediately decoded on screen at message completion, without delay or corruption by receive signals
- CAT: TB command get, the 3rd response character is now number of remaining characters to be sent;
- CAT: QU command set now clears the unsoliticted update event flags
- Experimental modification for better output signal on 6m band
- Enable sidetone during CW beacon operation
- Removed GPS Data menu, and now Cal menus show "Waiting" while waiting for GPS lock, protect against from missed 1pps
- Sidetone volume now beeps every time it is changed while in the menu
- New menu item 7.11 controls Backlight (QCX-mini only)
- Double-click rotary encoder toggles backlight temporarily (not saved to EEPROM)
- Experimental support for 160m operation; this requires a 12MHz reference crystal for the Si5351A
- Eliminate low power "backwave" during key-up in Semi-QSK mode
- Added Morse prosigns AR, KN and SK/VA. New menu "5.7 VA" if set to ON selects VA, otherwise SK
- Bug fix: When beacon enabled, started on ref freq at power up, until you went into a sub-menu and exited
- Bug fix: CAT: Corrected bug command circular buffer that corrupted commands sometimes
- Bug fix: CAT: Increased reliability of comms by increasing wait timeout for incoming characters
- Bug fix: CAT: If the command buffer overflows, truncate the current CAT command to prevent the overflow
- Bug fix: CAT: Updating keyer speed can no longer cause occasional display corruption
1.05 08.May.2020 - CAT: New QM command: allows complete menu items API
- CAT: New TB command: lets you read the decoded CW via CAT (and configurable event in the QU update)
- CAT: New KY command: initiates sending CW text
- CAT: New OM command: returns radio model, always returns OM0000000000QC
- CAT: New RX command: immediately forces the radio into Receive mode
- CAT: Baud rate is now 38400 (was previously 9600)
- Message menu order of items has been changed - interval and repeats are now first, before the messages
- Menu 7.10 CAT Notify is removed. Now set only via CAT QU1; and it is not persisted in EEPROM
- When LCD interrupts CAT, it now cancels any partially received CAT command
- Add 6m band, strictly for experimental purposes
- Bug fix: CAT: numbers did not have thousands delimiter stripped if the delimiter was not configured to comma
- Bug fix: Two CAT commands issued together did not work properly e.g. FA;FB;
- Bug fix: CAT did not work properly when S-meter enabled (corrupted display and CAT text)
- Bug fix: CAT "AG" command did not work
- Bug fix: CAT commands when editing menus, corrupted the menu contents
- Bug fix: Occasional corruption of least significant frequency digits when S-meter or clock was enabled
- Bug fix: DVM and RF Power readings incorrect and never went to zero, since version 1.03
- Bug fix: When GPS lock aquired, screen blanked and top line of GPS Info screen showed VFO A
- Bug fix: Frequency counter was broken since version 1.02
1.04 15.Mar.2020 - Add new CAT command KS to get/set key speed
- Add new CAT command AG0 (audio gain) for compatibility with N1MM logger
- Add menu "7.10 CAT Notify", when enabled, operator change sends a CAT QU notification message
- Add menu "7.11 Delim." to let you change the thousands delimiter characters in the frequency display
- Cancel automatic message sending with a key tap, without transmitting that key tap
- Now when tuning, decoded CW display is not temporarily blanked
- Menus changed from two options, to ON/OFF, to save codespace: 3.7 CW-R, 4.6 Semi QSK, 7.5 Cursor Blink
- Display G if GPS plugged in caused the practice mode, or M if transmitting message
- Bug fix: CAT responses had a NULL character after any frequency output, which upset some software using CAT
- Bug fix: Realtime clock wasn't updated during automated message transmission
- Bug fix: On manually setting realtime clock, the display was updated showing frequency - causing confusion
- Bug fix: Connecting GPS causing automatic practice mode to be entered incorrectly refreshed screen when in menu
- Bug fix: In Split VFO mode when Clock and CW decoder enabled, left character of real time clock was deleted temporarily
- Bug fix: Decoded CW could be written to wrong parts of the display under some circumstances
- Bug fix: When editing text, "Enter Right (finished)" did not work; "Enter (finished)" did what Enter Right should do.
1.03 03.Dec.2019 - CAT Control (TS-480 subset, see manual)
- Real time clock option, in bottom right of display, enabled by menu "7.8 Show clock"
- Clock will be automatically set from GPS if it is temporarily connected
- GPS plugged in, puts the radio in Practice mode AND does not key it anymore
- When GPS is plugged and removed, Practice mode is automatically switched off again
- Setting speed to 0, puts the QCX in Straight key mode
- Remove spurious short TX enable at power-up
1.02b 11.Nov.2019 - Bug fix: Sidetone problem in straight key mode (bug introduced in 1.02) 2)
- Bug fix: Sidetone volume very low when using low sidetone frequencies; sidetone volume parameter has been increased to 3 digits
1.02a 08.Nov.2019 - Bug fix: did not work with all LCD modules (minor timing issue)
1.02 06.Nov.2019 - Eliminate the faint "Woodpecker" clicking when S-meter active, tuning or CW decoder updates
- Eliminate click at start end end of sidetone audio burst (that was due to sudden change in DC bias)
- Can now operate sending stored messages while the RIT or Speed adjustment is active
- Now can handle either a 25MHz or a 27MHz reference crystal and calibrate properly in both cases
- Tune rate and RIT rate cursors can now be moved by rotary encoder push-and-turn (within 0.3s)
- Remove small click that occurred when exiting the menu system
- Bug fix: On GPS detect, which automatically sets Practice mode to protect PA. Now stops immediately
- Bug fix: S-meter was STILL disappearing, if CW decoder was switched off
- Bug fix: Battery icon was corrupted after editing any text parameter in the menu system
- Bug fix: On exit/disable beacon, can't use stored message sending features until next beacon start passed
- Bug fix: Listed tune rates in 3.4 not all available. now allows 1MHz, 100kHz, 10kHz, 1kHz, 500Hz, 100Hz or 10Hz
- Bug fix: RIT rate in menu 3.6 allows 10kHz steps which are not possible (RIT display is maximum +/- 9,999Hz)
1.01a 08.Oct.2019 - Bug fix: Decoder didn't work during menu editing and self-decoding your own transmission
1.01 07.Oct.2019 - Allow transmission while RIT adjustment is active
- Allow transmission while keyer speed adjustment is active
- Copy VFO A to B by Right button long press then Right button short press (within 1 second)
- Copy VFO B to A by Right button long press then Right button double press (within 1 second)
- Switch off DSP during transmit, improves responsiveness of keyer (DSP is not used during transmit)
- Break character -...- changed from | to = on display
- Dynamic calculation of Si5351A divisor rather than from a table based on band; enables changing band by preset freq
- Remove menu 3.9 (Band) - no longer relevant
- When in practice mode, 'P' is now displayed to the right of the frequency on the top row
- New menu 4.10 "Strght mode", choice of Both/Tip/Ring (so mono jacks can work)
- New menu 7.8 "Custom splsh", enables message 11 & 12 to be used as splash screen on power up (Factory reset is now 7.9)
- Automatic protection against GPS keying the transmit; when GPS detected, automatically enters practice mode
- WSPR encoding now re-encodes WSPR one transmit cycle sooner, in cases where the Maidenhead grid changed
- Bug fix: IAMBIC A mode keyer bug
- Bug fix: Disappearing S-meter after changing some unrelated parameters in the menu
- Bug fix: When CW decoder and S-meter both enabled, some digits of frequency display could get corrupted
- Bug fix: Tuning while keying resulted in loud tone in headphones. Tuning during key-down is now disabled
- Bug fix: Incorrect built-in bias caused CW decoder to track sending speed faster than it really was. Fix improves decoder
1.00g 22.Jan.2019 - Bug fix: Remove sudden start to keying RF envelope; it did not start at zero amplitude (problem is worse at very high keying speeds)
1.00f 01.Aug.2018 - Display "Si5351A Error" rather than blank screen, in the event of Si5351A failure
- Toggle LCD D5 during "Band Select" as a diagnostic
- Increase I-Q balance and Phase Lo/High configuration frequencies by 1 digit (Allows 1500Hz offset alignment)
- Bug fix: Sometimes corruption in initialization of tuning and rit rate
1.00e 07.Dec.2017 - Bug fix: stored message sending now sends at current keyer speed (not stored default)
- Bug fix: WSPR tones in the second half of the transmission were potentially corrupted
1.00d 19.Nov.2017 - Bug fix: During CW message sending, the displayed frequency was the beacon frequency, not VFO
- Bug fix: CW-R mode did not work (receiving on the lower sideband rather than usual upper)
1.00c 18.Oct.2017 - Bug fix: auto-character spacing feature did not work properly after version 1.00b
- Bug fix: display showed VFO frequency not WSPR transmit frequency, after a GPS calibration
- Bug fix: WSPR did not transmit reliably in every slot, sometimes it did, sometimes not
1.00b 06.Sep.2017 - Several keyer improvements particularly to Mode B
- Bug fix: transmit decode did not work well in Straight mode (bug introduced in 1.00a)
- Bug fix: prevent horrible loud noise sometimes if you enter menu while key is pressed
- Bug fix: prevent right key very long press sometimes causing loud sidetone & low power out
- Bug fix: stored message sending always sent the first message, regardless of selection
- Bug fix: CW decoder did not work properly while editing menu items
- Bug fix: When sending a stored message, the first character could be corrupted
1.00a 28.Aug.2017 - CW Offset configuration parameter now accepts an additional digit, e.g. 1500Hz for WSPR reception
- More frequent polling of paddle inputs (worst case interval is now 66us)
- Bug fix: Remove huge painful thump on power-up, and on exiting the configuration menu
- Bug fix: sidetone issue with random alternating high/low volume when sidetone volume was not 99
- Bug fix: sidetone volume trailing off over the course of a few seconds
- Bug fix: After factory reset, next time you entered the menu you were in item 7.1, rather than 1.
- Bug fix: "Save settings" did not work properly
1.00 21.Aug.2017 - First release version, for the launch of the QCX kit on 21-Aug-2017
Y1.00 01.Aug.2017 - YOTA summer camp buildathon version - considerably improved for the first official general release version