SimpleCalc

SimpleCalc

SimpleCalc is a small application that can help you calculate the cascaded noise figure of your EME receiving chain, predict the amount of sun noise your system should be able to detect and the SNR expected when receiving your own echoes or those from another station.

SimpleCalc can also be used to measure the level of noise received, it uses filtering on the audio signal from the radio (via soundcard) and presents the filtered data (RMS value) in a separate window.


During installation and debugging of my 70cm EME system, I developed SimpleCalc to help me understand and calculate the noise figure of my system, the effects of changing LNA's, cable losses etc. I also needed a quick and easy tool to help me calculate the expected sun noise I should be able to measure and at the same time, provide an easy way of recording notes taken during measurements and experimentation.


For many many years, the "EMECalc" program by Doug VK3UM (sadly now a Silent Key) has been "The tool" to use for doing this and much more (and still very much is!).


In my case, I needed something a little more "light" with only a fraction of the features of EMECalc. I also wanted to learn something!

This was how SimpleCalc was born.


Quick jump to sections:

Main window

SFU handling and update

Two station performance and echoes window

Noise measure window

Comment editor window

Calculation theory

  Calculation of RX noise figure

  Calculation of system noise figure

  Calculation of figure of merit, M (G/T)

  Calculation of expected Y-Sun level

  Usage of "crosscheck" feature

  Calculation of own echoes

  Calculation of DX station echoes

Download section

Release notes



DISCLAIMER:  

I'm NOT an mathematician !!

I have tried to make SimpleCalc correct. However, I do not by any means, claim to have the full overview of all the aspects of the math going into making the calculations "super precise". SimpleCalc calculates NF, predicts sun noise, and calculates echo strengths but leaves out a few of the finer details, details that might get you 0.1 or 0.2 dB closer to "the real truth". 


That being said, I think (and hope) that the application makes up for this by being simple and easy(er) to use.


One thing you can be absolutely sure about, is that there are errors in the program :) When you find some, please send me an email of what you see and have done. My email address is on the CV/Contact page.


During the development and testing of SimpleCalc, I got valuable input and suggestions from members of the Moon-Net email reflector, especially from Vladimir UR5EAZ, for which I'm very thankful! 



Below is a video of SimpleCalc when I made the first version, a lot has changed since, but it shows some of the features.

The main window

The main window of SimpleCalc is shown below.

This is where you enter most of the data for your system.

All the results in the "Results" box to the right are re-calculated every time you change one of the parameters on this (and other) screens of SimpleCalc. 


In order to calculate the "Expected sun noise" the program needs a "band specific SFU" value. The program fetches todays and yesterdays measure Solar Flux data from NOAA and uses these to calculate the SFU value for the (ham) band you select. The selection of which site to use for SFU data is done on another screen (see below).

The used SFU value is VERY important as even slight changes in that will have a great impact on the "Expected sun noise" value.


You can find much more information on the SFU values, their usage and what to be aware of by studying the many articles, posts and documents about VK3UM's EMECalc.


Each of the controls have "tooltip" help texts. If you let the mouser hover over a control, the tooltip help text will popup.


In the menu of the main window, you will find functions that allows you to save and load setups from files.

You can also save/load the current settings using the two buttons in the lower left corner.


The "Edit comments" button is explained below.

Update SFU Data window

This window handles all the updating and interpolation of SFU data. As the 5 sites that measure SFU data, only measure these on some specific "non ham" frequencies, we need to do some interpolation of the actual measured values in order to get the SFU value for the ham bands we are interested in.

Currently, I have implemented two different ways of doing this interpolation, "Spline" and "Lines". The Spline method uses a "spline" that goes thru all the measured SFU values to derive the ham band SFU values. The "Lines" method interpolates the SFU values by "drawing" a line between the two "neighboring" measured SFU values and calculating the needed SFU value.

The "Lines" method is what usually are used by observatories, it is regarded as the "standard" way of doing interpolation/extrapolation of SFU values to other frequencies.

I made both options available for now, as there are some different opinions on which gives the most correct answer!


Remember a Sun that is not stable/quiet can change the expected Y-Sun level a lot. Sometimes when the Sun is (very) active, the results can change from one moment to the other!


The "Lines" (standard) interpolation method is described here:

Determination of Earth Station Antenna G-T Using the Sun....




The SFU update window looks a bit busy at first.

The upper part with the table, lists the measured SFU values from around the world and different times. Red colored columns are data from "yesterday" and orange colored columns are data from "today". Use the column that is closest in time and location to your location and time.


