Показаны сообщения с ярлыком signals analyzer. Показать все сообщения
Показаны сообщения с ярлыком signals analyzer. Показать все сообщения

пятница, 4 марта 2011 г.

Examples of using MFSK demodulator in SA v 6.2.4.2

 Examples of using MFSK demodulator in SA v 6.2.4.2 


In this article, we will consider examples of usage of universal MFSK demodulator in SA version v 6.2.4.2 


Practically, any FSK/MFSK signal can be demodulated to a bit-stream in SA last versions. Here is, when we say "any" we mean, that there is nothing known about a signal initially. Also it is meant that necessity for obtaining/getting of the bit-stream can arise at any moment, on any signal, or any part of a signal. 


The Example. The record of an unknown system in a VHW band ~900 mHz. 



Step by step guide of main actions is shown below: 

Step 1. Select a necessary/interesting fragment of the signal and create a copy. 

Step 2. Select a necessary/interesting band of the signal and move it in a bottom. 

Step 3. The Main objective of the previous step is the reduction of sampling rate to an optimal value. Initial record has sampling rate 68 mHz, and it has sampling rate for the signal, which is interesting us with the full spectrum in ~ 180-190 kHz is absolutely superfluous. 

The mechanism of the abstract frequency conversion of sampling rate is built in SA, that is to us it doesn't matter which sampling rate will be specific, it is important that it would be optimal. It works as follows, and we had already wrote about it in one of updates. 




In the same way works the abstract shift of a signal by frequency. It is also doesn't matter to us which position the signal occupies, but it is important that it would be in optimal position by frequency on sonogram. 

Let’s come back to the signal. 

The full version of this guide-article you may read here.

суббота, 18 декабря 2010 г.

Using SA to measure and correct sound card digitizer errors.

Using SA to measure and correct sound card digitizer errors.

This article had been written completely on the basis of letters sent by SA users.


All sound cards and A/D converters have some clock error. This is especially true if converters are commercial and cheap ones, like PC sound cards and similar. Professional and expensive converters exhibit a much better clock stability and jitter.


To correct this error, one must know nominal parameters of the signal under test. If these parameters are known, it is quite easy to correct digitizing clock error using SA.


The SA method of “Correction of BR” is quite good for this job, but perhaps using resampler as data input is a better procedure.


The correction factor will have to be measured for any digitizing speed and mode.
Bear in mind that for cheap cards, the speed can vary due to various factors, so if high precission measurements are required, a new calculus should be carried out.


For a good measurement, a quite big signal is needed.

This method is useful for PSK,FSK,MFSK and other modulations. To use it with OFDM, some more operations should be carried out using SA.


Ideally, an external signal like GPS 1000 Hz or a signal from a high end signal generator will provide the best results. Also, a radio timing signal should be good enough.


The best way to understand the subject is an example.
A well known signal as Stanag-4285 (sampled at 8000 sps) will be used to show the method.




We know 4285 has a nominal speed of 2400 sps. Since a frame is 256 symbols, the frame time must be 106,666666 mS. This is the value that should be obtained if using the VMW feature of SA when signal structure is perfectly vertical.





As we can see, the mesured value is 106,69241.


Correction factor =measured value/nominal value=106,69241/106,66666= 1,000241
Error PPM=(correction factor-1)* 1000000= (1,000241-1)*1000000= 241 PPM.


Real Digitizing speed= 8000*1,000241 = 8001,931
Real modulation speed (Br) = 2400/1,000241 = 2399,421739


Measured SA Br= 2399,41


Now, lets go to correct the signal using calculated BR in SA.






The signal parameters are almost perfect, so we can save it and after this procedure, we can be quite sure the new signal will be demodulated using any comercial demodulator.

Also, we know the correction factor for the used card in that speed.

As soon as parameters of a sound card in the record channel are received, then it is possible to realize precise measurements of replay( reproduction) channel for sound cards, which have separate record/reproduction channeles.

You can perform these measuremens simply by having connected an output of such card with an input, playingback a known/synthesized signal/file. Measurements should be realized by the technique described above. As the error of the channel of record is already known, it can be easily considered, and there will be only an error of the channel of reproduction/replay/playback.

