Forum Replies Created
- AuthorPosts
AndrewModeratorAndrew November 30, 2016 at 9:58 am in reply to: Are more advanced triggers possible? //php bbp_reply_id(); ?>
Hi Joe,
Currently there is no way to configure the software as you described. I think these are very good ideas, and is something we might be able to implement in future software releases.
Regards,
A.J.
AndrewModeratorThanks for the update Joe. I apologize that you are still experiencing these ‘glitches’.
Did we ever collect the model number of the newer PC? It would be useful for us to have this information. Looking through my emails I see specs of the PC but not a specific model number.
AndrewModeratorHello Joe,
Are you using the digital demodulation measurements in the Spike software or zero span? I am attaching a quick image I took of the software configured for the settings you listed. This might help you configure the software for 2fsk demodulation.
The device decimation is selected based off of the chosen symbol rate. We do allow the user to customize the IF bandwidth a bit, but not enough to change the decimation of the receiver.
Let me know if you have additional questions.
Regards,
A.J.Attachments:
You must be logged in to view attached files.
AndrewModeratorAndrew November 3, 2016 at 10:57 am in reply to: BB60C–external trigger–bbFetchRaw(buffer, triggers) //php bbp_reply_id(); ?>
Hello Lee,
If you have additional questions, you may email justin @ signalhound dot com. The previous response from Justin described how you would use an external trigger and 10MHz reference to phase correlate two streaming receivers. If you need dual channel phase locked receivers without going through this much effort there are several receivers on the market which can do this for you. If you have more specific questions about your application, it would be helpful to know more about your setup and what you have accomplished so far. We look forward to your email.
Regards,
A.J.
AndrewModeratorAndrew October 25, 2016 at 9:09 am in reply to: BB60C–external trigger–bbFetchRaw(buffer, triggers) //php bbp_reply_id(); ?>
Hello sszqdz,
Can you provide more information about your setup? How are you using the external triggers? What are you measuring? What are you correlating? Have you made successful measurements with both receivers? Does the data look good on both receivers? I’m not sure what you mean with the question “Using external trigger to collect IQ data can’t make sure collecting at the same time?” The presence of an external trigger does not synchronize the receivers, you still need to write code to use the trigger locations to synchronize the data streams.
I look forward to your response.
Regards,
A.J.
AndrewModerator- This reply was modified 8 years, 6 months ago by
Andrew.
Andrew October 24, 2016 at 11:45 am in reply to: SA44B with awkward signals and self test failing //php bbp_reply_id(); ?>
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? //php bbp_reply_id(); ?>
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.
AndrewModeratorAndrew October 11, 2016 at 8:20 am in reply to: BB60C–external trigger–bbFetchRaw(buffer, triggers) //php bbp_reply_id(); ?>
Hi 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.
AndrewModeratorAndrew October 10, 2016 at 1:38 pm in reply to: Two BB60C IQ streaming in the same process //php bbp_reply_id(); ?>
Hello 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.
AndrewModeratorAndrew October 10, 2016 at 9:03 am in reply to: BB60C–external trigger–bbFetchRaw(buffer, triggers) //php bbp_reply_id(); ?>
Hello 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.
AndrewModeratorAndrew October 7, 2016 at 4:47 pm in reply to: Performance regression for APIs newer than 3.0.11 //php bbp_reply_id(); ?>
Hi 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.
AndrewModeratorAndrew October 7, 2016 at 1:11 pm in reply to: Performance regression for APIs newer than 3.0.11 //php bbp_reply_id(); ?>
Hello 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.
AndrewModeratorAndrew October 7, 2016 at 12:49 pm in reply to: Two BB60C IQ streaming in the same process //php bbp_reply_id(); ?>
Hello 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.
AndrewModeratorAndrew October 7, 2016 at 8:47 am in reply to: Two BB60C IQ streaming in the same process //php bbp_reply_id(); ?>
Hello Catalin and rgds,
Looking into this now, will update you as soon as I can.
Regards,
A.J.
AndrewModeratorAndrew October 5, 2016 at 11:06 am in reply to: SA124B + SPIKE – No display data //php bbp_reply_id(); ?>
Hello 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.
AndrewModeratorAndrew September 21, 2016 at 8:54 am in reply to: How To Find Old BB60C API For Windows //php bbp_reply_id(); ?>
Hello 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.
AndrewModeratorAndrew September 20, 2016 at 12:28 pm in reply to: Error when getting sweep results with API //php bbp_reply_id(); ?>
The 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.
AndrewModeratorAndrew September 20, 2016 at 9:39 am in reply to: Error when getting sweep results with API //php bbp_reply_id(); ?>
Hello 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" //php bbp_reply_id(); ?>
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.- This reply was modified 8 years, 6 months ago by
- AuthorPosts