This simple 1-resistor addition to the QCX could be useful to prevent the kind of Power Amplifier (PA) failure I had, if you are using your QCX to drive an external amplifier. I had a PA failure that is prevented by this modification.
50W Power Amplifier failure
My QCX suffered an explosion or to be more accurate, the 50W PA attached to it, suffered an explosion. It was during some testing of the CAT firmware enhancement for QCX firmware version 1.03.
I had switched the QCX off and on again with the toggle switch on the my front panel, rather fast. There was a bright flash and a loud bang. My QCX is connected to a 0-30V 0-20A linear-regulated bench power supply, capable of supplying a lot of power. Investigation revealed that one of the IRF510 power transistors had blown up quite spectacularly. This photo shows the result. Note that the explosion did not blow the IRF510 pins off; my safe removal strategy for replacing components, is to CUT the component out then remove the pins one-by-one from the board by de-soldering them.
My high-level block diagram connections are as follows:
Note that there is a 2200uF 25V capacitor right at the connector to the enclosure and rightly or wrongly, the power toggle switch is between this capacitor and the QCX/PA; not between the capacitor and the power supply. There are quite thick cables to the PSU.
The QCX is powered at 12V via a 7812 voltage regulator.
Power-on spikes
Investigation with my nice new Siglent SDS 1203X-E oscilloscope (thanks to kind donation by Siglent, sponsors of the Homebrew Heroes award 2019), revealed the following different power-up characteristic, depending on whether the QCX is switched on by turning on the power supply, which is what I normally do, or by switching it on at the toggle switch.
The Siglent SDS 1203X-E oscilloscope has storage features where the display can be frozen by pressing the Run/Stop button at top right. So it is possible to capture an event in "human scale time" with the horizontal timebase running at something like 100ms/div or 200ms/div; then with the display frozen you can scroll it left/right using the horizontal position control, then zoom in on the feature to be investigated, using the Horizontal Zoom knob. Once the display shows the section of waveform of interest, you can use the cursors to make precise measurements of time difference, voltage difference etc. This is very useful to examine and understand features which happen too fast to be seen or captured normally. Screenshots can be captured easily by plugging in a USB flash drive and pressing the "Print" button.
Above, this is what the voltage at the PA supply connection pad looks like, when I press the On/Off button on the 0-30V 0-20A bench power supply. It rises nice and gently to 20V, reaching 90% of its final supply voltage after about 56ms and the full 20V supply voltage another 20-30ms after that.
Above left, is what happens when the toggle switch on the QCX enclosure front panel is switched on (with the power supply already on). The combined effect of the smoothing capacitor in the power supply and the 2200uF capacitor in the QCX enclosure, is that the voltage at the Power Amplifier pad rises extremely fast, and with a significant overshoot; the trace shows a rise to 33V 364us after power-on. There's another very short spike 2ms after switch-on. Above right, here is a zoom of the first spike with the overshoots. Pretty nasty!
PTT signal pulses
Next I investigated the "Push To Talk" (PTT) signal which enables the 50W Power Amplifier. This PTT signal is the "TX" signal inside the QCX, which is IC3 pin 11. This signal is produced by IC3 (quad NAND gate) inverting the "RX" signal which comes from processor pin 14. I discovered that the PTT signal goes high (+5V) three times on powering up the QCX, none of which are instigated by the operator's actual key-downs. The sequence from time t = 0 is as shown in the following sketch. Note, the timings were measured again using the cursors feature on the oscilloscope but this time i sketched the pulses in my notebook, I did not make a screenshot:
Starting at time zero (power switched on), the first PTT high ramps up slowly in 17ms then stays high until time 102ms after power-up. Then it goes low (0V). There is a further pulse from 172-189ms (pulse width 17ms), and one more about 1 second later with a pulse width of 8.3ms. The 3rd pulse occurs when the power-up splash screen of the QCX has finished displaying.
My theory is, that the first PTT signal, at power-up, when coincident with all those nasty spikes at switch on (via the toggle switch), and with the PA circuit not yet settled down (all its capacitors charged up, solid state Rx/Tx switching in stable state, etc), creates the right conditions for catastrophic positive feedback in the PA to set up a huge spurious oscillation which is sufficient to self-destruct, via the explosion of one of the transistors. This does NOT occur in my normal power-up sequence via the on/off button of the power supply. Neither does it occur if I switch off with the toggle switch, wait a second, then switch on again. It only occurred when I switched on and off quickly.
The first pulse is caused by the floating RX signal, from processor pin 14. All the processor pins are floating while the processor is reset during its power-up. The "TX" signal at IC3 pin 11, which I am using to enable the external amplifier, is produced by inverting this RX signal, using IC3d. Even when the first thing I did in the code, before anything else, was set the RX signal to High (put the QCX in Receive mode), there is still this 102ms duration pulse at power-up. This pulse cannot be removed by software alone, because this pulse occurs before the microcontroller has booted up, during the period when the pins are floating.
Hardware modification: add 10K resistor
This situation can be resolved very simply by adding a 10K resistor (value entirely uncritical) between the RX signal and +5V. When the processor pins are floating while the processor is starting up, the RX signal is therefore pulled to +5V, until the processor has started and is ready to take over the job. In this fragment of the schematic (below) the additional resistor is shown in the yellow box. I simply soldered it between IC3 pins 13 and 14 which is convenient and easy.
Change low fuse from 0xF7 to 0xD7
Secondly I was able to shorten the duration of the boot by changing the processor fuse values. Until now, QRP Labs firmware chips were always programmed with low fuse 0xF7. This selects External Full-swing Crystal, with a 16,000 clock cycle delay after power-up (to allow the crystal to start-up nicely), 14 cycle delay after Reset, and 65ms added delay for the power supply to rise up to operating voltage.
This 65ms delay is NOT necessary since the chips are always programmed with the 4.3V brownout detection fuse. The brownout detector keeps the processor in a Reset state until the supply voltage rises above 4.3V. According to the ATmega328 datasheet, when a BOD fuse is enabled, no power up delay is necessary. Using low fuse 0xD7 therefore makes the power-up boot 65ms faster, because it does not add any unnecessary delay. In future we will use this setting for low fuse.
Second PTT pulse
The second PTT pulse, occurring at 172ms after power-up and with a pulse duration of 17ms, was found to be entirely unnecessary. It is just due to the order of execution of initialization steps in the code and was easy to change, so that the pulse is eliminated. This change was released in firmware version 1.03. Probably this pulse is not related to any possible attached PA failure mode, but it does no harm to remove it.
Third PTT pulse
The THIRD PTT pulse has a pulse width of 8.3ms and occurs after the QCX splash screen has finished displaying. This delay is caused by the firmware muting the Receiver (which enables the PTT signal) while the Si5351A Synthesizer chip is being set up. It removes a loud "click" in the earphones when the Si5351A setup is happening.
It was easy to remove this pulse entirely; but then the loud "click" comes back when the Si5351A is first initialized.
I decided to leave this third pulse in place. A PTT is harmless, once the PA is all settled down, power supply spikes are long since finished, and there is no RF output being generated by the QCX anyway. So a momentary PTT is completely harmless. The pulse mutes the Receiver, preventing the nasty loud "click", so is beneficial for that reason, and harmless to the PA.
Testing
I flicked the toggle switch on and off in rapid succession, many times, and with many different degrees of rapidity. I was unable to cause a repeat of the IRF510 explosion. Therefore I believe that the diagnosis and solution proposed, is correct.
Conclusion and recommendation
None of these changes may actually be REQUIRED in every case. But let's face it, a flash and a bang is disconcerting at the best of times; and then having to replace the IRF510s is tedious. So precautionary measures may be a good idea.
- The modification proposed, addition of the 10K resistor from IC3 pin 13 to +5V (conveniently represented in this case, at IC3 pin 14), may be a sensible precautionary modification for anyone wishing to use the signal from IC3 pin 11 to control an external power amplifier.
- The change of the ATmega328 low fuse setting from 0xF7 to 0xD7 is another useful measure which would reduce the duration of the spurious high PTT pulse by 65ms; it has no negative consequences.
- Upgrading to firmware 1.03 removes the second short spurious PTT activation and may also be helpful.