phase canceled noise

🙋 If you want a new feature or a change to the software then add your request here.

If it's not here then it's not going to happen.
rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

phase canceled noise

#1

Unread post by rainstar »

If i have two virtual receivers with identical settings, then isnt it possible that anything both of them receive could be phase-inverted and thus canceled
when it comes to wideband noise the blanker is satisfactory to most, but since we have virtual receivers, why not make use of them?
so you tune one receiver 10khz to the right or left of your desired signal, and then whatever they see in common is removed

jdow
Posts: 800
Joined: Mon Aug 10, 2020 8:17 pm

Re: phase canceled noise

#2

Unread post by jdow »

There is a long acronym you should learn intimately. It is "TANSTAAFL". It translates to (US slang) as, "There Ain't No Such Thing As A Free Lunch." This applies to efforts to phase cancel noise using two receivers. You can achieve some noise nulling. If what you want lies in the same direction, it will be nulled too. This can be done with the right kind of antenna and coupler combination with only one receiver.

If you tune to two different frequencies the noise in the two receivers becomes totally uncorrelated leading to little or no noise nulling capability. You get better results with an IF noise blanker for the kind of noise that might still be slightly susceptible to the nulling. With a proper IF noise blanker you take the approximate level of the "relatively" unfiltered "IF" ahead of the high selectivity filters and use its output to completely blank the signal going to the high selectivity filters. You still notice the lightning or ignition noise but it can be highly attenuated. In the analog world this has been shown to be quite effective. With an SDR you can play tricks with digital delay lines and probably improve upon analog implementations to a considerable degree. But, that's still one receiver.

{^_^} Joanne

rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

Re: phase canceled noise

#3

Unread post by rainstar »

jdow sometimes I fear you... I am not talking about what you are talking about.
To clarify: you are an expert and I understand what you are referring to. But my suggestion is a little bit different.

I used the term "virtual" receivers. What this means is two different VFO's sampling the same IQ, which means they have near identical timing.
What I propose is, if the noise is wideband and consistent(as in both virtual receivers experience the same thing),
set one virtual receiver on a desired signal, and the other nearby on the noise. No, you wont be able to cancel out the "noise" part of the noise, it's too dynamic.
but the peaks and crashes which are wideband, the impulse noise, could be removed at that stage as opposed to the IF stage.

The IF noise blanker momentarily reduces gain during an impulse. There is a noise blanker built into sdrradio too which works the same way.
What I propose and want to see if it can be done is similar to AM channel canceling.

Instead of reducing gain during an impulse, combine only the impulse with the polarity inverted version of itself- add the inverted version of the impulse
to the channel to cancel it out.

Not much different than what sdrsharp does with AM channel canceling, perhaps similar.
Also less effective because wideband impulse noise isn't consistent, it's only maybe 95% identical across a 40khz section of spectrum.
The noise should still be somewhat correlated because it's one receiver and the wideband pulse hitting one antenna is hitting all frequencies simultaneously- it's a horizontal line.

This is different than what a noise blanker does. noise blanker circuit momentarily reduces the gain of the IF stage during the impulse.
What this does is it intrinsically applies an inversion, which means gain isn't entirely crippled during the pulse. Much better than an IF noise blanker?
Last edited by rainstar on Sat Jul 17, 2021 6:51 pm, edited 1 time in total.

rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

Re: phase canceled noise

#4

Unread post by rainstar »

update: I was able to emulate something like the desired filter using VSTHOST.
Using two virtual receiver VFOS in a passband where one was sampling 40khz higher than the other using the same windowing filter settings, gain, and noise reduction,
I subsequently routed them to left and right respectively of a virtual audio cable, which i then connected to my audio output in vsthost.exe.

The desired signal I sampled on the left channel, the control signal on the right. I then applied convolutional filters.

it did not do a very good job- it stabilized gain and eliminated spikes but greatly distorted the signal.
Needless to say it did not apply phasing of any kind, all it did was apply an inverted EQ based on the continual noise profile.

