SATSAGEN v.0.8.0.0

Highlights

Important changes in Satsagen 0.8.0.0

I leave the list of important changes to read at the end of the article to avoid any difficulties using this new version. Maybe they should have been placed here, but I hated to take up too much space at the top of the main points!

Noise Figure and Gain Analyzer

The NF/G analyzer integrates into the Satsagen spectrum analyzer, which is based on the Y-factor method. Markers help configure the frequencies, IF, and bandwidth of the devices under test.

You will need:

A noise source with an attached ENR characterization table and an SDR device with adequate sensitivity are needed to perform the Noise Figure and Gain measurements. Furthermore, an interface capable of supplying the noise source with 28V and that can be controlled by the application would be necessary, but optional.

I have obtained reliable and comparable results with instruments such as the Eaton 2075 using an ADALM-PLUTO or an RTL-SDR v3 as SDR receivers. The maximum usable and recommended bandwidth for measurements is about 1 MHz with ADALM-PLUTO and 500 kHz with RTL-SDR v3. However, higher bandwidths can be used with the aforementioned two SDR devices at the expense of measurement times and precision.

The noise source I used in testing is an NH 5-12 built by Mauro IZ1OTT and characterized in comparison with an HP 346B. Mauro’s NH 5-12 has an average ENR of about 6.67 dB from 40 MHz to 10368 MHz.

Other Satsagen supported SDRs can be used in addition to those listed above, but from what I have been able to ascertain, there is no guarantee of success in the measurements for all the standard amateur radio frequencies covered by SDR devices without the use of additional LNAs placed before the SDR input to improve their sensitivity.

The quality of the measurements is linked to the noise source and SDR binomial. About the noise sources, it is important to have an ENR value that is sufficient, but not excessive, and characterized in a table using professional instrumentation. For SDRs, reception sensitivity and an adequate SNR are important.

Some notes on this from Mauro IZ1OTT:

<<Given the low sensitivity of SDRs, it is recommended to place a preamplifier between the DUT and the SDR, especially when measuring DUTs with low Gain (< 20 dB) or even zero. Regarding the ENR of the sources, only commercial heads already have a table with values ​​around 15 dB, therefore suitable for any type of measurement. Lower ENRs, obtainable by interposing an attenuator, can improve the measurement precision for low NF (ENR~NF), due to a better adaptation between DUT and source.>>.

Follow a first empirical test to exclude that your SDR/noise source system is completely unusable:

– Make a calibration

– Keeping the noise source connected directly to the SDR RX

– Check the read noise figure and gain values ​​do not oscillate beyond +/- 0.2dB for all the measurement frequencies that interest us.

As for the power supply interface of the noise source – at the time of writing this article – there are two choices supported by Satsagen: use an Arduino Nano or compatible with this sketch and a Step-Up converter plus an optocoupler ( simplified circuit diagram, circuit diagram with voltage control) or use the RTS line (active high) of the serial port of your PC (or a USB/Serial interface) that drives an optocoupler or a mosfet connected to the 28V power supply. It must be said that Satsagen still offers the possibility of one-shot measurements even without the above interfaces; in this case, it is necessary to power the noise source manually in the calibration and measurement phases, all at the expense of convenience and speed in the measurements.

Finally, to improve the impedance matching towards the SDR input, I recommend inserting the usual 1 dB (or at most, 3 dB) attenuator at the SDR RX input.

Preliminary operations :

ENR Table Insertion

First, the ENR table must be inserted into the Satsagen configuration to load it at each program startup. Run Satsagen, go to the Settings->Computations tab, open the ENR table editing tool by clicking on the ENR INI Edit Tool button:

Now enter the ENR values ​​of the noise source at our disposal (remember to select the Append box to make data entry easier), as follows, for the source noise I used:

Once the compilation is complete, export by clicking on the Export button to a file, for example Documents\satsagen\settings\mioENR.ini. Close the tool and enter the above complete path in the ENR INI File box and click OK (to make the entry easier, click on the … button to directly select the file):

SDR selection and power noise source pilot interface

Proceed as follows using an ADALM-PLUTO as SDR:

Go to Settings->Devices and choose, as usual, the SDR device you will use, in the example, an ADALM-PLUTO. Keep the other settings as shown in the images:

Then go to the EXT in/Out tab and configure the interface by selecting Noise source power interface from the list:

Measuring a DUT amplifier:

