Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
- Nanovna-Users
- Messages
Search
To the RF gurus out there: bandpass filtering S11 harmonic?
Hello everyone!
RF newbie and first time poster here. Recently purchased a NanoVNA-H for a specific experiment I'd like to perform. Without going into the unnecessary details of the experiment itself, what I'd like to do is use the nano as a fixed RF frequency gen, probably in the ~900MHz ISM band, to be fed to an amp and transmitted via an antenna. A probe on S21 will then be used for obtaining relative phase angle measurements. I know the nano generates a square wave output, thus the dominating frequencies are the fundamental and odd order harmonics, along with some even order and spurious frequencies. I also know that the nano will rely on the 5th harmonic of some fundamental in order to reach my desired fixed frequency. Since not only would it be irresponsible to transmit those various other frequencies, but I also think my experiment would be better served by having as spectrally pure signal as is reasonably possible. To avoid any confusion, my intended TX signal chain is as follows: nanoVNA S11 -> bandpass filter (probably LC?) -> RF amp -> antenna So my question is this: how sophisticated does the filter realistically need to be? Would a 1st order LC bandpass do, or do I need something else? Are there any common "gotchas" that trip up newbs that I should be aware of? Thanks! Mark |
Re: NanoVNA-F audio
Since the transducer/speaker is small with an even smaller opening, you can open the case and place a piece of masking tape over the opening. That will greatly reduce the level.?
On Tue., 5 Oct. 2021 at 3:55 p.m., James Laughter via groups.io<vk8tx@...> wrote: G'day all, I have the F version 1.0.3 up and running.? Is there any way to disable the audio when the VNA is turned on and each time a calibration? button selection (e.g., Open, Short, Load)?? I hope so since the family doesn't like hearing my testing. Thanks, Jim |
Re: Calibration result
On 10/5/21 2:13 PM, Roger Need via groups.io wrote:
On Tue, Oct 5, 2021 at 11:19 AM, Jim Lux wrote:So that really does push one to say "NanoVNA-Saver" should send a "calAs I mentioned earlier the calibration routines in NanoVNA Saver depend on having calibrated input over a wide range from the NanoVNA according to Rune. This may be because the algorithm used in Saver does not do much bounds checking and would not work well with raw data. I have had instances where Saver just aborts at the conclusion of a cal routine and I have to start all over gain. I have never had this problem with the NanoVNA app by OneOflEleven. Interesting.. maybe it doesn't handle reflection coefficients with mag > 1 or something. That could easily happen if it's uncalibrated, since it's just returning reflection/source, and the gains of the two paths are different. Since I'm trying to modify -saver to handle two nanovnas, I'll dig into it. |
Re: Calibration result
On Tue, Oct 5, 2021 at 11:19 AM, Jim Lux wrote:
As I mentioned earlier the calibration routines in NanoVNA Saver depend on having calibrated input over a wide range from the NanoVNA according to Rune. This may be because the algorithm used in Saver does not do much bounds checking and would not work well with raw data. I have had instances where Saver just aborts at the conclusion of a cal routine and I have to start all over gain. I have never had this problem with the NanoVNA app by OneOflEleven. Roger |
Re: Calibration result
On 10/5/21 11:13 AM, DiSlord wrote:
Difficult implement fast vector interpolation on this CPU: So that really does push one to say "NanoVNA-Saver" should send a "cal off" command before sweeping, if you're doing cal within NanoVNA-Saver. |
Re: Calibration result
Thanks DiSlord for explanation, I understand.
toggle quoted message
Show quoted text
Op di 5 okt. 2021 om 20:13 schreef DiSlord <dislordlive@...>: Difficult implement fast vector interpolation on this CPU: |
Re: Calibration result
Difficult implement fast vector interpolation on this CPU:
NanoVNA measure real imag, for convert it to Z angle need: Z = sqrtf(real*real + imag * imag) angle = atan(real, imag); // here more difficults, need get correct sign After interpolation need back to real imag, also need prevent change angle from 360 degree to 0, lot of mathematic for this small device (H and V2 not have hardware FPU, so any float calculations emulated, slow) ? Linear interpolation work good, but need know this limits |
Re: Calibration result
Hello DiSlord,
toggle quoted message
Show quoted text
Should the interpolation not be based on radial interpolation: so average of modulus and average of angle? All things here are complex numbers, so I think that we should also do a complex interpolation. Or do I misunderstand? All the best, Victor Op di 5 okt. 2021 om 19:18 schreef DiSlord <dislordlive@...>: Better do one calibration or on NanoVNA or on CPU side |
Re: Calibration result
Better do one calibration or on NanoVNA or on CPU side
Calibration data contain noise, this noise added to calibrated value (increase noise), after send to CPU and use as basic calibration in CPU side, and additional increase noise after. About interpolation, NanoVNA use linear interpolation, and if phase/amplitude rotate fast between points - can give big error (see image): Exist 2 points, on linear interpolation used line, so result vector - red point, but correct value - green point. On small phase between 2 points error small, but on big ... can be wrong Bigger point count - reduce phase/amplitude shift V2 - have this problem in range < 30MHz, so need calibrated in 2 ranges 1MHz to 140MHz and 40MHz - max (on less 1 MHz better add additional calibration) H/H4 - not critical calibrate in 1 to 1500MHz range (but also have problems in harmonic change near 300, 900MHz at this point i use extrapolation, this reduce error, but not remove it) |
Re: Calibration result
I was referring to interpolation between points. If you calibrate
toggle quoted message
Show quoted text
with 401 points between 1 and 1.5G on the device and then calibrate with 2000 points on PC, all those in between values are interpolated. I always leave the slot 0 uncalibrated, calibrating on the PC is superior in any case due to higher number of points, calibration standard parameters, better algorithms (Enhanced Response Correction for example), etc. On Tue, 5 Oct 2021 at 17:52, Jim Lux <jim@...> wrote:
On 10/5/21 8:06 AM, Dragan Milivojevic wrote:If I understand correctly this will lead to interpolationWell, as a substitute for "no calibration" which isn't easy to command, |
Re: Calibration result
On 10/5/21 8:12 AM, DiSlord wrote:
in my firmware need use:That's useful. |
Re: Calibration result
On 10/5/21 8:06 AM, Dragan Milivojevic wrote:
If I understand correctly this will lead to interpolationWell, as a substitute for "no calibration" which isn't easy to command, if the wideband cal is stored in #0, it has the advantage of "power cycle and you're in a known state" I'm not sure what the interpolation algorithm does if it's over, say, 1-100 MHz, and it extrapolates for, say, 500 MHz.? If it just assumes "carry 100 MHz cal all the way to the top" that's probably ok.? If it's "continue last linear segment" then you could wind up with a weird result, if the cal coefficients between 99-100 MHz happened to be changing rapidly.
|
Re: NanoVNA Low-Z capabilities
Challenging but doable, you will have to use "Shunt through" method.
toggle quoted message
Show quoted text
For an easy to understand explanation of the problem: On Tue, 5 Oct 2021 at 04:44, Walter Miller, AJ6T <aj6t@...> wrote:
I need to measure a very low impedance device for a non-ham |
Re: Calibration result
in my firmware need use:
'scan start stop points mask' mask - output mask #define SCAN_MASK_OUT_FREQ (1<<0) // Output freq in Hz #define SCAN_MASK_OUT_DATA0 (1<<1) // Output complex S11 #define SCAN_MASK_OUT_DATA1 (1<<2) // Output complex S21 #define SCAN_MASK_NO_CALIBRATION (1<<3) // Send no calibrated data Also in old firmwares you can on/off/reset calibration by command: Disable calibration 'cal off' Enable calibration 'cal on' Reset calibration 'cal reset' |
Re: Calibration result
If I understand correctly this will lead to interpolation
toggle quoted message
Show quoted text
by Nano firmware which is not a good idea. On Tue, 5 Oct 2021 at 15:32, Jim Lux <jim@...> wrote:
On 10/4/21 6:07 PM, Roger Need via groups.io wrote:Rune had a good suggestion where you calibrate slot 0 in the NanoVNA forthe maximum frequency range you would ever need and then leave it that way |
Re: Calibration result
On 10/4/21 8:55 PM, DiSlord wrote:
NanoVNA firmware can send uncalibrated data, then calibration need use in external softwareWhat commands make the NanoVNA send uncalibrated data?? I was casually looking around, and it seemed to me that you can turn off calibration with the menu, but there's no command that you can send over the wire to make that happen. |
Re: NanoVNA Low-Z capabilities
On 10/4/21 7:14 PM, Walter Miller, AJ6T wrote:
I need to measure a very low impedance device for a non-ham application.....probably less than 1 Ohm.? Is the NanoVNA able to make an accurate measurement on such a load in the 14 MHz range?It's all about how accurately can you measure the reflection coefficient: Gamma = (Zload-Z0)/(Zload+Z0) For Z0 = 50, and Zload = 1 gamma = -49/51 = -0.96078 A 10% change in Zload would be gamma = -49.1/51.1 = -0.96086 Not a huge difference. The NanoVNA calculates gamma by dividing reflected voltage by incident voltage (as measured by the two internal receivers) = gamma = Vr/Vi In this case, the incident voltage will be pretty much the same (it's the measured source signal) The reflected voltage is large (which is a good thing, large SNR), so to get 10% accuracy, you're looking at measuring the difference between -0.96078 and -0.96086 -> about 0.00008 To do that that implies the noise is at least 80dB below the signal.? That's probably "ragged edge" of the nanoVNA's capability. On the other hand to measure the difference between 1 ohm and two ohms is between -0.96078 and -0.93208, a difference of 0.032, a sort of 30dB SNR need, which is more likely. |
to navigate to use esc to dismiss