¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io
Date

Re: Firmware Differences

 

DiSlord did just that in an attachment earlier in this thread. I attach it
again here for your convenience:


On Fri, Oct 28, 2022 at 1:37 PM Lester Veenstra via groups.io <m0ycm=
[email protected]> wrote:

May I suggest (Because I am too lazy)
That someone volunteer to lay out the tansformation formula from Smith
Chart to real values:
Smith Rm to normalized Real to actual resistance
Smith Im to normalized Imaginary to actual reactance to L or C as
function of Freq


Lester B Veenstra K1YCM M?YCM W8YCM 6Y6Y W8YCM/6Y 6Y8LV (REformed
CTM1)
lester@...

452 Stable Ln (HC84 RFD USPS Mail)
Keyser WV 26726

GPS: 39.336826 N 78.982287 W (Google)
GPS: 39.33682 N 78.9823741 W (GPSDO)


Telephones:
Home: +1-304-289-6057
US cell +1-304-790-9192
Jamaica cell: +1-876-456-8898



-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf
Of DiSlord
Sent: Thursday, October 27, 2022 12:08 PM
To: [email protected]
Subject: Re: [nanovna-users] Firmware Differences

On Thu, Oct 27, 2022 at 07:45 AM, John N0TA wrote:


This begs the question: Why does the Nano Smith chart default to Re Im,
rather
than R + jX? It appears to me that Re Im is pretty useless.
- John
Base Smitch diagram value: Re Im



Also Re Im more universal for S11 and S21 some (so i use it as default)
R+jX calculation depend from channel and connect mode (for S21 serial or
shunt)












Re: Firmware Differences

 

May I suggest (Because I am too lazy)
That someone volunteer to lay out the tansformation formula from Smith Chart to real values:
Smith Rm to normalized Real to actual resistance
Smith Im to normalized Imaginary to actual reactance to L or C as function of Freq


Lester B Veenstra K1YCM M?YCM W8YCM 6Y6Y W8YCM/6Y 6Y8LV (REformed CTM1)
lester@...

452 Stable Ln (HC84 RFD USPS Mail)
Keyser WV 26726

GPS: 39.336826 N 78.982287 W (Google)
GPS: 39.33682 N 78.9823741 W (GPSDO)


Telephones:
Home: +1-304-289-6057
US cell +1-304-790-9192
Jamaica cell: +1-876-456-8898

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of DiSlord
Sent: Thursday, October 27, 2022 12:08 PM
To: [email protected]
Subject: Re: [nanovna-users] Firmware Differences

On Thu, Oct 27, 2022 at 07:45 AM, John N0TA wrote:


This begs the question: Why does the Nano Smith chart default to Re Im, rather
than R + jX? It appears to me that Re Im is pretty useless.
- John
Base Smitch diagram value: Re Im


Also Re Im more universal for S11 and S21 some (so i use it as default)
R+jX calculation depend from channel and connect mode (for S21 serial or shunt)


Micro SD Card Issue

 

My NanoVNA-H4, HW version4.3_MS from SeeSii, gives a write error when writing to the SD Card. My NanoVNA-H4, HW version 4.2 from R&L Electronics, writes perfectly to the SD card. Both are running 1.2.15 firmware. Is the SeeSii VNA a bad clone? Any ideas?
Thanks,
Tom W0IVJ


Re: Firmware Differences

 

Hi Bob,

You are correct about the type of resistors to use for measurements.? I mostly use BNC cables and devices, so I have built cal standards and measurement standards using BNC connectors as shown in the attachment.? I have tried to make my measurements as close to the reference plane as possible.? The resistors I use are 0805 film resistors and the capacitors are 0805 ceramic for the most part.? Since most of my work is done at HF, the calibration tolerances are not as tight as for VHF and UHF.

Tom?? W0IVJ

On 10/27/2022 6:00 AM, Bob Ecclestone VK2ZRE wrote:
Hello Tom,