In the yellow column, you can manually enter measured SFU values (for example historic data) and use these as the basis of the band specific SFU values.


To the extreme right, there is a list of the ham bands and their calculated SFU values (derived from the measured SFU values). The band specific value(s) shown there is the value that is used on the main window for the "Expected sun noise" calculation. 

If you change the data on this page, the SFU value on the main window are automatically updated.


The graph on the bottom half of the window shows both the physical measured SFU values and also the derived "ham specific bands" SFU values. The blue data is the measured SFU values and the orange data is the derived/interpolated ham band SFU values.


It can sometimes happen that a measurement site does not have data for one or more of the frequencies, this will be shown as "-1" in the data. Depending on the interpolation method used (Spline/Lines), you can get into a situation where there is no valid data for a specific ham band.


Using the "Fetch newest data" button will download the newest data from NOAA, these data are downloaded using FTP from: ftp://ftp.swpc.noaa.gov/pub/lists/radio/rad.txt


When downloading data, a copy of these are saved in the "Documents" folder on your PC in "...Documents/LastSFUData.txt".


Page 3 in this document explains some of the theory behind interpolation of the measured SFU values to a specific frequency: Determination of Earth Station Antenna G/T Using the Sun or the Moon as an RF Source


SimpleCalc can use either "linear interpolation" or "Spline interpolation". There is some discussion about which one gives the "most correct" answer.


The "Linear interpolation" is also what is used by for example Learmonth Observatory:

Australian Space Weather Forecasting Centre - Quiet Solar (IFLUX)


If you enter the measured flux values from the table on their website:


After entering the measured Flux values in the "Your data" in the "Get SFU data", you can enter any of the frequencies used in the Learmonth IFLUX screendump in the main window of SimpleCalc, f.ex 6000 MHz, and you will see that the interpolated value matches (313.4) exactly the calculations done by Learmonth.

This is when using "Linear interpolation" in the "Get SFU data" window.


As previously noted, some believe that a "Spline interpolation" is more correct. The choice is yours :)


Two station and own echo window

The "Two stations performance and echo's" window lets you calculate the possible SNR (Signal to Noise Ratio) between two stations. It will also tell you the SNR of your own (and the DX stations) own echo's. You can copy the values from the main screen to either the "Home" or the "DX" half of the window, you can also save and load the settings for Home and/or DX.

Let the mouse hover above each control and you will get some help for each field.


I found excellent inspiration here: KA1GT - EME Echoes


Noise Measurement window

The application has a window that will allow you to measure the noise level currently received. The application uses a soundcard interface to sample the audio, filters this and calculates the RMS value from this. It is VERY important that you DISABLE AGC completely when doing this, only by disabling the AGC the measurements will make any sense.


It is also VERY important that the receive chain is linear in the range of the noise measured, clipping/limiting by the receiver will make the measurements invalid!

A good test is to use a good step attenuator before the receiver, check that the attenuation selected matches the difference shown on the noise window measurements!


Using the control to the left, you can select which input to use, the dB per division and the width of the graph in seconds.

Pressing the "Delta = 0" button will take a snapshot of the current measured noise level. The "Delta(dB)" number just below the button, will show the delta between the snapshot and current noise level (The "snapshot" used will also be save in settings, so the next time the application is started, this stored value will be used as the basis for the delta value). Pressing "Pause" will pause the update of the graf, the data collected will be inserted once the button is pressed again. Right click with the mouse inside the graph area to bring up the submenu shown.


Comment window

SimpleCalc has a built-in "documentation window". The "Comment" window allows you to keep a log of what you measure, the conditions when you did the measurement etc. Basically you can enter whatever text you want. The contents of the comment window will be saved along the entered data on the main window and SFU window if you do a "save config" from the menu on the main window.


The comment window lets your enter text, change font, add colors, add screendumps etc., pretty much like "Wordpad" or other (simple) text editors.

Theory behind calculations

SimpleCalc uses a number of generally used formulas and constants. I have tried to make the calculations as correct as possible (when I started SimpleCalc, I had no idea of how pretty much any of the values were calculated!)


Below is a number of screenshots from the main window and the echo window. On each screenshot, a green thick square identifies a calculated value, the red circles/squares around other numbers shows the input to the calculation.

Receiver noise figure

First the receiver noise figure is calculated. This is basically the "cascaded gain and noise figure" of the "receive chain from the feeding element to and including the receiver.


This calculation includes the "Line 1 cable loss" which starts at the "feeder element" of the antenna. The Line 1 cable loss must include losses in a balun if such a thing exists in your antenna and everything else to the input of the first LNA, including cables, connectors and relays.

