Welcome to the new FlexRadio Community! Please review the new Community Rules and other important new Community information on the Message Board.
If you are having a problem, please check the Help Center for known solutions.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.

Decoding DAX IQ Steam into spectrum of CW

Rick - W5FCX
Rick - W5FCX Member ✭✭
edited December 2019 in FLEX-6000 Signature Series
I’m beginning work on some CW utilities and need to understand a few things to start about DAX IQ content. 1. Is DAX IQ stream made up of 4-byte floats or Fixed point? 2. What is the fully decoded spectrum bandwidth once IQ stream is run through FFT expected to be? 3. Will the DAX stream center frequency match the associated panadapter, plus and minus half the decoded bandwidth? 4. Are there any code examples or detailed descriptions of the DAX IQ interface and content available? Thanks in advance. Rick W5FCX

Answers

  • Mark WS7M
    Mark WS7M Member ✭✭
    edited April 2019
    This has been on my list to do for quite some time.  I hope some good answers show up.
  • Eric-KE5DTO
    Eric-KE5DTO Administrator, FlexRadio Employee admin
    edited April 2019
    First, I'm assuming you're asking about the ethernet interface (as opposed to FlexLib or DAX).

    1. DAX IQ is 4 byte floats (2 channels) -- so 8 bytes per frame.
    2. It will depend on the selected bandwidth (24, 48, 96 or 192kHz).  I think it may be just under the specified bandwidth as a result of the filters.
    3. The center frequency of the Panadapter should match the center of the IQ samples exactly.
    4. I'm not aware of any, but I'm happy to answer any questions you have as we use the same interface for DAX.
  • Rick - W5FCX
    Rick - W5FCX Member ✭✭
    edited April 2019
    Thanks. One more question. If I decided to use the DAX IQ audio stream instead of the API, what is the loss of accuracy or other differences?
  • Eric-KE5DTO
    Eric-KE5DTO Administrator, FlexRadio Employee admin
    edited April 2019
    The only real downside is having to interface with the Windows sound system.  So long as it doesn't do any strange resampling, you shouldn't have any degradation.  Likely some additional latency.
  • Rick - W5FCX
    Rick - W5FCX Member ✭✭
    edited December 2019
    Eric - a few more questions. I'm new to IQ processing, sorry for basic IQ 101 questions.

    In the case of DAX IQ stream arriving via Windows sound channel, I assume that's a composite IQ signal that must be downconverted and filtered into its separate I and Q components. I want to produce an FFT spectrum power vector (Python) of the signal to identify each CW component. Can I just run the FFT and then low-pass filter to get there or what?

    In the case of direct API IQ stream, I'm assuming those are I/Q baseband signals and I need to take the square root of I + Q to recover the original AM spectrum.

    Am I on the right track here?
  • Rick - W5FCX
    Rick - W5FCX Member ✭✭
    edited April 2019
    Agreed. Looks like default Windows sound system is 44.1khz. Assume DAX drivers support the higher sample rates.
  • Rick - W5FCX
    Rick - W5FCX Member ✭✭
    edited April 2019
    More research suggests that SDR I and Q data streams are typically delivered in each stereo audio channel, with I component in right channel and Q in the left. Is this the case with DAX IQ?
  • Ted  VE3TRQ
    Ted VE3TRQ Member ✭✭✭
    edited April 2019
    Which one is in which channel is often indeterminate, but IQ is delivered in stereo audio channels. If DAX IQ did not also do this, it would not work with all of the apps that expect normal IQ delivery in stereo channels :-) There are many apps that work just fine with Flex DAX IQ data.
  • Rick - W5FCX
    Rick - W5FCX Member ✭✭
    edited April 2019
    Makes perfect sense. And it answers one of my questions. Thanks!

Leave a Comment

Rich Text Editor. To edit a paragraph's style, hit tab to get to the paragraph menu. From there you will be able to pick one style. Nothing defaults to paragraph. An inline formatting menu will show up when you select text. Hit tab to get into that menu. Some elements, such as rich link embeds, images, loading indicators, and error messages may get inserted into the editor. You may navigate to these using the arrow keys inside of the editor and delete them with the delete or backspace key.