For example, we have a 23cm bandwidth LNA whose noise figure and gain we want to measure in a bandwidth of 400 kHz:

  • Start the SATSAGEN spectrum analyzer
  • Open the marker table by clicking on the Edit SA markers button on the toolbar
  • Fill in the ReqFrequency fields with the desired frequency in Hz, in this case 1296000000, Span (this is the bandwidth) with 400000, and CalcMode with NF/G (choose the NF/G item from the drop-down menu). We confirm the creation of the marker by clicking on the Post button in the toolbar:
  • At this point, click on the ON button of the NF/G Analyzer tab:
If you notice unwanted components or other transients in the spectrum within the gray acquisition window, you can move that window (the marker) using the J and K keys on your keyboard or the mouse wheel, until the window includes a “clean” spectrum with only the noise floor, trying to avoid including the DC component present in the center.

SATSAGEN will automatically configure all spectrum analyzer parameters such as center frequency, Span, RX gain, FFT size, video filter size, and more, compliant with DUT gain and noise figure measurement. It should be noted that, once the measurements are completed, SATSAGEN will reset all modified spectrum analyzer parameters to the previous user values.

  • Connect the noise source to the Pluto RX port and start the system calibration by clicking the Cal SYS button on the NF/G Analyzer panel. After about 12 seconds, the calibration should complete, and the Cal SYS button should turn green.
The noise source power interface in this image is more complex than necessary; it is a prototype with other functions, including digital and analog trigger inputs, the ability to drive PLL synthesizers such as the ADF5355, and RF switches for use in VNA mode.
System calibration is complete.
  • Connect the DUT and power it, and after a few seconds, we will get the relative noise figure and gain measurements.
SATSAGEN reports a DUT gain of approximately 14.5 dB and a noise figure of 4.0 dB at 1296 MHz.

The DUT amplifier measurements are finished. Close the NF/G analyzer by clicking the green ON button on the NF/G Analyzer panel or by turning off the Spectrum Analyzer.

Measuring a converting DUT, such as a transverter:

To measure a converting DUT, proceed in the same way as previously seen for the amplifier DUT, with the only difference in filling in the marker, where for converting DUTs, you must also enter the IF frequency, or the local oscillator of the device under test. If you measure as a down-converter, the IF frequency must be entered with a negative sign.

For example, we have a 13cm transverter and we want to measure it as a down-converter from 2304 MHz to 144 MHz:

  • Start the SATSAGEN spectrum analyzer
  • Open the marker table by clicking on the Edit SA markers button on the toolbar
  • Reuse an old record of type CalcMode NF/G, or create a new one, fill in the fields ReqFrequency with 2304000000, Span with 400000, IF Frequency with -2160000000, and CalcMode with NF/G. Confirm the creation/modification of the marker by clicking on the Post button in the toolbar.
  • Click the ON button on the NF/G Analyzer tab to start the analyzer:
As you can see, the spectrum analyzer tunes to the transverter output frequency, 144 MHz (2304MHz-2160MHz=144MHz).
  • Connect the noise source to the Pluto RX port and start the system calibration by clicking the Cal SYS button on the NF/G Analyzer panel. After about 12 seconds, the calibration should complete, and the Cal SYS button should turn green.
  • Connect the transverter under test and power it. After a few seconds, we will obtain the noise figure and gain measurements of the converting DUT:
Down East Microwave 2304 MHz WA8NLC no-tune transverter under test
SATSAGEN measures a DUT converter gain of about 14.4 dB and a noise figure of about 2.8 dB.

The converting DUT measurements are finished. Click on the ON button to close the NF/G Analyzer, or turn OFF the Spectrum Analyzer.

Digital Phosphor Display

A spectrum analyzer can perform thousands of acquisitions per second. At high acquisition rates, due to the characteristics of today’s PC monitors and the human eye, much of the information displayed can be imperceptible and irretrievably lost.

At one time, some measuring instruments, such as oscilloscopes, used cathode ray tubes with long-persistence phosphors that allowed them to see fast transients and better analyze very slow events.

Some important manufacturers of spectrum analyzers have an idea of digitally reproducing the characteristics of the old tubes with long-persistence phosphors, the technology is called Digital Phosphor Display.

At the suggestion of Bruno IK1OSG, I thought of also equipping Satsagen with DPD, although in a simplified form, I believe.

From the SA DPD panel click on the Digital Phosphor Display button to activate this function.