I noticed the format change just after I sent the post:-(
However the frequency difference was what caught my eye and I got "blind sided".
I agree with your comment, however, given other posts on component testing, defining a "pure resistance" is an interesting concept:-)
There was no mention of the test fixture or of resistor type, carbon, metal film or wire wound. A 10 ohm carbon film or wirewound resistor would have a very different response at 30Mhz compared to 1Mhz.
I repaired a piece of kit used to high voltage test sub station power transformers many years ago and it had a Philips 100 ohm 1 watt carbon resistor in series with the vertical input to the integrated CRO in the instrument.
The resistor was fried by a flash over and I was a bit puzzled at first because it was such a low series resistance in what was a high impedance input. I then twigged that it was, in fact, being used as a peaking coil.
Those Philips resistors had the carbon film deposited on the tubular ceramic substrate and then laser etched in a spiral to the required value. Lovely stable inductance!
However, the Smith Chart marker in the post is still on the real axis in both screenshots, negligible +j component. Like said, blind sided:-(

73...Bob VK2ZRE


On 27/10/2022 1:04 am, Tom Thompson W0IVJ wrote:
Hi Bob,

The issue was the values appearing on? S11(Smith chart) which DiSlord cleared up nicely.? By? the way, if you have the S11 port terminated in a pure resistance with no transmission line, the frequency makes no difference.? Even though the resistance is other than 50 ohms, the reading will be the same independent of frequency.

Tom?? W0IVJ

On 10/26/2022 7:00 AM, Bob Ecclestone VK2ZRE wrote:
Hi All,
I may have missed something here, but these screenshots are not comparing apples to apples.
In the first screenshot the marker is at 1MHz and in the second it is at 30MHz.
Given all the posts in this group about component testing and test fixtures, may I humbly suggest the "error" has more to do with marker frequency than software version.
73...Bob VK2ZRE


On 25/10/2022 8:06 pm, Tom Thompson wrote:
Here are the results of the two different firmware with a 10 ohm resistor attached to the S11 port.
Tom?? W0IVJ

On 10/24/2022 9:42 PM, DiSlord wrote:
Smitch chart marker value must be correct in all versions.

I think you select different smith marker format (Re+Im for example)

Provide screenshot



















Re: NanoVNA Saver - Display Smith Cart

 

On 10/28/22 8:41 AM, Charlie N2MHS via groups.io wrote:
I can see the SMith Chart on my H4. Is there a way to see it on my PC (W11 64bit)
Doesn't Saver display it by default? Look at the button in lower left for "Display Settings..."
Then, in the dialog, you can set the plot formats..



NanoVNA Saver - Display Smith Cart

Charlie N2MHS
 

I can see the SMith Chart on my H4. Is there a way to see it on my PC (W11 64bit)


Re: Menu Structure Map for V1.2.14? #firmware #menu

 

On Fri, Oct 28, 2022 at 03:51 PM, Ho-Ro wrote:

Do you have the "Re + Im" entry or is it "REIM"?

The s11smith menu structure in "ui.c" has only the token "MS_REIM"
Hello Martin,
Thank you very much for the detailed description.

My print out of the SMITH menu is:
SMITH
LIN
LOG
REIM
RX
RLC
GB
GLC
RpXp
RpLC
<- BACK

I think this discussion is of still on topic.
I will try to adopt your Python program to the tinySA,
which has a similar structure.
I like this spectrum analyzer very much.
See:


/g/tinysa/messages

73, Rudi DL5FA


Re: Menu Structure Map for V1.2.14? #firmware #menu

 

On Fri, Oct 28, 2022 at 02:47 PM, Rudi wrote:


if f'const menuitem_t {this_menu}[]' in line:
Well Rudi, the FW is organised as a tree in ui.c. The top menu is called "menu_top". This construction above searches all lines of ui.c (that I had read into the python variable ui and that I iterate all over again with "for line in ui:") for an entry that contains 'const menuitem_t menu_top[]' -> line 2071 of ui.c (line 2065 from DiSlord's src).
"const menuitem_t menu_top[] = {"

This python construct is called "formatted string" and it helps us poor C printf programmers to build nice strings also in python.


I'm just searching for the definition of a menu block and then read all menu entries in this block until I encounter "MT_NONE" (=end of menu), if one entry is a submenu, I search for this submenu and read all entries, and if there's another submenu... you get the idea.

So this line just searches for f'const menuitem_t {this_menu}[]', where the variable "this_menu" holds the name of the menu I'm currently checking, e.g. 'menu_top'.

-> it's all no rocket science, years ago I used perl for this kind of parsing, but this language is to much "write only" for me, also because of TIMTOWTDI; python is more strict and can be understood also one year later (without massive commenting).

BTW - how looks your part below the "SMITH" menu points? This is my 1st SMITH section:

FORMAT S11 (REFL)
LOGMAG
PHASE
DELAY
SMITH
LIN
LOG
Re + Im
R + jX
R + L/C
G + jB
G + L/C
Rp + jXp
Rp + L/C
<- BACK

Do you have the "Re + Im" entry or is it "REIM"?

The s11smith menu structure in "ui.c" has only the token "MS_REIM"

const menuitem_t menu_marker_s11smith[] = {
{ MT_ADV_CALLBACK, MS_LIN, "%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_LOG, "%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_REIM,"%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_RX, "%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_RLC, "%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_GB, "%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_GLC, "%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_RpXp,"%s", menu_marker_smith_acb },
{ MT_ADV_CALLBACK, MS_RpLC,"%s", menu_marker_smith_acb },
{ MT_NONE, 0, NULL, menu_back } // next-> menu_back
};

The translation is in "plot.c", where I search all "[MS_...]" lines and extract the 1st string in double quotes, e.g. "Re + Im" for "MS_REIM".

const marker_info_t marker_info_list[MS_END] = {
// Type name format get real get imag
[MS_LIN] = {"LIN", "%.2f %+.1f" S_DEGREE, linear, phase },
[MS_LOG] = {"LOG", "%.1f" S_dB " %+.1f" S_DEGREE, logmag, phase },
[MS_REIM] = {"Re + Im", "%F%+jF", real, imag },
[MS_RX] = {"R + jX", "%F%+jF" S_OHM, resistance, reactance },
[MS_RLC] = {"R + L/C", "%F" S_OHM " %F%c", resistance, reactance }, // use LC calc for imag
[MS_GB] = {"G + jB", "%F%+jF" S_SIEMENS, conductance, susceptance },
[MS_GLC] = {"G + L/C", "%F" S_SIEMENS " %F%c", conductance, parallel_x }, // use LC calc for imag
[MS_RpXp] = {"Rp + jXp", "%F%+jF" S_OHM, parallel_r, parallel_x },
[MS_RpLC] = {"Rp + L/C", "%F" S_OHM " %F%c", parallel_r, parallel_x }, // use LC calc for imag
[MS_SHUNT_RX] = {"R+jX SHUNT", "%F%+jF" S_OHM, s21shunt_r, s21shunt_x },
[MS_SERIES_RX] = {"R+jX SERIES","%F%+jF" S_OHM, s21series_r, s21series_x },
};


But we can move this off-topic discussion to another point in order not to clutter this topic. ->


Re: Menu Structure Map for V1.2.14? #firmware #menu

 

On Fri, Oct 28, 2022 at 01:18 PM, Ho-Ro wrote:

Nevertheless the code with a safety check for you (and maybe other mac user)
is now in my GitHub:

Hello Martin,
Thank you very much for your quick help.

With the source code from github it works now without flaw :-)

It is amazing what you can do with Python, if you know how to use it :-)

I like Python very much, but I have to learn a lot when I look at your source code.

What caused me head scratching is in line 62:
if f'const menuitem_t {this_menu}[]' in line:

When I add in the next line:
print(line, " - ", this_menu) # RR: debug
I get e.g.: const menuitem_t menu_dfu[] = { - menu_dfu

Do you please have a link to an explanation for that construct?

73, Rudi DL5FA


Re: Menu Structure Map for V1.2.14? #firmware #menu

 

On Thu, Oct 27, 2022 at 07:47 PM, Rudi wrote:


Could you please have a look what is the cause of the tracebak?
Hi Rudi,

I have no clue what goes wrong o your side, I copy/pasted the code here from the group and it works fine.
(I suspected that the forum SW did some strange formatting)

As a quick check add these two lines at line 26 (directly after the line with ' ms_dict[ key ] = val # put in dictionary') without any space to the left and show the output.
print( ms_dict )
exit()

Nevertheless the code with a safety check for you (and maybe other mac user) is now in my GitHub:


Martin


Re: Firmware Differences

 

S parameter - just complex number, no unit
Range from -1 to 1 (real and imaginary part)
Show how change reflect/thru signal in amplitude / phase from reference

S11 = reflect / reference

Re Im format not equal Amplitude Phase (you can select this format in Smitch marker type as Linear or Log values) but possible convert.
But anyway no unit


Re: How to use my NanoVNA-H4 to test resonant frequency of a tower?

 

Rudy Severns often has some useful input on this sort of thing:


Re: How to use my NanoVNA-H4 to test resonant frequency of a tower?

 

Don't know of any reason why it wouldn't work. However ... I'm guessing the wire vertical is NOT grounded at the base of it, but the tower is? That may have some effect on it. Maybe if you could test further up the tower? AM broadcast towers can be either series fed, where the base of the tower is insulated from ground and the tower is fed against ground at the base, or shunt fed, where the base of the tower is grounded and the tower is fed with a wire connected some distance up the tower from ground. Consider how this may affect your ability to measure the resonant frequency. And does the tower have guy wires? If so, I assume they are grounded, shunting to ground any potential resonances, or possibility creating a number of "sub-resonances."


Re: How to use my NanoVNA-H4 to test resonant frequency of a tower?

 

This thread had me thinking and wondering if anyone has successfully determined the resonant frequency of a tower using a Nano? At a friend's recommendation I constructed a 1' x 2' loop and this worked to determine the resonant frequency of a wire vertical but no luck on a tower.

Thanks,

Mike W9RE


Re: Firmware Differences

 

Even imaginary numbers have units. This seems to be 0.644 of in_phase A/D full scale + 0.0532 of quadrature A/D full scale.

SherpaDoug, WA1UWP


Re: Firmware Differences

 

Many thanks! I now understand it just means "(644/1000) + (53.2/1000)", just as in milliNumber nothing more than that thus the "644m + 53.2m" notation is totally appropriate, IMHO.

--
Thanks Again!
Tom, VA7TA


Re: Menu Structure Map for V1.2.14? #firmware #menu

 

On Thu, Oct 27, 2022 at 05:59 PM, Ho-Ro wrote:
This is my current python code:
Hello Ho-Ro,
Thank you very much for this great improvement of your nanoVNA menu-map program :-)

I am working with MacOS Mojave, and tried it now with Python 3.9.
The files ui.c and plot.c are from
Unfortunately I got a traceback:

$ python3 Ho-Ro_nanoVNA_menu_readout-2.py
DISPLAY
TRACE
TRACE 0
TRACE 1
TRACE 2
TRACE 3
STORE/CLEAR TRACE
STORE/CLEAR TRACE A
STORE/CLEAR TRACE B
STORE/CLEAR TRACE C
<- BACK
FORMAT S11 (REFL)
LOGMAG
PHASE
DELAY
SMITH
Traceback (most recent call last):
File "/Volumes/DAT/HDA8/INSTALL/Develop/Afu/NanoVNA/Menu_map/Ho-Ro_nanoVNA_menu_readout-2.py", line 127, in <module>
show_menu( 'menu_top', 0 )
File "/Volumes/DAT/HDA8/INSTALL/Develop/Afu/NanoVNA/Menu_map/Ho-Ro_nanoVNA_menu_readout-2.py", line 124, in show_menu
show_menu( next_menu, level + 1 )
File "/Volumes/DAT/HDA8/INSTALL/Develop/Afu/NanoVNA/Menu_map/Ho-Ro_nanoVNA_menu_readout-2.py", line 124, in show_menu
show_menu( next_menu, level + 1 )
File "/Volumes/DAT/HDA8/INSTALL/Develop/Afu/NanoVNA/Menu_map/Ho-Ro_nanoVNA_menu_readout-2.py", line 124, in show_menu
show_menu( next_menu, level + 1 )
File "/Volumes/DAT/HDA8/INSTALL/Develop/Afu/NanoVNA/Menu_map/Ho-Ro_nanoVNA_menu_readout-2.py", line 106, in show_menu
menu_text = f'{ms_dict[ param ]}'
KeyError: 'MS_LIN'

Your python code is very clever, but too complicated for me to follow :-(

Could you please have a look what is the cause of the tracebak?
73, Rudi DL5FA


Re: Menu Structure Map for V1.2.14? #firmware #menu

 

On Thu, Oct 27, 2022 at 05:59 PM, Ho-Ro wrote:


This is my current python code:
Now available on GitHub:


Re: Firmware Differences

 

Not that I have any real need to know but I am just curious what the "m" abbreviation stands for in the raw data example of "644m + 53.2m"? Does it happen to represent milliVolts RMS, milliVolts PTP calculated from the ADC output >measurement values or possibly something else?
m - milli
u - micro
M - mega
G - giga
And so on

Re Im value - just complex number
644m + 53.2mj = 0.644 + 0.0532j


Re: Firmware Differences

 

Additional:
Re Im - base measured value
All other values calculated from it