PIHPSDR and ADC clipping

189 views
Skip to first unread message

Ron Lewkowicz

unread,
May 23, 2023, 8:10:37 PM5/23/23
to Hermes-Lite
For the life of me I can not figure out what I am doing wrong with pihpsdr.  This is the DL1YCF fork version.  As soon I hit about 1/2 watt output both ADC clipping lights come on full time.  I'm using wsjtx tune and it's power slider to output the tone.  For transmit level I first set the pwr slider at full, hit tune and then adjust the computer mixer to a level about -10dB.  That level with Quisk and a wsjtx pwr level set to about -5dB  will push my meter to 5w and the Quisk signal meter reads the same. There are no ADC clipping lights on.  For tuning this is going into the built in dummy load of an MFJ-949E. 

I have completely uninstalled pihpsdr and wdsp. I deleted {Mac_Address}.props and wdspWisdom00.  I deleted my repo directories for both, pulled new clones from dl1ycf git and compiled and installed. Makefile edited to disable GPIO and appearance.h edited to set display size. Compiled and running on Linux Mint 21 which is Ubuntu 22.04 package base.  Make install for wsdp and pihpsdr simply copy binary to /usr/local/bin/.

Fire up pihpsdr it creates new wdspWisdom file then launches with fresh default config. N2ADR filter board is already selected and OC is already configured.  Config is changed to set sound devices and enable rigctl.  No other config changes at this point.  TUNE from wsjtx barely moves the meter.  Adjusting the drive slider to 100 and setting PA Cal to 38.8 for the band shows "calcDriveLevel: drive=100 drive_level=255" 255 is what Quisk is set at per instructions from the video, so this is assumed to be correct. TUNE from wsjtx now moves the meter to 1/2 watt and both ADC leds light up solid. This can't be good. To hit 5 watts the computer mixer fader must bring the wsjtx tone level up to +10dB.  Clearly not correct.

Receive in pihpsdr is absolutely excellent.  The noise cancelling, spectrum and pandapter are all absolutely excellent.  The entire interface design is a joy to behold and operate.

I am positive there is no hardware issue as everything seems to operate correctly in Quisk. I just find it difficult to see the signals in it's spectrum and find the noise cancelling is less effective than pihpsdr.  I put wsjtx out onto the wire at 5 watts, sent out a couple CQs to get some pskreporter spots and ended up having to stop and work a bit of a pile up. I also managed to check into an SSB net on 40m when the band conditions had net control asking at times if anyone was hearing him.  At 5 watts I must say this exceeded any expectations I had for the HL2.

If anyone has any idea where I  messed up with pihpsdr I would love to hear from you. I absolutely love this SDR software.

"Christoph v. Wüllen"

unread,
May 24, 2023, 8:15:02 AM5/24/23
to Ron Lewkowicz, herme...@googlegroups.com
The whole thing is about the setting of the RX preamp during TX.

If you are using PURESIGNAL, then each time you change the band and power,
you have to invoke the PURESIGNAL menu and do a two-tone experiment for
a few seconds. Using "auto attenuation", this will calculate the optimum
position of the preamp during TX.

So after auto-calibration, ADC clipping has gone.

If you are NOT using PURESIGNAL, then the "attenuation" during TX
will be zero and you almost always get ADC clipping.

I shall change the logic according to the following recipe:

if (transmitting) then
if (puresignal) then
use calculated calibration value for the preamp
else
if (pa_is_enabled) then
use maximum attenuation
else
use gain slider value
endif
endif
else
use gain slider value
endif

I have already tried this, works well. I will "push" this later today since I have to leave now.
> --
> You received this message because you are subscribed to the Google Groups "Hermes-Lite" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to hermes-lite...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/hermes-lite/129d6a18-2749-48ae-899e-9ed59f97dcc1n%40googlegroups.com.

"Christoph v. Wüllen"

unread,
May 24, 2023, 1:40:26 PM5/24/23
to Ron Lewkowicz, herme...@googlegroups.com
This is to summmarize how to avoid such ADC clippings when TXing:

a) If you are using PURESIGNAL:

go to the PS menu, check "Enable" and "Auto" and then do a
few seconds TwoTone. This will calibrate the feedback such
that it is OK (and then no ADC clipping)

b) If you are not using PURESIGNAL:

Go to the PS menu, uncheck both "Enable" and "Auto". Then at the
bottom right you see a spin-box "TX ATT". Increase that value
until ADC clipping vanishes.

NOTE: What I changed today (it is on my github)

In the PS menu, you see the "TX ATT" spinbutton if either "Enable"
or "Auto" is not checked (until this morning, you would only
see it if both of them are un-checked).

But again, ADC clipping from the TRX relay crosstalk is nothing to
worry about, if you are not using PURESIGNAL.



> Am 24.05.2023 um 02:10 schrieb Ron Lewkowicz <ron.le...@gmail.com>:
>

Ron Lewkowicz

unread,
May 24, 2023, 3:27:42 PM5/24/23
to Hermes-Lite
Thank you very much. I will pull the changes and give this a try when I get a few minutes.  I have not looked into PS at all as yet.  I assume the two tone calibration can be done into a dummy load?

Ron Lewkowicz

unread,
May 24, 2023, 10:31:15 PM5/24/23
to Hermes-Lite
Yes, with either method clipping issue seems to be solved.  Awesome.  Thank you so much.

FYI in radio.c there are now functions  soapy_protocol_stop_receiver and soapy_protocol_start_receiver that  cause linking to  fail if SOAPYSDR is not enabled in Makefile.
Reply all
Reply to author
Forward
0 new messages