Unlike the existing Max Hold function that “photographs” and allows you to see fast events, provided that they are of greater intensity than the previous ones, the DPD keeps all the acquired spectra visible regardless of their amplitude, for a time (persistence) that can be set by the user using the controls in the DPD window tool panel. Furthermore, subsequent overlaps can be discriminated thanks to the fact that the DPD colors them differently, going from a scale that starts from blue to reach the color red. This level of color depth can also be set from the DPD tool panel.

The DPD necessarily counts the occurrences for each resolution point, so the spectrum data is dumped into a bitmap matrix memory. For this reason, it is necessary to define the working size of the bitmap. This setting is made from the SA DPD panel with the Max Data Samples (X-axis) and Amp Samples (Y-axis) controls, the default values ​​are 1024 x 64.

A possible downside of this technology is that it is usually lower in resolution than traditional spectrum viewing, making the view more “squared”, especially when zoomed in.

The graininess of the DPD display can be circumvented by increasing its resolution using the aforementioned Amp Samples and Max Data Samples controls; on the other hand, this follows an increase in memory usage and progressively heavier load on the system’s CPU.

To address this DPD issue and find the right compromise in the settings for resolution quality and execution speed, I thought of setting a working window on the Y-axis of the amplitude, so that the user can define the minimum and maximum limit in dBm within which the Amp Samples are rendered. These Min and Max controls are accessible from the Amplitude pane in the tool panel of the DPD window.

Above is the spectrum view updated every 16ms or so. Below is the DPD window. In this example, there are two active RF sources: the first is a CW scanning from 2447 MHz to 2457 MHz, and a wireless source (mouse) searching for a receiving device from about 2461 MHz to over 2475 MHz. As you can see, in the classic view, only the CW is visible at a specific moment in the scan.

Digital Phosphor Display Controls Summary:

DPD SA Panel
  • Digital Phosphor Display button: turns the DPD on or off
  • Amp Samples List: defines the Y-axis resolution in pixels
  • List Max Data Samples: defines the X-axis resolution in pixels
DPD Window Tool Panel
  • Min and Max knobs: define the working window expressed in dBm in which to perform the Y-axis rendering
  • Reset Button: Resets persistence by restarting rendering from a blank display
  • Depth Knob: Defines the depth level of persistence. If set to 10 as in the example, acquisitions that exceed 10 hits will be lost, because they are more frequent than the persistence interval.
  • Display Max Knob: Defines the mapping between the persistence depth level and the color scale. If set as in the example, where the map is 1 to 1 with the persistence depth level, the first occurrence will be in blue and the tenth in red. For example, if you set the Display Max to 5, the first occurrence will always be in blue, but the fifth to the tenth will be in red.
  • Persistence Knob: Set the persistence in seconds in 1ms increments for each pixel in the display. For example, with a setting of 0.23 seconds, the single event is recorded 230 ms earlier to be erased from the display. Two values ​​are displayed next to the knob. The first is the persistence, the second is the total maximum persistence of each pixel, essentially Depth x Persistence.
  • Res Adapt Button: Adapt the resolution of the X-axis data to the pixel size of the DPD window, so that any signals present that are “narrower” than the video resolution are still displayed. If using the zoom function, the  Res Adapt function should be turned off in order to take advantage of the maximum available detail.
  • Hold button: “Freezes” the view.
  • ZReset Button: Resets any zoom factors on both the X and Y axes.

Zero Span

Zero Span is a spectrum analyzer mode that displays the signal amplitude as a function of time.

To activate this mode click the Zero Span button with the Spectrum Analyzer already running.

In Zero Span mode, the Span MHz, Full Band and Span Coupled controls are disabled and a dedicated Time Base knob is visible on the panel.

The working frequency can be specified as usual with the Frequency kHz control and the resolution bandwidth with the RBW control.

Time Base allows you to set the time base in steps of 1 ms, 2 ms, 5 ms, 10 ms, 20 ms, 50 ms, 100 ms, and 500 ms. The Time Base is for the entire X-axis range, so if it is set to 10 ms, with a ten-division scale, you get 1 ms/div.

The values ​​on the X-axis scale of the scope are expressed in ms and displayed in the decimal precision selected by the user. The scale may not end with an integer, it should be noted that with a Time Base set to 10ms, the scale may end based on the characteristics of the system, for example, at 10.048ms.

