- AuthorSearch Results
Found in Replies
Roman posted on March 28, 2025 at 4:23 am View this postIn reply to: SM200C GPS issue
RomanParticipantAndrew, thank you for response!
– Is there an event that consistently leads to lost GPS lock?
– Yes, jamming.– Does your GPS antenna have access to clear sky?
– Yes, sure.– Is it possible one of the messages is configuring the device in an undesirable state?
– We haven’t got possibility to reproduce main problem with devices under jamming. But we can get simmilar behavior if we send coldboot command [ 0xB5, 0x62, 0x06, 0x04, 0x04, 0x00, 0xFF, 0xFF, 0x01, 0x00 ], 9th byte (0x01) repesents “Reset Type”
0x00 = Hardware reset (watchdog) immediately
0x01 = Controlled software reset
0x02 = Controlled software reset (GNSS only)In case of 0x02(Controlled software reset (GNSS only)) it continue work(without jamming) but it doesn’t help for devices under jamming.
Unfortunately its bad news that we can’t get GPS info without lock status.
We wanna try to connect external GPS. Will it be possible to get proper timestamp in spectrum and IQ traces from external GPS?
Also will be possible to communicate with external GPS through sm_api?Found in Replies
Roger posted on March 27, 2025 at 9:39 am View this postIn reply to: SA44B python API
RogerModeratorHi Gal,
There are potentially two ways to accomplish this in Python: using Spike’s SCPI interface or with the device API. The SDK contains the needed resources for both, and can be downloaded here.
1. SCPI
Spike can be programmatically controlled with SCPI commands. Presets can be loaded using the following commands, for named and quick presets respectively:
:SYSTem:PRESet[:USER]:LOAD
*RCLThen, an acquisition command such as :TRACe[:DATA]? would be used to get the sweep data, which Python could then output to CSV.
An example to get you started is in the SDK at scpi/Spike/examples/python/scpi_simple_sweep.py. The Spike SCPI Programming Manual is also there as a command reference.
2. API
This is a direct connection to the device that is an alternative to Spike.
The configuration functions would be used to replicate the Spike preset, followed by an acquisition function to get the data, and then output CSV from Python.
An example to get you started is in the SDK at device_apis/sa_series/examples/python/sweep_plot.py. The API documentation is available there and online here.
Let me know if you have further questions.
Roger
Found in Topics
galc posted on March 27, 2025 at 6:28 am View this postTopic: SA44B python API
in forum SA Series DiscussionsHello, I’m trying to automate a procedure we use the SA44B for.
Two steps of the procedure are loading user preset and exporting trace data to a *.csv file for further analysis.
I couldn’t find an option to it outside of Spike program. Is it possible to get the same functionality using Python with the existing API?
If not in Python, I can take an example in other language.Thanks.
Found in Replies
Andrew posted on March 19, 2025 at 8:27 am View this postIn reply to: SM200C GPS issue
AndrewModeratorRoman,
The API is setup to only return UBX messages when GPS is locked and outputting NMEA sentences. This is a result of how we package and return this data. For this reason, yes, you would need to see GPS lock before expecting messages.
Is there an event that consistently leads to lost GPS lock? Is it after sending a message? Does your GPS antenna have access to clear sky? I can’t say that I have seen a scenario or heard from a customer that a reboot of the device was required to attain GPS lock. Is it possible one of the messages is configuring the device in an undesirable state?
We only have experience sending the NAV5 message for changing the platform model. That code example is in our SDK (you probably already found it). I have not used the cold boot command. If it forces the GPS to do a cold boot, this will take many minutes or longer to get GPS lock again, I’m assuming you are waiting an appropriate amount of time?
Found in Replies
- This reply was modified 7 months ago by
Justin Crooks.
Justin Crooks posted on February 18, 2025 at 12:58 pm View this postIn reply to: Measurement of CTCSS or Pilot Tone Frequency
Justin CrooksModeratorJay,
Our Audio Demod tool in Spike would be able to give you the exact frequency of the audio pilot tone, but unfortunately it clamps to 20 kHz. In normal swept mode your accuracy will be limited to your RBW. Marker peak, delta, next peak would give you the audio frequency +/- your RBW. An RBW of 1 Hz would give you a 1 Hz accuracy. If this is not accurate enough, the next step would be to either put in a request for us to increase the maximum audio frequency in the Audio Demod mode, or use the API and do the FM demod yourself.
The peak deviation can be viewed in zero span mode FM, as you did. Measuring a local max, then a local min, with markers, should give you a peak-to-peak deviation.Found in Replies
pooja.sagathiya posted on December 8, 2024 at 11:21 pm View this postIn reply to: LabVIEW Device not open
pooja.sagathiyaParticipantHi,
I am using a BB60C and its working well with the Spike SW. But when using the LabVIEW examples, I keep getting the “Device not open” error when running the vi. I re-loaded the bb_api-64.dll driver from the LabVIEW drivers download (and deleted the -64 text) and restarted by PC and got the vi to work once.Any help is appreciated. Thanks!!Found in Replies
Andrew posted on December 1, 2024 at 2:45 pm View this postIn reply to: API ARM Support
AndrewModeratorHello rlisboa,
There is no current timeline on availability for this. You can follow updates here, https://signalhound.com/support/forums/topic/bb60c-api-for-arm/
I will be sure to update the linked thread when we do have something to share.
Currently the only ARM support we have is for the SP145 API, compiled on the NVidia Jetson (Orin AGX) platform.
Regards
Found in Topics
rlisboa posted on December 1, 2024 at 12:34 am View this postTopic: API ARM Support
in forum BB Series DiscussionsWhen will there be API ARM support for the BB60?
Found in Replies
Andrew posted on September 20, 2024 at 8:05 am View this postIn reply to: BB60C-API for ARM
AndrewModeratorWe have made one small step in this direction yesterday with the release of the SP145 API for the Nvidia Jetson AGX Orin platform. This is a highly requested pairing. It supports sweeps and I/Q streaming with some minor limitations. Hopefully some of you here or future visitors looking for ARM platform support can benefit from these efforts.
If you have any follow up questions or issues with the API, please reach out to me at aj@signalhound.com.
All of these files are now located in our SDK.
Thanks
Found in Replies
Andrew posted on September 4, 2024 at 2:26 pm View this postIn reply to: SA44B as a trigger source for BB60C
AndrewModeratorHello,
This scenario is also unfortunately not something you are going to be able to make work with the capabilities of the BB60s. The video trigger is a function of software running on the PC, so it’s fully post acquisition and USB transfer. Any sort of trigger mechanism using the video trigger detection would have very poor resolution.
Additionally the BB60s are not really a good choice for generating a pulse. One of the ports can be configured as a logic high or low, but the resolution on this is very poor.
There might be an alternative way to accomplish this. If you have an external trigger source, such as a GPS PPS signal, that you could route that to both BB60s, the API will mark the position in I/Q stream where the external triggers occur and you could measure them relative to the video triggers you detect. A rather elaborate setup and some code to tie it together, but that should give you something like 40ns of resolution on the timing differences between 2 BB60s.
Our other devices, the SM and SP analyzers, have an internal GPS, which with a GPS antenna could be used to timestamp the data, which would also give you a relative timing between the 2 analyzers of ~40ns, essentially trading the need for an external trigger source with an external GPS antenna for each receiver. The timestamping is all done automatically, so the final code might be slightly simpler.
Let us know if you have follow up questions.
Found in Replies
RGedminas posted on September 3, 2024 at 1:35 pm View this postIn reply to: SA44B as a trigger source for BB60C
RGedminasParticipantJustin,
Thank you for the response. I am once again trying to accomplish a similar task. I would like to have my bb60c and bb60d both in zero span with a video trigger setup in software. From there I would like each device to output a trigger pulse when the video trigger is triggered, from there I would like to use an oscilloscope to measure the delay between the two triggers. Is this possible with the API?Found in Replies
- This reply was modified 1 year ago by
Justin Crooks.
- This reply was modified 1 year ago by
Justin Crooks.
Justin Crooks posted on August 26, 2024 at 7:46 am View this postIn reply to: SCPI without Spike
Justin CrooksModeratorSteve,
You can communicate with the API without Spike running, but Spike is required for SCPI. There is a hidden mode if you don’t want it visible.
Found in Replies
Steve Barba posted on August 23, 2024 at 4:19 pm View this postIn reply to: Programming Support
Steve BarbaParticipantIn fact, we are using the API even though that limits us and is trickier to configure for our software automation. PyVisa & SCPI works smoothly on other devices. We’ll use a different company’s spectrum analyzer for future projects. Thanks for the information.
Found in Replies
Andrew posted on August 23, 2024 at 1:41 pm View this postIn reply to: Programming Support
AndrewModeratorHi Steve,
If you want to use SCPI, then yes Spike has to be running. Spike has a hidden mode, which can be activated by launching it from the command line with a special flag. The Spike user manual details this.
If you want a true headless interface, you could use the API’s which are located in our SDK. The headless APIs support only basic data acquisition such as sweeps and I/Q data. Any additional processing or operations such as markers or channel power, or etc, would need to be performed in your application.
Let me know if you have follow up questions.
Found in Replies
Andrew posted on July 23, 2024 at 9:08 am View this postIn reply to: Settling Time for BB60C
AndrewModeratorHi Wilson,
Yes, empirical tests have been done. A recent test showed a typical switch time at ~43ms.
It’s important to realize that it can depend on a few things. The 43ms above was done by repeatedly switching frequencies with no I/Q data acquisition at each frequency, probably the optimal scenario.
The switch time includes things like sending the stop streaming command to the device, flushing all USB transfers, cleaning up the large arrays allocated in the API, reconfiguring the instrument, and starting up the stream at the new frequency. Some of these are more deterministic than others.
The BB60 is rather slow in this regard. Both the SM200/435 and SP145 devices have something called the I/Q sweep list in the API. This allows you to preconfigure up front a list of frequencies and I/Q sample counts to collect, and execute this all at once. This brings switching time to sub-1ms at the cost of having to know in advance the frequencies you want to switch to.
The VSG60 is similar in that to get the full speed of 200us, you need to feed the switch frequencies far in advance to keep the queue saturated. If you don’t, the full switch time is more like 100ms.
You may contact me directly at aj@signalhound.com if you want to discuss any of these options in more depth.
Found in Topics
Wilson Horner posted on July 23, 2024 at 5:13 am View this postTopic: Settling Time for BB60C
in forum BB Series DiscussionsHello,
I am capturing I/Q data of varying frequencies via the BB60C API and need to switch center frequency using bbConfigureIQCenter(). My question is, how long does this configuration take?
For the VSG60A, a frequency switch configuration is listed in the manual as taking ~200 μs, however no mention of this is in the BB60C manual. Another thread on here estimates “10s of ms” for this switch, but is there any documentation or empirical tests done to measure this?
Regards,
WilsonFound in Topics
- This topic was modified 1 year, 2 months ago by
BEged. Reason: hello, regards
BEged posted on July 18, 2024 at 3:54 am View this postTopic: BB60D API decimation CPU usage
in forum BB Series DiscussionsHello Support Team,
We currently use BB_API Version 5.0.6 (6/22/2023), which provides a way to configure the device for IQ streaming by way of bbConfigureIQ. In our use case, the IQ stream we take out of the API has multiple consumers with differing needs, meaning that we already do our own filtering and decimation downstream, with multiple differing sets of parameters.
This in turn means that we take the lowest common denominator form of the stream out of the API, which happens to be the full 40MS/s stream without any decimation whatsoever. Our problem is that the API already does its own filtering and decimation, even in the case of the largest bandwidth setting, using valuable CPU resources that we would like to spend elsewhere.
This has us wondering whether you might consider extending the API such that it would allow taking out IQ streams without any preceding processing whatsoever. Something along the lines of bbConfigureIQRaw(int device).
We realize that this would affect the frequency domain structure of the stream (e.g. it might be a 80MS/s real sample stream instead, with a center frequency that is a complex function of other streaming parameters), but as we do our own processing downstream anyway, we could just absorb whatever we need to deal with that into those downstream processing tasks.
Regards,
Found in Replies
Andrew posted on July 1, 2024 at 11:23 am View this postIn reply to: Send the Device a Setup File?
AndrewModeratorHi mlund,
Unfortunately no. If you are trying to configure either sweeps or an I/Q stream in the API, most of the settings in the Spike software control panels directly correspond to settings available in the API, but you have to write code to properly configure those desired settings. There is no notion of presets in the API.
It should also be known that the device itself stores very little of the configuration (most memory on device is volatile), almost all of the configuration is PC side.
Found in Topics
mlund posted on July 1, 2024 at 10:51 am View this postTopic: Send the Device a Setup File?
in forum BB Series DiscussionsIs there a way for Spike to create a setup file which I can then send to the device through the API?
I see in Spike the Preset option.
In the API I do not see a way to send a setup file to the device.Found in Replies
Andrew posted on June 26, 2024 at 8:22 am View this postIn reply to: Sample Rate – 486.1111
AndrewModeratorAndy,
Unfortunately this is the only sample rate available from our API.
That being said, in MATLAB, you could use the resample(x,p,q) function like this,
> y = resample(x,9,10)
and y will be resampled to 437500, which would be a nice integer. Is this what you’re trying to do?
- This reply was modified 7 months ago by
- AuthorSearch Results