Forum Replies Created
- AuthorPosts
AndrewModerator- This reply was modified 7 years, 6 months ago by Andrew.
Hello Fernando,
Yes, the peak at 1Hz is 0Hz and expected.
If you are no longer seeing your input signal in the SA44B, then we need to consider the possibility of a damaged attenuator/RF front end, often the result of a high input DC or static. Please email your details to justin@signalhound.com and we can begin the RMA process if indeed this is the determined outcome. We look forward to your email.
Regards,
A.J.
AndrewModeratorAndrew October 21, 2016 at 8:20 am in reply to: VSG25A allow updating the last parameter settings, Yes or NO?Hello thientran,
Unfortunately, the VSG25 cannot be used without being connected to the PC and the software must be running. The VSG25 is powered solely over the USB 2.0 cable.
Let me know if you have additional questions.
Regards,
A.J.
AndrewModeratorHi sszqdz,
Divide the trigger value by (decimation * 2) instead of decimation. This will give you the result you are looking for. I realize it is not documented as well as it should be. I misspoke before, the trigger values are relative to the 80MS/s IF data, which is converted to 40MS/s IQ (before decimation), so this additional factor of two still needs to be accounted for. The trigger values returned should always refer to the data just received, never for some future call to bbFetchRaw.
Regards,
A.J.
AndrewModeratorHello Catalin,
It sounds like you found the source of the issue, which is that the API is not thread safe. In our software I always limit API function calls to one thread, so I can’t make any guarantees, but I believe each device could be interfaced in a different thread once open. The opening process itself is not thread safe, and you do not want to interact with one device from two different threads, for instance, don’t try to re-initiate a device from one thread when another thread is still retrieving IQ data.
The invalidDevice error that you are seeing would indicate corrupted memory and/or corrupted initialization sequence. My guess is that this is also related to thread safety. If you continue to see this issue, we might start considering corrupted internal flash memory/damaged traces/issues with microcontroller/etc.
rgds, You may contact me at the email in my previous reply if you wish, and are still experiencing issues.
Regards,
A.J.
AndrewModeratorJames,
We haven’t tried it, but there are several low cost USB 3.0 micro-B to USB C cables available. Dell sells one for like ~13 USD. If you wanted to try it, we would love to hear the results. The likely issue you will run into is that the USB C cable without additional development on our end, will not provide enough power to the BB60C. It would be interesting to know.
Regards,
A.J.
AndrewModeratorHello sszqdz,
I apologize for the confusion. The bbFetchRaw function, before the last API version, returns trigger values relative to the full 40MS/s rate. To convert to values relative to the IQ data you received, simply divide the trigger values by the decimation rate, 64 in the example you provided. In the latest API version with the bbGetIQ function, we are performing the calculation for the user.
Regards,
A.J.
AndrewModeratorHi Catalin,
Wanted to give you an update.
I may have found the cause of the performance regression. I will need to investigate further on Monday, but it appears to not even be related to the addition of the bbGetIQ function, but a separate unrelated change to the IQ processing. I will confirm my findings on Monday and hopefully be able to get you an update to try soon. Fingers crossed.
Regards,
A.J.
AndrewModeratorHello Catalin,
Check out your other thread for my response to the 2 streaming receiver question.
As for performance regressions. I am re-visiting this issue for a short time. As we have discussed in earlier emails, the bbGetIQ function adds a small amount of additional overhead. At this point I have only seen a marginal regression on one Win10 laptop in our office. All other PCs I have tested exhibit a non-observable CPU increase by switching to the bbGetIQ functionality. In the latest 3.0.14 API, the bbFetchRaw function is simply routed to the bbGetIQ function, and will incur the small overhead.
I will use the Win10 laptop as a test bed for some potential optimizations.
In the mean-time, as we previously discussed, you can continue to use the 3.0.11 API version and the bbFetchRaw functionality.
Regards,
A.J.
AndrewModeratorHello Catalin and RGDS,
I have been experimenting with 2 BB60C receivers streaming IQ in the same process. My initial tests have both units streaming, and performing a basic average power measurement on all the IQ data, just to verify the power level on both devices are correct, and the data is valid. I am also verifying the sample rate is the one requested by dividing (totalSamplesReceived / elapsedTimeOfTest) and am seeing valid values.
Is it possible to be more descriptive when you say “bbGetIQ does not return any data”? Is it possible to send me a small C++ snippet which demonstrates this issue? You may contact me directly at
aj at signalhound dot com. I can even provide the snippet I have been using to test 2 streaming receivers.If you guys are seeing issues with multiple device streaming, it would be nice to fix these issues. I think I’m going to need some more information at this point though, I have been unable to create a failure scenario.
I look forward to your responses and hope we can resolve the issue quickly.
Regards,
A.J.
AndrewModeratorHello Catalin and rgds,
Looking into this now, will update you as soon as I can.
Regards,
A.J.
AndrewModeratorHello drock,
I’m glad we were able to resolve your issues via email. You have my email now if you have further questions.
For other users who might be searching the forums, the issue was with the McAfee real-time virus protection. Disabling this allowed the device to operate properly on the PC.
Regards,
A.J.
AndrewModeratorHello sszqdz,
If you are happy with version API 3.0.6, you can get this by installing version 3.0.11 of Spike from the link below.
https://signalhound.com/sigdownloads/Spike/Spike(x64)_3011.zip
Once installed you can find the API in the installation directory.
If you have a newer version of Spike installed, you will need to manually uninstall it before 3.0.11 will install.Hope this helps,
Regards,
A.J.
AndrewModeratorThe min/max array values are used to store the results of the +peak and -peak detectors when MIN_MAX detector is selected. If AVERAGE detector is selected both arrays will contain the same values. Most people only need to use the max array. If you require the use of -peak detector, use the min array.
Regards,
A.J.
AndrewModeratorHello akarthikeyan,
I apologize, I don’t have much experience with ctypes or Python but I can try to help.
It doesn’t look like you are creating a proper array to pass to our API. This line right here
min = ct.c_double(swlen.value)
It looks like you are simply create a single double, whereas you need an array of doubles. (This is an educated guess on my part)
Also, if you are calling GetSweep, you do not need to call GetPartialSweep. Unless you have specific reason to, you will only need GetSweep. GetPartialSweep is a method for retrieving a very long sweep as it is updating. You should start with simply GetSweep for now until you need this functionality.
There might be others who can be of further assistance.
Regards,
A.J.
AndrewModeratorAndrew September 7, 2016 at 8:45 am in reply to: How to change from "Measuring Receiver" to "FM Modulation Analysys"Hi Randy,
We haven’t developed a Labview example yet for IQ acquisition, so we don’t have any experience or examples of this yet. There are several help forums and Labview help pages that discuss dealing with C structures and DLLs. They would be a good place to start.
Regards,
A.J.
AndrewModeratorAndrew September 6, 2016 at 10:41 am in reply to: How to change from "Measuring Receiver" to "FM Modulation Analysys"Hello Randy,
Have you taken a look at the IQ examples we provide in the C programming language? They are freely available in the API download folder. These examples will show you all the functions required to configure IQ acquisition. I suggest getting the functionality to work in C before moving to Labview.
The download link for the API files is on the downloads page at,
https://signalhound.com/support/product-downloads/sa44b-sa124b-downloads/The download also includes the API manual which will help with any questions you have while looking over the API examples.
Regards,
A.J.
AndrewModeratorAndrew September 6, 2016 at 8:45 am in reply to: How to change from "Measuring Receiver" to "FM Modulation Analysys"Hello Randy,
I apologize, we do not have any examples for IQ acquisition in Labview. We only have the sweep example found in the API download folder and there are some sweep examples developed by customers on our forums.
Regards,
A.J.
AndrewModeratorHi Tom,
If you need time stamping from a GPS, you can accomplish this but will need to utilize the C programming interface to accomplish this. Our desktop software does not expose this functionality. If it is interesting to you, a future update to our software will allow long IQ recordings with system time stamping (non GPS). I would expect this in the coming weeks to months.
Using an external GPS and our programming interface, you can expect time stamping with a resolution of around 50ns at the highest sample rates (40MS/s IQ). There is a code example of performing this on page 45 of our programming manual, which you can find linked here,
https://signalhound.com/sigdownloads/BB60C/BB60-API-Manual.pdf
It uses a deprecated function (bbFetchRaw) which has been replaced with bbGetIQ, but otherwise would remain the same if you decided to implement this.If you have any additional questions let me know.
Regards,
A.J.
AndrewModeratorHi Phil,
Yes, this is all within Spike. The signal symbol rate can be set up to 12.5MS/s. All views and measurements that you have access to with the SA will be available with BB60C.
I attached an image showing this setup using a vector signal generator at my desk. Notice the symbol rate entry.
If you have additional questions let me know.
Regards,
A.J.Attachments:
You must be logged in to view attached files.
AndrewModeratorHi Phil,
Currently the maximum symbol rate the BB60C is capable of demodulating is 12.5MS/s. I would expect the BB60C would have no issue demodulating your BPSK signal.
If you have additional questions, let us know.
Regards,
A.J.- AuthorPosts