This is also due to the integer nature of the points that make up the display. The formula for the X-axis resolution is: TimeBase/(1/(MSPS/FFTSize)). With a TimeBase of 10ms, an MSPS of 8000000, and a FFTSize of 512, we get 156.25 points. The points must be rounded to 157, so the actual TimeBase is: points_resolution (1/(MSPS/FFTSize)) = 0.010048 seconds.

Some time-based values ​​are strictly related to the sampling rates available in the SDR device and the characteristics of the computer in use. For example, if the SDR hardware does not allow sampling rates higher than 2.4 MSPS, the 1ms, 2ms, and 5ms values are not available.

Satsagen automatically chooses the best sampling rate for the selected SDR device. For example, with the RTL-SDR, Satsagen sets the sampling rate to 2.4 MSPS. Given an FFT size of 512 and a minimum resolution of 40 points, this results in a time base starting at 10ms and up with the device. It is possible to achieve a faster Time Base setting using higher-performance SDRs; the characteristics of the computer and the application become increasingly important for the correct functioning of the Zero Span mode.

In such circumstances, we can act through the MSPS knob from the extended controls to identify the best sampling rate for our system (SDR / Computer / Satsagen) to obtain a faster time base in the absence of acquisition errors. To access the extended controls, click on the RBW writing:

Procedure to verify the correct functioning of the Zero Span mode and identify the best sampling rate:

  • Connecting an external AM-modulated generator to our SDR
  • Start the spectrum analyzer and Zero Span mode
  • Set the Frequency kHz and RBW suitable to display the signal from the generator
  • From the SA Triggers panel, activate Video and rotate the Level knob to a suitable level to obtain a “still” display of the input signal. If necessary, click on the Level of the Trigger knob to switch from a negative to a positive Slope or vice versa.
  • Rotate the MSPS knob to increase or decrease its value to find the highest sampling rate where the display is still and complete.
In this case, the sampling rate is higher than the system capacity for a regular Zero Span operation; overflow and loss of information occur.

Once the best MSPS value has been found, the setting will be automatically saved and loaded in subsequent Satsagen sessions with the same SDR device.

By activating the Zero Span mode, the spectrum analyzer switches from the frequency domain display to the time domain display, so all units referred to the X-axis of the display, the markers, and the cursors are expressed in ns, us, or ms. The markers inserted in Zero Span mode are of Type = Time and have the Time field valued in nanoseconds. These markers are not available in the classic frequency domain mode of the spectrum analyzer; similarly, the markers inserted in the frequency domain are not available in Zero Span.

In Zero Span mode, the MKR Monitor and Digital Phosphor Display functions can be activated, while the waterfall cannot be opened.

Zero Span mode will not activate (the button flashes red and then turns off) if one or more of the following conditions are true:

  • Full Band mode is active
  • The Noise Figure/Gain Analyzer is active
  • The receiving device is not an SDR
  • The spectrum analyzer is not running
  • Multithreading is not active
  • One of the LO F or EF filters is active
  • The set frequency is too low. The minimum frequency that can be set in Zero Span mode is approximately the minimum frequency of the SDR device plus the sampling frequency divided by eight.

USRP B200mini and NI USRP 2920

Thanks to the infinite generosity of my radio amateur friends, I have been on loan for a few months a USRP B200mini and an NI USRP 2920. I thought it might be interesting to add support in Satsagen for the aforementioned high-performance SDRs.

I would like to point out that the results obtainable in Satsagen are not only conditioned by the characteristics of the connected SDR devices, but also to a large extent by the quality of the computer and the connected communication peripherals, as well as obviously by the quality of the software!

For these reasons, I take full blame if you are unable to obtain the results you hoped for with the above USRPs using Satsagen; Satsagen technology is constantly evolving, and the computers I had available for development and testing may not have had the requirements for the full use of these high-performance SDRs.

If you do not want support for USRP devices in Satsagen, you can exclude them during installation from custom setup by unchecking USRP Support under DefaultProgram.

B200 mini

As you know, the prerequisite for any hardware is the driver. Visit this Ettus driver page to install the necessary packages in Windows. Some USRPs, like the B200mini, also need the firmware and FPGA files installed on the computer, so they should be loaded on the device at first use. These files are included in UHD packages; download and install the latest uhd_x.xxx-release_Win32_VS2017.exe package from the Windows-10-x64 directory.

To use the B200mini, you need to install the drivers; from the above page, download from the Download and install Windows UHD USB Drivers link, Post-Install Tasks section.