воскресенье, 6 июня 2010 г.

New Summer License variants.

We are glad to represent new SA license system.

Four license types are introduced. Each license type corresponds to it's special colour: Red, Yellow, Orange and Green.





Depending on license type (except Red license), we send additional keys on ID specified by user. You may use additional keys at once, or save possibility to use/request them in future, in a case of various force-majeures.

All users who bought SA utill June, 06th 2010, are automatically translated into Green license. Further we will work only within the limits of these four types of licences.

There is no any great changes, only new possibilities has been opened. We suppose that some people were thinking " why i get two keys while i need only one?", or maybe "i'd like to buy more keys at once". Now there is the choice :-)

пятница, 21 мая 2010 г.

OFDM analysis module in SA version 6.1.2.5

OFDM analysis module in SA version 6.1.2.5
Extended description.

The main difference of the current version from previous ones, is the presence of the extremely effective clock/symbol synchronization, and as consequence, possibility to view dedicated/selected channel in dynamics.

Let's consider module elements in more details.

The first step in analysis OFDM, is the search of a correlative triangle.

There are only free key parameters for search of a correlative traingle:
These are:

- The Min Br-LS field, search lower bound
- The Max Br-LS field, search higher bound
- The Symbols field, quantity of characters/symbols end result is averaging out

Search is carried on from the higher bound to the lower bound, as the required/assumed result is located in range, and speed of calculations is strongly reduced at increasing of the symbol's length.

The symbol's length is directly linked to clock frequency OFDM, Br = Fd/LS. Where Fd - is sampling rate of creation of a signal or record.

It is better to set boundaries of search as value Br, but keep in mind that only the whole values are admissible. It means, if we want that 56.625 value Hz would be precisely counted, it is necessary to expose value 55 in the lower bound, or put 54 would be even better.

It is desirable to narrow down boundaries of search from above as well. Although the higher bound has no special value, because on short lengths speed of calculations is rather high. Nevertheless, on big sampling rates it is necessary to adjust it.

The quantity of symbols used in calculation at searches of a correlative triangle has the great importance only on short records, in those cases, when the value of Symbols field is essentially lower 40.

By default the program tries to expose this value in 40 symbols. But as, in attention taken only the lower bound (as the most expected/investigated symbol), then frequently on the short records it becomes impossible, then this value is lesser then 40, that indirectly speaks, about possibility to get not fully correct results.

In general, using of fixed quantity of symbols for an averaging-out can't be admitted as the correct solution, because, for the short LS and short CP, more symbols are required than for long LS and long CP. But these are questions of future optimizations.

By default, the program exposes a lower bound proceeding from sampling rate. The higher sampling rate, the higher lower bound. Seldom enough we can meet OFDM signals with clock frequency below 20 Hz.

As it was already spoken many times, analysis is the complex the task, and if there is a possibility to receive preliminary parameters of the researched signal through the classical analysis, it is necessary to do it. Frequently, it sharply reduces time for finding of a correlative triangle, at the expense of reduction of boundaries of search.

For an example, we will take signal MIL-STD-188-110A 16 Channels

After selection by vertical markers of a fragment of the signal in working window SA, we call OFDM module, and leaving default settings, we start the program of triangle searches.

Approximately in 1-2 seconds the triangle will be found, and the program can be stopped. If calculations will not be interrupted, searches of triangle will be continued until the lower bound, this will take much more time, and most likely more candidates on "triangle" will be found. If we would receive preliminary clock frequency, through the classical analysis (on this signal it can be easily defined through ADP function) then we would avoid superfluous loss of time and superfluous results.
It can be considered as advantage of the preliminary classical analysis.

As we can see, the triangle is negative, and it’s polarity should be changed. It can be realized through Shift Frequency. It is possible to make shift in any side, but it is better to do it in that side, at which the amplitude of the negative triangle will decrease, as the necessary positive maximum in this case is closer. It is necessary to mark, that it is not fully correct method, and the result can have no single meaning.
After signal's shift by frequency is done, recalculation of a triangle for the purpose of specification of parameters is necessary. Because the previous results are concerned to another signal, which has been not shifted. In this version, repeated recalculation is spent only for those values LS and LG, which are selected in the text box, it raises efficiency and allows to avoid superfluous expenses of time.