I then attempted to use a different method to apply true polarity inversion by isolating each vfo on it's own virtual audio output cable.
naturally this did not work because the timing is dependent on frequency and even audio polarization is a form of phasing.

rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

Re: phase canceled noise

#5

Unread post by rainstar »

https://asp-eurasipjournals.springerope ... 80-2012-79 another approach which is not feasible to implement for sdr-radio is frankenSPART-
it requires little computing resources but a comparatively large input bandwidth to the filter

https://ieeexplore.ieee.org/abstract/document/7178644
https://en.wikipedia.org/wiki/Decorrelation
apparently what I want is similar to a concept called "decorrelation" - where you strip out correlating signals(or impulses).

rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

Re: phase canceled noise

#6

Unread post by rainstar »

I was able to find a plugin for decorrelation, which i am experimenting with, but on the way i found a cyclic panner and that did the trick for my vst polarizing hack.
attached is some interesting results, im still experimenting, seems to work a lot like the if phaser- also the virtual receiver outputs from sdr-radio even when on the same
virtual IO cable do not always have identical timing, sometimes i have to adjust up to 40ms each side to make them match.
https://imgur.com/a/2HTdh1o

here is some results of my experiment
- use the volume control in the upper right corner to unmute the video. its glitchy because something to do with OBS

rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

Re: phase canceled noise

#7

Unread post by rainstar »

Also it only works in AM mode.. and i was hoping for a SSB method to do the same. but it appears I still dont understand phase and polarity very well-
that or like you said TANSTAAFL, it entails similar complexity in time-frequency transformation and thusly can't be easily done
that or its just a peculiarity in the way sdr-console outputs audio from single sideband

rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

Re: phase canceled noise

#8

Unread post by rainstar »

edit: was also able to get SSB to kinda phase the same but i had to toss in a 30+ ms delay because they didnt quite have the same output and the timing continually destabilized

jdow
Posts: 800
Joined: Mon Aug 10, 2020 8:17 pm

Re: phase canceled noise

#9

Unread post by jdow »

"Instead of reducing gain during an impulse, combine only the impulse with the polarity inverted version of itself- add the inverted version of the impulse to the channel to cancel it out."

That is where the concept fails. It's noise. And the noise on 10.0000 MHz, for example, is not the same as what you get receiving 10.010000 MHz. You may get some cancellation. You may also get some increase. The impulses are very short, in theory. So you take a very wide chunk of spectrum, set a slicer so that signals do not trigger but lightning will, and you use that to trigger a very brief blanking such that the impulse does not get to your narrow band signal where it is widened and obliterates your signal for a long time, the filter ring time. Simply dropping the input may be about as good as you can do without a lot of fiddling by the operator. Each distant lightning impulse will have different characteristics. So it may be really difficult to deal with them in any consistent manner. Closer lightning impulses are a different matter. I might leave a radio on an antenna as around here we just don't have huge lightning storms such as I had when I lived off Lake St. Claire in Mitten USA (looking due south on Canada.) A storm may come through. A half dozen booms later and "where'd it go?"

It'd be nice if you could get RX1 feeding the left channel and RX2 feeding the right channel. I'm not sure if you can do that in SDRC. If you can and are not overloading your machine that should keep timing precise between the channels.

I tried something like this with the FT101 and R390A I have. (Yup, still have not tossed the FT101. Bet it needs new caps, though.) I did not have nearly the control flexibility to make it even seem to work even though with the R390A vernier dial I installed tuning both RXs to the same signal with a decent zero beat was quite feasible. They never came close to nulling things like lightning.

{^_^}

rainstar
Posts: 66
Joined: Sat Dec 19, 2020 4:06 am

Re: phase canceled noise

#10

Unread post by rainstar »

I was able to get channel isolation, but not precise timing. perhaps there is a tweak simon can implement that makes timing consistent or makes it possible to do this directly in sdr-radio. I am also going to try an ASIO based audio cable and see if that helps. I was able to get AM to fully selfcancel as demonstrated in the imgur, and when it came to noise nullification, it was effective - but this was not consistently true on SSB.

Post Reply