Once UHD and drivers are installed, connect the B200mini to a USB3 port on your computer and check in Computer Management->Device Manager that an Ettus Research LLC B200mini is present under USRPs.

Then start Satsagen and from Settings->Devices->Model choose the USRP B200mini entry. It may take about ten seconds before the device becomes available; during this time, the application may be blocked as it is busy uploading the firmware to the device.

Check the CM recv frame size from the Device Options tab. This option adds the parameter recv_frame_size=131072 to the connection arguments; that is a custom parameter I have found useful for improving communication performance with Satsagen.

You ou can close Settings by confirming with Ok and clicking on the Satsagen Power button.

Again, when first connecting to the B200mini, it could take a few seconds before the interface become operational due to the file upload times for the FPGA to the device.

Now you can use Satsagen as usual, connected to the SDR B200mini.

Here are some important notes for using B200mini in Satsagen:

The B200mini has the AD9364 transceiver, from the same family as the AD9363 from ADALM-PLUTO, so the frequency range and bandwidth characteristics are similar to Pluto, but with some differences, mainly due to the firmware and the different design of the RF front-end.

  • The TX output can reach about 20 dBm on some frequencies, thanks to an internal booster
  • Probably due to the above booster, the resulting cross-talk is quite significant.
  • Harmonic mode is not available for the B200mini, as I was unable to obtain satisfactory results starting from the third harmonic of 2 GHz (6 GHz).
  • The AD936x transceivers have a shared baseband between RX and TX, so full-duplex operation can be limited and cause effects such as the production of unwanted components and more. In addition, the automatic TX calibration performed by the B200mini firmware requires that the RX bandwidth filter is always set to 56MHz (the maximum value).
  • The FPGA is not programmed as DDS in TX, so the TX stream will always use the computer’s CPU and the USB bandwidth. Since the baseband is shared, in a full-duplex use, as in the case of the Spectrum Analyzer and the generator both active, the sampling rate of the TX section is aligned to the RX. For example, if you set a 10 MHz span in the Spectrum Analyzer, Satsagen is forced to generate and send the TX stream to the device at about 20 MSPS. For these reasons, it may happen that a span setting close to the maximum bandwidth of the device may even compromise the quality of the TX output, as Satsagen and the computer are unable to produce and send a stream to the device without errors.
  • I noticed a slight slowness in the quadrature and automatic reduction of the DC component in the frequency changes in reception. This slowness is reflected in the overall scanning times when using the Spectrum Analyzer in swept-mode, that is, from 31 MHz of span onwards.

NI USRP 2920

I have added support and tested the NI USRP 2920 device using the Ettus Research USRP2/N-Series firmware.

Other programs, as GNU Radio or SDR Console, can also use the NI USRP 2920 with the Ettus Research USRP2/N-Series firmware. However, the setup is not supported by National Instruments.

I decline any responsibility in case of malfunctions, blocks, loss of data or compromise of the security of the PC resulting from operations carried out following this tutorial.

The NI USRP 2920 communicates with your computer using a gigabit Ethernet network connection. The NI USRP 2920 defaults to a class C address of 192.168.10.x. Your PC’s network must be configured to reach this address.

In most cases, PCs are configured with a dynamic class C address 192.168.1.0, so the easiest and fastest way to get the PC to communicate with the NI USRP 2920, if for example the PC has an address belonging to the aforementioned class C, such as 192.168.1.100, is to statically assign the address to the PC by specifying a subnet mask of 255.255.0.0 instead of 255.255.255.0.

As with the B200mini, visit this Ettus driver page to install the UHD package in Windows; download and install the latest uhd_x.xxx-release_Win32_VS2017.exe package from the Windows-10-x64 directory.

Once the UHD package is installed, connect the NI USRP 2920 to the network and power it on.

From a command prompt, change to the SATSAGEN directory: cd C:\Program Files (x86)\albfer.com\SATSAGEN then run ..\..\UHD\bin\uhd_usrp_probe.exe

The uhd_usrp_probe utility searches for devices on the network using multicast, even without knowing the IP address of the NI USRP 2920; it will be able to reach and query it.

If the utility does not recognize the device as a USRP2 / N-Series Device, it will not list its characteristics and may display an error like the following:

