Flatten the power curve and set your power out in software

John VK2ETA  has some pretty good ideas. A few days ago he worked on an AGC system using the first IF stage (at 45MHz) to control gain at the front end of the system.   He has now got some pretty good results using a limited amount of memory in the firmware to flatten out the power curve on transmit.  At this stage it only works in voice and digital modes (LSB and USB). Because CW is achieved by unbalancing the first mixer after the IF filter, this approach will not work on CW.

By shifting the IF frequency on the filter, John is able to produce a fixed attenuation that keeps the output power within the required limits.

The process is two fold:

  • a one off calibration exercise.
  •  a menu item that selects Low, High or Max power.

John has used 5W and 10W as targets for the Low and High values.

His results (remembering he has modified the final stage with RD16s and a number of other changes have been made to his transceiver):

  • 80m to 10m in low power settings have variations between 4 and 6 watts.
  • 80m to 10m In the high power setting has a range between 9 and 11 watts.
  • Only 16 bytes of data points are required (could be stored in EEPROM if desired).

His ATU uses a 2nd Arduino.   He has used a spare digital output to send a 1500Hz tone, low-pass filtered, to the microphone input for calibration purposes.  The audio filtering plus the 2nd IF filter take care of the audio harmonics and the signal is clean. This could be done in the Raduino if digital lines are freed up, such as by using an I2C display.

The tone also provides a tune up facility in low power.

He can transmit in digital modes in low power mode without having to adjust the drive every time he changes bands.  Perfect!

John will update the code in the file section so that others can incorporate this new feature into their firmware if they desire.

John acknowledges Jerry KE7ER’s idea of using fixed tables to perform the High/Low calibration function.

Firmware uploaded to files area

John has uploaded an update of the KD8CEC based software (V1.04 based) for Raduino and ATU Arduino.

Key changes in Version 20180411:

– Made the menu system dynamic so that items can be inserted at compile time or can be context-dependant at run time.
– Added output power attenuation for 80 to 10M using first IF shift.
– Added new menu item “Power Level”: low/high/max for SSB modes.
– Made CW menu items display dependant on having CW modes selected.
– Reduced the level at which the software AGC comes in. Adjusted the correction of S-Meter when software AGC comes into play.
– Changed tone generation for ATU tuning sequence from CW to using SSB with the 2nd Arduino generated tone.
– Change tune sequence to

a)Select the “Low” power setting before performing a tune and
b)Change tune frequency to tune on carrier (offset by audio tone frequency).

Assumes the following hardware change (only if using an ATU): a digital output on the ATU Arduino is used to generate a tone. An audio filter identical to the Raduino CW audio tone filter is used and it’s output is connected to the mic input of the SSM2167 module. If digital outputs are freed-up on the Raduino, for example by using an I2C display, the same can be implemented with only the Raduino.

This allows a low power tune function.

Reference