Overall noise figure

The "overall noise figure" is then calculated.

This is the calculated receiver noise figure including "ohmic losses" in the antenna and the "effective antenna temperature due to external noise" (Ta).


Ta:

"The antenna temperature, Ta, is the convolution of the antenna pattern and the brightness temperature of the sky and ground. Ta is the "pure" external noise temperature. It does not include the antenna noise temperature due to the antenna's ohmic losses."


The noise temperature due to losses in the ground and surrounding objects is related to the brightness temperature of the antenna, Ta.

The losses in the ground and surrounding objects are not related to the ohmic losses of the antenna.

 

In other words, losses in the ground and surrounding objects are not related to losses in the antenna and, in general, do not reduce the radiation efficiency of the antenna.

 

Figure of merit, M (G/T)

G/T is the "Gain to noise Temperature" of the receiving system.


More: Measuring G/T 


"Figure of merit, M

Figure of merit, M is a measure of the performance of the radio receiving system including the receiving antenna, any transmission lines to the receiver, and the receiver itself.

M = G/T, 

where

M = figure of merit, ratio

M, dB = 10*log(M)

G = antenna gain relative to isotropic radiator, ratio

T = Top = system operating noise temperature relative to 1 K, ratio"


Some more on G/T:

ITU - S.733-2 - Determination of the g/t ratio for earth stations operating in the fixed-satellite service


Expected sun noise

Last calculation is the expected sun noise/Y-sun level.


The amount of sun noise we are expected to measure relies on the current SFU (Solar Flux Index) for the frequency we operate on (important!) and the calculated G/T of the receiving system.


The SFU value (for the frequency we calculate on) is an interpolated value (calculated on the "SFU window" in SimpleCalc). As it is an interpolated value, it is not a "scientific truth". There can also be wild fluctuations of the SFU values, even from one hour to the next. When comparing "expected sun noise" values it is extremely important to use the correct SFU value, even a small change in SFU value (for the frequency in use) can change the calculated expected sun noise by quite a lot! On the "Get SFU data" window you can see how the band specific SFU value is inter- and/or extrapolated (extrapolated below 245 MHz and above 15400 MHz).


The calculated value is also dependent on the frequency selected. Using the "Band" group of buttons, you can quickly select one of the usual Ham radio bands, you can also enter your own specific frequency in the entry field at the bottom.


Using the "crosscheck feature" described below, it is also possible to enter the actual Y-Sun (amount of sun noise you measured) and have the program calculate what the Ta value would have to be in order for the program to "predict" that level of Y-Sun level (this requires all other parameters to be correct!).


Crosscheck feature

It is possible to enable a "crosscheck feature" on the main window:

If you enable the "crosscheck feature", a new section will be shown on the main window:

In the crosscheck section, when enabled, you can enter the actual measured Y-Sun value (in the example above, 12.80 dB). The Ta value was initially entered as 40.00 K, and that gave an expected Y-Sun value of 13.34 dB.

When you enter the true measured Y-Sun value in the crosscheck section and press the "Ta from Y-Sun" button, SimpleCalc will calculate (crosscheck) the Ta value that would result in the measured Y-Sun value. 

This requires that all other values are correct, the cascaded noise figure of the receiver, the antenna gain, the ohmic losses etc.

If you press "Yes" on the pop-up window, the screen will look like this:

You can now see that the "Overall NF/temperature", the "Figure of merit, M (G/T)" and the "Y-Sun level" have been recalculated with the new calculated Ta value. If you then disable the "crosscheck section", the window will now look like this:

The Ta value is now set to the calculated value, and the expected Y-Sun level is now the same as the one we just measured and entered in the crosscheck section.

Two station performance and echoes

The "Two station performance and echoes" window calculates the expected SNR of your stations own echoes and what SNR you will hear another station with (and vice versa).


The strength of your own (and another stations) echoes depends on the antennas, the power, the frequency, the system sensitivity, the bandwidth of the receiver and the current degradation ("extra" galactic noise and distance to the moon).


If degradation is set to 0.00 dB the calculations assumes the moon is at a distance of 384000 km (which is the

average distance between the moon and the earth).

The current degradation value can be seen in WSJT (Astronomical data) and other applications. Currently SimpleCalc does not calculate the current degradation by itself but relies on valid numbers from other programs.

System sensitivity

First the "system sensitivity" (receiver noise floor) of both the Home and DX stations are calculated.


This uses the calculated "Overall NF" and the selected bandwidth as input.