In that case, by following the above instructions, we will be able to load the Ettus Research USRP2/N-Series firmware onto our NI USRP 2920, so that it can be “seen” by Satsagen and also by other SDR programs as a USRP2 / N-Series Device.

Once we have finished installing the firmware using the uhd_images_downloader.py utility and checked the NI USRP 2920 configuration again using the uhd_usrp_probe.exe utility, we can run Satsagen and connect it to the SDR.

Then start Satsagen and from Settings->Devices->Model choose the USRP2 (N210/2920) entry.

Check in the Device Options tab that CM recv frame size is checked. This option adds the parameter recv_frame_size=131072 to the connection arguments; this is a custom parameter that I have found to be useful for improving communication performance with Satsagen.

As you can see, the harmonic mode for NI USRP 2920 is available.

At this point, you can close Settings by confirming with Ok and clicking on the Satsagen Power button.

Now you can use Satsagen as usual, connected to the NI USRP 2920 SDR.

Here are some important notes for using the NI USRP 2920 in Satsagen:

  • The frequency range is from about 68 MHz (about 58 MHz using 10 MHz of receive-only span) to about 2.2 GHz.
  • Harmonic mode is available, by activating it, reception and transmission can be extended from 2.2GHz up to 6.4GHz
  • The device does not have a fine granularity in the sampling rate setting. For example, if the user sets 4 MHz of Span in the Spectrum Analyzer, corresponding to 8 MSPS, Satsagen will configure the receive sampling rate to 8 MSPS, but the device will return the value of about 7.7 MSPS. This is reflected in the actual scale displayed, in a span lower than what the user requested. Even in Zero Span mode, the time base may not be perfectly scaled with the steps 10 ms, 20 ms, 50 ms, etc, because they are directly linked to the sampling rate of the device. I do not know if this peculiarity is due to the Ettus Research firmware.
  • I noticed that the PLL lock on certain frequencies does not work. For example, with the device I had under test, it is not possible to set the TX PLL to the frequency of 127328760 Hz. I do not know if this malfunction is also due to the use of a non-NI firmware.
  • I also noticed a significant slowness in the cancellation of the DC component in reception following frequency changes. This slowness causes a display of the DC lines when the spectrum analyzer is in swept-mode:
400 MHz span corresponds to 40 frequency changes of the receiving LO

You can avoid this “noisy” display by activating the EF filter:

The CBX-120 option.

The NI USRP 2920 can accommodate options to replace the RF front-end board.

I was able to test the NI USRP 2920 with the CBX-120 option on board, which allows for a fundamental frequency range from about 1.2 GHz to 6 GHz.

This configuration is unique, since the CBX-120 is normally intended for the higher-performance NI X-series SDRs. In fact, with the X-series, this card can reach 120 MHz of bandwidth, while if used in an NI USRP 2920, you get around 25 MHz of bandwidth (50 MHz with 8-bit depth).

To use an NI USRP 2920 with the CBX-120 on board in Satsagen, you need to select the USRP2 (N210/2920) w/CBX120 device from Settings->Devices->Model.

Harmonic mode cannot be activated with the CBX-120.

AS7265x Spectrometer

I have been thinking for a long time how intriguing it would be to visualize in Satsagen the data produced by an optical spectrometer, no longer in MHz as usual, but in nm wavelengths!

The recent re-posting of an affordable spectrometer for the hobbyist on a popular electronics blog convinced me that now was the right time to make that wish come true.

The spectrometer in question uses three AMS sensors, AS7265x series , each capable of measuring six wavelengths with Gaussian filters approximately 20nm wide, for a total of 18 sensors/wavelengths measured.

It is not a professional instrument with a prohibitive cost, but despite this, AMS proposes it for various fields of application in the analysis of materials, including anti-counterfeiting, the search for adulterated products, in horticulture, and in portable spectroscopy in general.

This article, written by Boris Landoni, Technical Manager of Futura Group, is a complete description of the spectrometer in question.

The demo board I used can be driven by a serial connection. Since the spectrometer serial levels are at 3.3V, it is convenient to use a USB/serial interface such as FTDI232 to complete the connection with the PC.

My prototype AMS AS7265x spectrometer on a breadboard with an FTDI232 USB/serial interface