However, at any time complete recalculation "from zero" can be demanded, the reasons can be vary. How to be in this case? It is necessary to select string where LS and LG are not present, such string is always exists and it is the last string. Selection of this string, means that it is required to start searches of a correlative triangle from zero. As in our situation we do not need to start searches from zero, we do fast recalculation.

Fast recalculation leaves one-three results, and deletes all received earlier intermediate results.

Now we only need:
1) to select scale of FFT spectrum for convenient observation
2) to put the yellow marker on "the good" side of triangle,
3) to switch on phase planes
4) to select the channel for observation/studying
5) to start process of mapping by button "Show".

Approximately so everything should look before start "Show", for observation the uppermost channel is selected.

There are some details. The selected channel marked with green or violet marker (if both markers are combined), should be in the window of mapping of a spectrum. As it is possible to move and scale the spectrum, there is also possibility to output the marked channel behind window limits. If such situation arises, then there will not be any constellations. The program ignores channels which are not visible on the screen.

There are still some things, which need to be known.

The field "Current LS" is the field of double assignment. In the mode of search of a correlative triangle, this field mirrors the current length LS, which it is checked. In the signal browse mode, it mirrors number of the current symbol, which it is output on FFT spectrum. Number naturally concerns to the fragment of the signal loaded in the module by its call.

Before we will start automatic process of mapping, I suggest to make some steps in a hand-held mode, it will be well visible how the triangle intensively enough "leaves" aside and sooner or later will leave the marker.
Approximately through 50-60 steps, "the good" side of triangle, in general, will leave from marker, and FFT spectrum will be transformed beyond recognition, it means that the symbol is completely lost. Now, it is possible to return a slider in the beginning, to expose the yellow marker in the necessary position, and to start process of mapping of constellation in dynamics.

As we see, total quantity of the symbols in the fragment is about 540, the triangle has not moved anywhere, and relative constellation more than stable and pure, as clock/symbolical synchronization works.

Dynamic mapping from the symbol (which is displayed before beginning (Current LS floor)) starts. That is, it should not be only the null symbol, it is possible to take any other symbol, sometimes it is useful. The program will not start, if there are less than 10 symbols, such situation is possible, when the positioning of the slider by a fragment is installed in the end, or the record is very short.



There are two ways to solve this problem:

1) if the fragment is long enough, it is necessary to move the positioning slider in earlier position
2) If the fragment is short, and the slider already situated in the beginning of the fragment, then it is necessary to reduce quantity of symbols in the field Symbols.

It is not recommended to reduce quantity of symbols lesser than 6. Because clock synchronization spends an averaging out by this quantity, and though the algorithm is effective, smaller values are fraught with synchronization failures.

Of course an including of clock synchronization is the necessary component for the qualitative OFDM analysis, but it does not solve the main questions of reception of exact parameters of a signal. We still are working in this direction, although we are moving not so fast as it would be desirable we are close enough to the purpose.

Good luck.

вторник, 11 мая 2010 г.

SA update version 6.1.2.4: function of dynamic mapping of constellations in the selected channel

SA Update to version v 6.1.2.4/5
The current update is mainly concerned to OFDM module.

Some old control elements and indications are updated/moved: it is selected by the red frame.


Appearance of FFT spectrum is changed. Channels are separated by colour on both even and odd. The width of spectral lines is also increases with a graphic rescaling. It allows to select the necessary channel more comfortably. The former solution demanding absolutely exact hit in a line with the width in one pixel wasn't comfortable.


Perhaps the most important part of update - is an introduction of function of dynamic mapping of constellations in the selected channel, with the common clock/symbolical synchronisation.

In this mode, the programm carries out OFDM demodulation. At least, on the signals where relative phase manipulation is used, relative constellations can be observed practically irrespective of external factors, such as signal offset by frequency, record digitization etc.

An indication of an output of points of constellation behind the boundaries of mapping window is inserted. That speaks about necessity to reduce scale, as a constellation part, or the whole constellation is not displayed fully.