Calculation of own echoes strength

Own echoes is the SNR that each station (Home and DX) can (under optimum conditions!) hear their own echoes.

In this calculation, the "Antenna ohmic losses" are subtracted from the transmission power then the antenna gain is added. This gives the radiated power from each station.

The degradation value is subtracted from the received SNR value.


This calculation does NOT take any polarisation offsets into account (or Faraday rotation), it assumes perfect alignment and polarisation.

Calculation of other stations strength

The "other" stations echo strength is done in principle like calculating ones own echo strength.

The difference is that the TX power is taken from the other stations definitions, and where the combined antenna gain in the "own echo" calculation is two times your own antenna gain, it is now the gain of your own antenna plus the gain of the other stations antenna.



Download

SimpleCalc runs under Windows operating system. There are no installation to be done. The program consists of a single .exe file, simply download this, copy it to a folder and execute it from there.


SimpleCalc will create a configuration file in the folder it is located in, this file contains all settings you do in the program. 

Please note, you might get "false positive" virus alerts from Microsoft Defender. This is quite normal, and nothing to worry about.


If you notice "funny things" with saving settings, storing data, please make sure that the program has write access to the folder where you try and write to (for settings problems, the folder where the application is located). Alternatively you might try and start the application in "Administrator mode".


2024-11-26 SimpleCalc - Version 1.0.0.7


For the Station files below, right click and "Save to" and save them in a folder. Use "Load file to Home station" and "Load file to DX Station" to load the settings into "Two station performance and echoes" window in SimpleCalc. 


Station (.STA) file for NC1I: NC1I 70 cm system

Station (.STA) file for OZ9AAR: OZ9AAR 70 cm system


2024-11-14 SimpleCalc - Version 1.0.0.6

2024-11-06 SimpleCalc - Version 1.0.0.5

2024-11-05 SimpleCalc - Version 1.0.0.4

2024-10-26 SimpleCalc - Version 1.0.0.3

2024-10-16 SimpleCalc - Version 1.0.0.2

2024-10-02 SimpleCalc - Version 1.0.0.1

2024-09-27 SimpleCalc - Version 1.0.0.0 




Release notes

2024-11-26 - Version 1.0.0.7

  • Minor changes in texts/functionality for crosscheck function (Thanks UR5EAZ)
  • Fixed bug in "two station" window, EIRP for DX station was not calculated.
  • In "two station" window you can change the moon distance. Both Home and DX uses the same pathloss/distance
  • New menuitem, "Settings", for now only observer location (needed for calculating the moon distance on "two station" window)
  • Moon distance can be set in "two station" window, used in calculationg pathloss (distance to home location)



2024-11-14 - Version 1.0.0.6

  • Fixed a small error in one of the used constants in the program (Thanks UR5EAZ)
  • Added (calculated) noise temperatures for the losses in the 3 lines and for antenna ohmic losses, both main window and two station window (Thanks UR5EAZ)
  • Updated various tooltip texts in the program
  • Added temperature display for all losses
  • The "power at the feed" on "two station" window is shown in dBW and EIRP also


2024-11-06 - Version 1.0.0.5

  • On Noise measure window, you can select between Left and Right channel from soundcard
  • Crosscheck was miscalculating a little under certain conditions (Thanks UR5EAZ)

 

2024-11-05 - Version 1.0.0.4

  • Error in SFU window if NOAA FTP server was not reachable. Now fixed (Thanks Jos PA0JOZ)

  • Changed suffix names of settings files on main window if using "Actions -> Save settings to file" menu item

  • Added and corrected tooltip texts for all controls on all windows

  • Added "Crosscheck" feature on main window (please see website for explanation: Crosscheck)

  • Added "Two station echoes" menu item/feature

  • Changed menu items and their functionality (hide/show) 


2024-10-02 - Version 1.0.0.3

  • Small bug fixes.
  • Added Noise window


2024-10-02 - Version 1.0.0.2

  • Small bug fixes.
  • Downloaded SFU data will now be placed in the root of the "Documents" folder (if you want to save them for some reason).
  • Easier to resize images if pasted into the "Comments" window.

2024-10-02 - Version 1.0.0.1

  • The antenna gain was limited to only 40 dBi by mistake. Changed to 60 dBi. (Thanks Roger W3SZ)
  • Added a "user defined frequency" entry field on the main page. User can enter a frequency in MHz and have the program calculate (interpolate) a SFU value for that (thanks Bob K6ZZ)


2024-09-27 - Version 1.0.0.0 

  • This is the initial release