Using the AS7265x spectrometer with Satsagen is quite simple:

  • Connect the spectrometer to the PC
  • Make sure that the USB/Serial interface has been assigned a port by checking in Windows Device Manager that the Ports (COM & LPT) branch contains a USB Serial Port entry as in the following image
  • Open Satsagen and from Settings-> Devices -> Models choose the AS7265X Spectrometer entry.
  • Satsagen will automatically detect the spectrometer by querying the available ports in the system and will display its COM number and device version in the Spectrometer Device box.
  • Confirm with OK the closing of Settings and turn on Satsagen by clicking on the Power button, from this moment the program will start a thread dedicated to communication with the device, in fact, you will notice a constant data traffic activity from the serial interface LEDs.
  • Click the Spectrum Analyzer (Spectrometer) button to start viewing the data coming from the spectrometer.
In this example, I pointed the spectrometer at the white PC screen.

The data from the AMS sensors are displayed by default in Gaussian curves on a linear intensity scale (I) ranging from 0 to 65535, these curves reproduce the characteristics of the sensors’ diffraction gratings.

If desired, you can activate a bar view by clicking the Bar Graph button:

The Gain control sets the gain of the sensors in four steps:

  • 0=1X
  • 1=3.7X
  • 2=16X
  • 3=64X

While from the dedicated Spectrometer panel it is possible to set the integration time (exposure time) in milliseconds via the ITime knob and the calibration mode

Calibration essentially applies a table of 18 multipliers to the values ​​read by the device’s sensors.

If you choose the Device item from the Calibration mode list, the calibration is delegated to the device with the data contained in its memory, while the Custom item allows the user to specify the calibration table with an .INI file.

It should be noted that the calibration entrusted to the device is quite demanding for the few resources of the main sensor microcontroller, so it affects the sweep time in the order of about 60ms per cycle.

The installation of Satsagen creates a sample calibration file in Documents\satsagen\settings with the name altdefcfg_SPM.ini. To activate the Custom calibration, simply open the file with Notepad, modify its values ​​if necessary, and save it in the same directory with the name altdefcfg.ini, then select the Custom item from the Calibration mode list.

From the panel normally dedicated to the Satsagen Generator, it is possible to control the switching on of the LEDs on board the spectrometer with a click on the LEDs button

If you have an AMS spectrometer with LEDs that can be dimmed, you can set the LED current intensity using the Pwr control in four steps:

  • 1=12.5mA
  • 2=25mA
  • 3=50mA
  • 4=100mA

Many of the Satsagen features used in the RF field are also available with the spectrometer, such as triggers, Min Hold, Max Hold, or Waterfall:

Markers can also be used, for example, to measure differences in intensity or especially to trigger actions following exceeding levels with acoustic signals or by producing exports of reading data.

If interested, I recommend reading the Marker Monitor and Auto Spectrum Data Export sections in this article.

I hope that the spectrometer support in Satsagen can be useful for those who are approaching this field, even just as a utility for testing the AS7265x series devices or as a reference for any ad-hoc application developments.

Let me know about your experiences with this, thanks!

Important changes in Satsagen 0.8.0.0

  • Spectrum Analyzer multithreading: The new features of Satsagen, such as the Noise Figure analyzer, the Phosphor display, and the Zero Span mode, require a significant use of multithreading with consequent load of the CPU/core of the PC. Since I always wanted the program to be able to be used without crashing even on PCs with few resources and not very recent construction, I added the possibility to disable multithreading, with the downside that, once disabled, some of the above functions will no longer be available, or will still be usable, but in a limited, slower form. If necessary, then disable the Multithreading item in the Extra tab in Settings.
  • Autozoom: I’ve heard that the autozoom feature was annoying, mostly because it would clear any scale settings when restarting SNA or VNA scans. Autozoom is now disabled by default, and you can use the dB/div knob to set the Y-axis scale in steps of 1 dB, 2 dB, 5 dB, 10 dB, etc.

Since autozoom is now disabled by default, it may happen that, following a change in gain or input signal levels, the trace on the screen is no longer visible; this is an eventuality that can happen both in spectrum analyzer mode and in SNA or VNA. In this case click on the TFinder button (and next to the aforementioned dB/div knob) and Satsagen will bring the trace back visible on the screen in a few seconds.

Finally, if you don’t like this new mode, you can go back to the old zoom mode of previous versions by enabling the Zoom OldStyle item , in the Appearance tab in Settings.

  • Device Options: In the Devices tab in Settings, there were device options that allowed you to enable harmonic mode, auto TX calibration, direct sampling, etc These controls have now been moved and better organized visually by selected device models, in the new Device Options tab, still under Settings.