Basically, an order of standard operations in this module is the following:

- fragment of OFDM signal is selected in the working window.
- OFDM module is called/started.
- If it is necessary search of boundaries of a correlative triangle and customisation of other settings are installed. In most of cases, you may leave default settings.
- Start of search of a correlative triangle is realized by the button "Find CT"
- After a finding convincing Correlation Trianlge (CT), the signal's position should be adjusted by frequency. The triangle should be positive, and have maximum amplitude. It is controlled by the value of Am field in a window of mapping of triangle.
- After any frequency correction, recalculation is started again by the button "Find CT", as the signal is already another. Repeated calculations in this version are passing very fast, all subresults received earlier, are simply ignored.
- The yellow marker is located on the left ("good") side of a triangle.
- The necessary/convenient scale of FFT spectrum is installed, the necessary/needed channel is selected.
- phase planes are switched on by double-clique on the necessary record, in the window of output of the text data.
- The mode of dynamic mapping is started by button "Show".

It is the basic, generall scheme of operations.

Here is the Videoclip where on an example of signal MIL-STD-188-110A 16 Channels all described actions are shown.

The more detailed description of operation with the module as usually, will appear in the near future in the form of separate article.

Good luck~

понедельник, 5 апреля 2010 г.

SA Update to version v 6.1.2.1


SA Update to version v 6.1.2.1


The problem with mp3 files is corrected. We had messages that sometimes the program opens all mp3 files incorrectly, but we hadn't the detailed description of this situation. Two days ago we have received the deatailed description from one of users, the step-by-step picture of occurrence of the problem.

As it has appeared, after loading wav file, attempts to open any mp3 file cause an error.




Ofcourse, detailed description of a problem, sharply increases chances to find and correct an error fast. That's what we always try to do as fast as possible.



Also the number of minor errors is corrected.

Good luck!

четверг, 25 марта 2010 г.

SA Update: version 6.1.2.0

SA Update version 6.1.2.0


About one or two half months ago, at studying of possibilities of WaveLet conversion, an idea of essential lowering of the common noise level on records has appeared, and recenlty we got an ability to realise this idea in the form of working algorithm.

Conditionally we have named it HRes (HighResolution). Here is comparative screenshots.





Ofcourse, this is relative increasing of resolution quality, but the task of decreasing of the common noise level and selection of spectral lines is rather effectively solved. We see perspective enough application of this algorithm at processing of speech waveforms, signals FSK/MFSK and in automation parameters definition.

We cannot recommend to use this function always, because high detailing of spectra, frequently discourages by an abundance of details more likely, than really helps. But the given method is irreplaceable at the tasks of search of lines of clock frequencies and/or studying of harmonics of a signal, purely these are part of the primary goals of this algorithm and one of the reasons of its development.

The algorithm demands enought resourses, it is recommended to disable HRes at navigation on file , though it is not always notable, but sometimes it can become slow enought. For the same reason, by default this function is switched off.

Good luck!


четверг, 11 марта 2010 г.

SA update to version v 6.1.1.7

SA update to version v 6.1.1.7


At prepearing description of signal ROSMODEM two problems were detected.
The first one is - a maximum fragment of a signal, on which the histogram is constructing, is too short for qualitative visualisation.

The second is - the method of construction of the histogram is not enought successful.

The maximum size of a fragment is limited by the value 30-50 kilobyte, these are echoes of the very old not optimised solutions in SA, current SA implementation allows to lift easily enough this boundary to 1-2Mb values, but unfortunly this moment was missed. In this version this error is corrected.

The second problem can't be solved 100 % ideally, but nevertheless, rationing of the whole histogram, allows to receive much more clear better picture of allocation of frequencies and levels, as all lines are visible always completely.


The difference in images is obvious enough and does not demand any remarks.

Actually this is not planned express update. We have in our plans automatic or half-automatic detection both frequency spacing, and freqeuncy quantities, but searches of universal reliable solution can take it's not short time.

Good Luck~

среда, 3 марта 2010 г.

In addition to the previous update version 6.1.1.6

