- AuthorSearch Results
Found in Replies
Anonymous
Anonymous posted on January 12, 2016 at 2:44 am View this postIn reply to: IQ realtime streaming
AnonymousInactiveI use 32bit spike API in Windwos 7.
Next bring the thread function code
After each call bbFetchRaw stack pointer decreases on 12 bytewhile(!Active)
{
if(reconfigure)
{
bbAbort(DeviceID);
bbConfigureCenterSpan(DeviceID, Freq, Bandwidth);
bbConfigureIQ(DeviceID,64,Bandwidth)
bbInitiate(DeviceID, BB_STREAMING, BB_STREAM_IQ);
reconfigure = false;
}
bbFetchRaw(handle, &data[0], 0);
PostMessage();
}Found in Replies
Andrew posted on January 11, 2016 at 10:31 am View this postIn reply to: Decoding SSB signals in the amateur radio bands
AndrewModeratorHi John,
The main reason one might buy a BB60A now is due to price. We do not sell the BB60A anymore and have not since the BB60C was released.
The BB60C hardware design is drastically different than the BB60A, as you noted. The BB60C uses a direct RF path for frequencies below 20MHz. The HDSDR application requires an input I/Q data stream to operate on. We have not developed the direct RF to I/Q code necessary for HDSDR. This only affects 20MHz and below. Our API is available to users and we do provide the code for our device to interface HDSDR, so if you have programming experience, it would be possible to fill in the missing pieces to get the direct RF into HDSDR. This would require C++ and signal processing experience.
Regards,
A.J.Found in Topics
Anonymous
Anonymous posted on December 29, 2015 at 12:07 am View this postTopic: IQ bandwidth lower limit
in forum BB Series DiscussionsHello
In bb_api.h BB_MIN_IQ_BW is disable. So …
How can I know IQ bandwidth lower limit for any sample rate ?Found in Replies
Justin Crooks posted on November 20, 2015 at 11:16 am View this postIn reply to: SA124B SH_API.DLL restart in Labview
Justin CrooksModeratorHave you tried closing the device and re-opening it? If you are using the Spike API, this will likely work. With the older API, I believe there is a SHAPI_CyclePort or similar that should accomplish the same thing.
Found in Topics
jthienel posted on November 18, 2015 at 1:58 pm View this postTopic: SA124B SH_API.DLL restart in Labview
in forum SA Series DiscussionsDoes anyone have a suggestion on how to restart a stuck DLL when using Labview? Problem I am having is when I lose connection to a SA124B, for example during a trace request. I cannot regain control of the analyzer through the DLL.
Second question. Is the serial protocol for the SA124 published anywhere then I could go direct to the USB port and reset the connection to the analyzer with out having to use the DLL.
Any suggestions would be appreciated.
Thanks.Found in Replies
Andrew posted on November 9, 2015 at 3:29 pm View this postIn reply to: bb_api.dll x64 linker errors?
AndrewModeratorHi Cyprien,
If you have installed the Spike x64 application on your PC, you can get the 64-bit version of the ftd2xx.dll library from the Spike installation directory at C:/Program Files/Signal Hound/Spike/
You will see the ftd2xx.dll file that Spike uses, which you can copy into the same directory as the bb_api.dll file for your application. This should resolve the error you are seeing.Regards,
A.J.Found in Topics
Cyprien posted on November 9, 2015 at 3:25 pm View this postTopic: bb_api.dll x64 linker errors?
in forum General DiscussionsHi,
I am operating on a vanilla windows 10 PC with has a functioning Spike x64 (3.0.16). However, I am having issues with bb_api.dll because it bombs due to ftd2xx.dll not being found (both x86 and x64). I have uninstalled and re-installed the drivers to no avail, so I have manually copied the DLL into my exe folder. The x86 version works OK, but when use the bb_api.dll x64 it is a problem. Using dependency walker I notice that the bb_api.dll x64 has a reference to ftd2xx.dll, but the “CDM v2.12.06 WHQL Certified” package contains the dll ftd2xx64.dll which is presumably is the DLL that should be in use. Have I misunderstood or is there a DLL naming issue?
Also any pointers on getting this working without having to copy the ftd2xx.dll to my install folders.
Thanks.
Found in Replies
Andrew posted on November 9, 2015 at 9:47 am View this postIn reply to: SA44B – external frequency reference & API problem
AndrewModeratorHi Martin,
Thank you for the heads up on this. This is a known limitation right now. I will be releasing a version today 11/9/2015 that addresses this. The function call will change from saEnableExternalReference to saSetTimebase(device, SA_REF_EXTERNAL_IN). The external timebase will be reset when calling the saCloseDevice function so it should be able to be set again once you re-open the device, without reloading the DLL.
Keep an eye out for that. Version 3.0.9 of the SA api. It will be released with version 3.0.17 of Spike.
Regards,
A.J.Found in Topics
cizekm posted on November 9, 2015 at 4:18 am View this postHello,
I’m programming my own software application for monitoring frequency drifts by processing the I/Q stream from the SA44B. I am using the latest API (the one from 10/26/2015).
For development purposes I use the following setup: SA input connected to the output of Agilent 33500B waveform generator, SA freq. reference input connected to 10MHz output of 33500B on the backplane.
I encountered the following problem:
When I for the first time use the sequence of the API calls like
saOpenDevice, saEnableExternal, saConfigCenter, saConfigLevel, saConfigIq, saInitiate, saQueryStreamInfo, then repeatedly call saGetIQ and then finally call saAbort and saCloseDevice, everything works fine.BUT then when I for some reason do not unload the SA_API.DLL and use the same sequence of API calls like above the SA44B ignores the reference frequency input and acts like it is detuned by approx. 6 Hz while using 10MHz center frequency.
If I programmatically unload SA_API.DLL after saCloseDevice or saAbort everything is okay again after the next using of saOpenDevice etc. This is usually no problem in C++, where DLL unloads after closing the application but for example in LabView you have to close the VI everytime to persuade it to unload the DLL and this seems very inconvenient to me.
I also tried not calling saAbort and saCloseDevice when terminating the Labview application and everything was also okay (except from saOpenDevice returning -8 of course). I looks like calling saCloseDevice and not unloading the DLL after it messes up the things.
Thanks in advance for any reaction
Martin
Found in Topics
Cyprien posted on November 8, 2015 at 4:21 am View this postHi,
When querying the real-time API bbQueryRealTimeInfo the frameWidth does not appear to be the same as the sweepSize. What controls this dimension and is it user settable?
I was hoping to get the distribution of amplitude for each point in the FFT and then calculate peak to average and the CDF, but I guess I have misunderstood the function and purpose. The signal I am looking at is transient hence the use of real-time mode.
Any help on how to do or if I am barking up the wrong tree?
I am using a BB60C
Thanks.
Found in Replies
Andrew posted on October 21, 2015 at 9:10 am View this postIn reply to: Movement of Legacy API with the tablet
AndrewModeratorHello zhubajei,
I’m assuming you are targeting the same architecture on both PCs? If you are using Labview 32-bit on one PC and 64-bit on the other, that might be an issue. The error message you have received, “SH_API.dll not found” is a big red flag. This message has to be resolved first. It is possible the Labview configuration has changed on the tablet PC and Labview is looking for the DLL in a different location. (i.e. Different path variable, typos in your path?) My guess is that if you resolve this error, it will work as expected. If both PCs are running a full Windows 10 OS, there should not be any reason one would work and the other wouldn’t.
Regards,
A.J.Found in Topics
zhubajei posted on October 21, 2015 at 6:14 am View this postTopic: Movement of Legacy API with the tablet
in forum SA Series DiscussionsHello
I made application for USB-SA44B in LabVIEW using Legacy API.
In the desktop PC without any problems works.
However, an error occurs when I am going to move this in YogaTablet2 of lenovo.
During loading an application, the error by which SH_API.dll isn’t found occurs.
Finally, all Sub Vi calling SH_API.dll will be an error.
The position of SH_API.dll is absolutely specified by Pass, when calling a function.
This phenomenon is a hardware-like problem, and is SH_API.dll that it can’t be read?
With the tablet of the shop brand of other companies, I can confirm movement.
OS of both tablets is Windows10.
What kind of cause can think SH_API.dll can’t be read?
In addition, should I give up moving it in YogaTablet2 of lenovo?best regards.
Found in Replies
Andrew posted on September 30, 2015 at 1:03 pm View this postIn reply to: Can't Lower RBW/VBW with some spans
AndrewModeratorHello dwc,
The msvcp110.dll file is part of the Visual Studio 2012 redistributable files which can either be downloaded here http://www.microsoft.com/en-us/download/details.aspx?id=30679 or are part of the Visual Studio 2012 install. If you do not use Visual Studio 2012 you will still need to download these to program to the API. We have 32 and 64 bit versions of the API, so you could download both x86 and x64 versions of the redistributable for your PC. We used Visual Studio 2012 to develop the API which is why you are seeing this.
Regards,
A.J.Found in Replies
dwc posted on September 30, 2015 at 12:45 pm View this postIn reply to: Can't Lower RBW/VBW with some spans
dwcParticipantActually I can’t get the Labview program to run – it is looking for MSVCP110.dll. On the other hand, I do see code samples in the API manual, which should help.
Found in Replies
Andrew posted on September 30, 2015 at 12:28 pm View this postIn reply to: Can't Lower RBW/VBW with some spans
AndrewModeratorHi dwc,
If you decide to attempt programming the device, we have an API manual here, https://signalhound.com/sigdownloads/SA44B/SA-API-Manual.pdf. There is a code example in the appendix called “Sweep Mode” that shows you how to setup a sweep. This functionality could be performed in a loop to achieve the desired sweep. The labview examples are wrappers around the C functions, so learning the C functions would be beneficial if you decide to automate through Labview. You may contact me at aj at signalhound dot com if you have any programming related questions.
Regards,
A.J.Found in Replies
Andrew posted on September 21, 2015 at 8:25 am View this postIn reply to: nonvolatile on VSG25A ??
AndrewModeratorHello Saira,
Unfortunately this is not possible. There is no user accessible non-volatile memory on the VSG25A. The device can only be driven by our software and API. If it helps, in the software you can save presets, allowing you to quickly recover previous settings. You can also control the device in your own software by utilizing the C programming API.
Let me know if you have any further questions.
Regards,
A.J.Found in Replies
Justin Crooks posted on September 18, 2015 at 10:25 am View this post
Justin CrooksModerator1. Yes. Powers of 2. 16, 32, 64, 128, …
2. Yes.
3. Number of points varies a little based on window bandwidth. For the legacy API, it is closer to 3.5 * span / RBW
4. 440.4 to 440.8 MHz would probably be 2 slices (440.4 – 440.6, 440.6 – 440.8). If each slice is 56 ms, your sweep time would be 112 ms.
5. The API expects FFT size. The user interface expects RBW. Use the relationship from question 2.
6. IF bandwidth is set using decimation (IF BW = 240 kHz / decimation)
7. I would expect this to work. Configure, sweep, configure, use measuring receiver (actually more of a modulation analyzer).
Let me know if you have more questions.Found in Replies
zhubajei posted on September 17, 2015 at 9:53 pm View this post
zhubajeiParticipantThank you for replying it last time.
After it was considered, I think I’ll make an application using Legacy APIs.The question about the contents written on a manual of Legacy APIs Ver2012_01_05 thru 2012_09_7.
Because English is weak , I can not understand the contents of the instruction manual enough .
Please help understand it.1. Setting with the FFT size
Are you OK with “16,32,54,128,256,512,——65535”?2. calculation formula of RBW Are you OK with “RBW (Hz) = 1638400 / Decimation / FFT size”?
(This is the same value as the value that would be obtained in GetRBW ())3. calculation formula of Data number of points.Are you OK with “Data Point number = 2.5 * SPAN (Hz) / RBW (Hz)”?
4. list covers two types calculation formula of the execution time.
Execute Time = 40+ (FFTsize × AvgCount × Decimation / 486) mS/slice — (1)
= Decimation * (stop – start) / 201kHz mS/slice — (2)FFTsize = 1024, AvgCount = 8, Decimation = 1,start freq = 440.4MHz, stop freq = 440.8MHz
When I calculate on this condition(1) Execute Time = 40+ (1024*8*1)/486 = 56.856 mS/slice
(2) Execute Time = 1*(440.8M-440.4M)/201k = 400k/201k=1.99 kHz?The answers to be provided are different. Which is right?
5. setting panel of the Legacy API (Ver2.11A), only the setting of RBW is there, FFTsize and Decimation can not be set.
Does this software design is correct?The RBW and FFTsize and Decimation, we understand that there is a relationship to each other.
However, in the Signal Hound (SA44B), please tell me the relationship of these three values.6. When I call SHAPI_RunMeasurementReceiver(),
I construct five numerical value of “RFFrequency,AudioLPFreq,AudioBPFreq,UseLPF,UseBPF” across API.
However, it is set in the Measuring Receiver panel “IFBandwidth” does not pass.
Do not have a problem?7. I make application to check an electric wave state of the fixed station (frequency 400MHz zone) of the specific small electricity now.
Because it is an electric wave of the fixation station, the data update speed does not have to be early.
SHAPI_LVC_ConfigureFast -> SHAPI_LVC_GetSlowSweep -> SHAPI_LVC_ConfigureFast -> SHAPI_RunMeasurementReceiver
Call the API in this order, it was continuous operation.
In the program that made the test, it has successfully operate.Is there a possibility that the problem occurs in this way?
Regards.
zhubajei.Found in Replies
Andrew posted on September 8, 2015 at 9:30 am View this post
AndrewModeratorHello zhubajei,
The sa_api version 3.# does not have direct functions for calculating the values you are looking for. We calculate the values directly in the Spike application from the I/Q data received from the saGetIQ functions. I do not believe the two APIs can be used in conjunction.
Calculating these values might be very easy in Labview with the built in functionality.
You will need to collect data with the saGetIQ functions,
then FM demodulate the data. Once you have the FM data, you can perform the necessary statistics on the data, such as averaging the FM array and finding the peaks.You can see our implementation here
https://github.com/SignalHound/BBApp/blob/master/BBApp/src/model/demod_settings.cpp
In the IQSweep::Demod function, you can see how we demodulate to FM. Then in the IQSweep::CalculateReceiverStats function, between lines 337 – 379, you can see our main FM calculations.We do our calculations on about 1/4 second of contiguous data.
Regards,
A.J.Found in Topics
zhubajei posted on September 8, 2015 at 3:55 am View this postI am making an application that uses SA44B in LabVIEW.
We want equipped with the same function as the “Measuring Receiver” of the Signal Hound Ver2.18D of application.
I want the measurement value is five below.
1.RFCounter; // RF frequency count out (Hz)
2.FMAudioFreq; // AF frequency count out after FM demod (Hz)
3.FMPeakPlus; // Peak Positive Modulation, in Hz
4.FMPeakMinus; // Peak Negative Modulation, in Hz
5.FMRMS; // RMS Modulation, in HzIn Signal Hound API version 2012_01_05 thru 09_17, there is a function called “SHAPI_RunMeasurementReceiver”, but does not have the same kind of function in the new API “Version 3.0”.
“Spike-> menu-> Analysys mode-> zero Span” the measured value is displayed in.
However, I do not know what is displaying these values using any function.saConfigIQ?
saQueryStreamInfo?
saGetIQ_32f?
saConfigAudio?
saGetAudio?How Please tell me the procedure to get these values.
In addition, “SHAPI_RunMeasurementReceiver” is likely to be acquired these values in one function.
sa_api.dll(Ver3.0) and sh_api.dll the (Ver2.18D), Is it possible to be used at the same time?- AuthorSearch Results