Re: Si5351 audio pops and PLL Lockups

Dave Benson
 

Ron-

Without knowing what's in your firmware, I'll comment on those bypass caps to ground at the encoder.  When the contacts are in the 'open' state, the caps are being charged to 5V through a pullup resistor.  When the contacts close, though, the charge on the caps is discharged to ground at a pretty high instantaneous current.  That's a source of unwanted noise.  It can be remedied by adding a fairly low resistance (say, 100 ohms) in series from the caps to the encoder contacts.

If you're using a high-resolution encoder, there's an off chance you're generating frequency updates faster than the Si5351 can accept them.  Not sure what it would do then.  My recollection is that the updates take 5-10 milliseconds. It may also help to command the Si5351 outputs 'off' prior to any update and restore them only after the command sequence is complete. I was working with an earlier version of NT7S's library, though, and haven't kept current on newer library versions.

73- Dave,  K1SWL



Virus-free. www.avast.com


On Tue, Mar 17, 2020 at 9:09 AM WB9YZU via Groups.Io <wb9yzu=yahoo.com@groups.io> wrote:
Hi Folks, I'm sure you folks have fielded this question before, but search results haven't been very fruitful.
My rig is a Forty-9er that I have modified to accept a VFO instead of a XTAL. I based the idea from a 2016 article in QST where the author used a I2C DDS and a parallel display.

I decided to take on the design and programming of the Arduino backbone myself and went with a Si5351a and put the display on the I2C bus via an adapter card that just piggybacks on the display. Nothing fancy. I'm using an inexpensive digital encoder to change frequencies.

The frequency is constantly being updated to the Si5351a, this is because keying requires that I change from a receive to a transmit frequency on the fly, and to avoid transmitting while the Si5351 is changing frequencies, I am keying the Forty-9er with the Arduino.

Everything seems to work pretty well, the radio does what it's supposed to do, and I have made a number of nice QSOs.
However the enjoyment is somewhat muted by this annoying popping and PLL dropout when dialing the rig.
When the PLL goes to lunch, I can't recover and I need to reset the radio. Though the symptom can appear most anywhere, it is much more prevalent around 7.055.

Steps I've taken do date:
Scoured the code and internet for clues. I am on my NthX2 attempt to write a decent code, the last attempt actually made it worse!
I verified that I am using the latest Etherkit Si5351a Library; version 2.1.4.
I tried to debounce the encoder by using an interrupt call and a debounce routine on the interrupt.; I also added .01uf caps across the encoder CLK and DT Lines to GND.

I read that the LCD is a noise source, so I installed 100uh coils on the power feed (+ & -)  to the display board. That cleaned up some audio noise.

From the number of Si5351a based QRP rigs, I assume a solution(s) has been found? What has worked for you folks?
--
, Ron WB9YZU

Join main@4SQRP.groups.io to automatically receive all group messages.