To be honost we didn't expect such fast reaction on version 6.1.1.5, but we already recieved the letter with request to include support of 32 bit with floating point.

As it was explained to us, a lot of the modern equipment works in this mode, both record and files in this format are not such rarity(as it was possible to think), except that, this format has standard Wave tag = 3, and generally is extended enough.

We solved this task as soon as it was possible.

We would like to represent version 6.1.1.6., where support of 32 bit with floating point is provided.


Since the changes are very local, we have decided do not announce this update as separate one.


вторник, 2 марта 2010 г.

Signals Analyzer: update.

SA Update to version v 6.1.1.5

We complete the main changes linked with loading of files of various formats in SA.



Two new elements are inserted:

1 - the area of graphic's construction of a loaded file.
2 - the Switcher with which help the choice of how to interpret the loaded file is realized.

The graphic is constructing for the whole file, that is, the large-scale image by time is output, without possibilities of detailing.

The main objective of mapping of this graphic, is the preliminary scaling of signal's amplitude, tentative estimation of the signal and etc. In many cases it is the extremely useful function. However it demands time, and although speed of construction of the graphic is high enough, about 30-40 mbytes per second, on the big files (20-30) mbytes 5-10 second of time can be demanded, it is linked with features of Windows platform. But basically, all works quickly enough. If the file size exceeds ~157 mbytes (the limit of the loaded data in SA) the graphic is constructing only for this value.
Instead of doubtful function Hot track, much more useful function Auto preview is entered. At it’s activation, the graphic is constructed for any selected file automatically (in case if it possible). Files with zero length, or size shorter then 4 kilobyte are not considered as the data source by SA.
The switcher "Use options" is always switched off by default, and can be activated only for the concrete selected file/record. In this case, the graphic is constructed, pre-scaler becomes accessible, and at loading, the record will be interpreted according to those parameters, which are installed in options.

Such mechanism provides support of 24 and 32 bit records, support of multi-channel wav files, loading of any data within the limits of those formats, which supports SA. In the current version 8, 16, 24 and 32 bit integer data are supported.

24 and 32 bit data have some bytes-representations. SA supports two most wide-spread such as: little-endian used by default and designated as 24A-32A, and big-endian designated as 24B and 32B. Indirectly, the correct choice can be defined by the record graphic, it certainly does not give guarantees in separate special cases, and exhaustive search of variants can be demanded, but such happens seldom enough.

Actually speaking about integer representation, it is necessary to have in view, that numbers with the so-called fixed point are also included into this category and are supported by SA in full volume.

The records in a format with floating point and 64 bit formats, SA does not support. It is not basic limitation, and we do not enter support of these types, only because of big doubts in such necessity. If for someone it is essentially important and necessary, please contact us msm_team[at]live.ru with letter subject 64bit support, and I think the question will easily solved.

Some features and nuances.

The graphic is always is constructed from the supposition that the file is considered as the data, and it is not dependent on a real format. It means, if the file mp3 or wav or what another the graphic it is not the signal/record, which can have a compression, but it is the data in that format, which is exposed/selected in the field "Bits". This data coincides with contents of wav files with Wave tag = 1. This data can also coincide for wav files with other tags, because many programs put their own tags, and write not compressed data, but all this is not guaranteed and does not correspond to contents of mp3 files and to various sound codecs.

Usually multi-channel, not compressed wav files have Wave Tag, which is not equal 1, that locks possibility of their playing with standard resources, for SA however it does not represent a problem as the current loader allows to select any of 16 channels, from any multi-channel standard wav records.

The field "Data start" in sets offset from the file beginning, to the data which will be read by the program at loading. For some, incorrectly issued I/Q records it allows to be placed exactly on the beginning of countings, we have met a lot of such records unfortunately.

Pre-scaler is accessible only in a mode of activated function "Use options", it sets the common coefficient of scaling at file loading. Pre-scaler allows to lift signal level on weak records or, that is more important, to neglect strong interferences, by having lifted an average level of record to the normal. Typical enough problem at conversion of 24 or 32 bit records. Pre-scaler is dumped in an initial state, every time at change of the channel, data format, or the record.

Good Luck~