Forum Rule: Always post complete source code & details to reproduce any issue!

Search:

Type: Posts; User: PerM

Search: Search took 0.00 seconds.

  1. Replies
    5
    Views
    352

    It seems like arm_rfft_fast_f32 is indeed...

    It seems like arm_rfft_fast_f32 is indeed supported! And it can handle the following FFT lengths: 32, 64, 128, 256, 512, 1024, 2048, 4096.
    This is great since it means I can write code that can...
  2. Replies
    5
    Views
    352

    Thanks Mark! You are right that my input data...

    Thanks Mark!

    You are right that my input data is real, so rfft functions would be a better choice than cfft. But I do want to use floats and the arm_rfft_init_f32/arm_rfft_f32 functions do still...
  3. Replies
    5
    Views
    352

    512 point FFT, maybe using latest CMSIS

    The analyze_fft1024.cpp/h class uses arm_cfft_radix4_q15 from an old version of CMSIS. There is a corresponding function for f32, which is what I am interested in here. In the old CMSIS functions, it...
  4. Replies
    21
    Views
    1,079

    Interesting. Maybe it would be a good idea to...

    Interesting. Maybe it would be a good idea to include this as a standard feature in the I2S audio blocks as it seems like at least the both of us, and presumably more people, sometimes have the need?...
  5. Replies
    21
    Views
    1,079

    I might have solved it or at least found a...

    I might have solved it or at least found a workaround. I added a state variable to my input_i2s_quad class that controls whether or not the isr() routine should call update_all() and copy data from...
  6. Replies
    21
    Views
    1,079

    The frequency shifting and filtering is done by...

    The frequency shifting and filtering is done by code from the AudioSDR project, https://forum.pjrc.com/threads/57362-AudioSDR-A-single-Audio-block-SDR-(software-defined-radio)-processor-demodulator...
  7. Replies
    21
    Views
    1,079

    As I have probably already mentioned, measuring...

    As I have probably already mentioned, measuring the phase difference between the two RF signals is pretty much the most important function of this project, so it is not just something I added as a...
  8. Replies
    21
    Views
    1,079

    This might not be perfectly intuitive, but the...

    This might not be perfectly intuitive, but the math works out the way I tried to describe. So while I am indeed measuring the change in phase differences between the IF signals for two different LO...
  9. Replies
    21
    Views
    1,079

    Sorry if I was unclear and thanks for asking for...

    Sorry if I was unclear and thanks for asking for clarification.

    I have two WM8731 codecs. As you suggested, I rewired my board so that both are driven by the I2S1 clocks from the Teensy while the...
  10. Replies
    4
    Views
    309

    Not a complete answer, but perhaps a start: In...

    Not a complete answer, but perhaps a start:

    In this post: https://forum.pjrc.com/threads/68591-Synchronizing-the-two-I2S-ports-on-Teensy-4-0?p=293023#post293023 I have shared some code that sets...
  11. Replies
    21
    Views
    1,079

    I was a bit too hasty in my conclusion of having...

    I was a bit too hasty in my conclusion of having solved the phase offset problem between the I2S inputs.

    It turns out that I often do not get the desired synchronization between the two I2S...
  12. Replies
    21
    Views
    1,079

    Thanks everyone who helped! I patched my board...

    Thanks everyone who helped!

    I patched my board so that both codecs are clocked by I2S1 while the ADCDATA signal from the second codec is connected to pin 6 of the T4. Fortunately, this pin was not...
  13. Replies
    21
    Views
    1,079

    Neal, I think you will need to dig into the big...

    Neal, I think you will need to dig into the big "i.MX RT1060 Processor Reference Manual". Sections 11.7.353 - 11.7.356 tell you to which pins you can mux the SAI1 (I2S1) data input pins. E.g....
  14. Replies
    21
    Views
    1,079

    Thanks WMXZ! You are probably right that that...

    Thanks WMXZ!

    You are probably right that that is a better approach. I will look into it and probably patch the board and modify the software.
  15. Replies
    21
    Views
    1,079

    Synchronizing the two I2S ports on Teensy 4.0

    I am working on an SDR project where I need to sample and then synchronously process two IQ IF signals using WM8731 audio codecs. I have the codecs and RF parts working fine, but I have not yet found...
  16. Thanks Chip. I clearly did not google enough...

    Thanks Chip. I clearly did not google enough before starting to write code. I will look into the solutions you point to.

    Per
  17. Hi MarkT, Thanks for the suggestion. That...

    Hi MarkT,

    Thanks for the suggestion. That might have been simpler to implement, but now that I have a working (but clunky) solution, I am reluctant to change to another clunky solution. I would...
  18. IRQ/ISR issues with my float version of AudioStream

    I decided to make a version of AudioStream that works with float32_t instead of int16_t for use in an SDR project based on a Teensy 4.

    I just got it to work, but not in a very elegant way. I need...
  19. Replies
    6
    Views
    519

    Hi Blackaddr, Thanks for your explanations. I...

    Hi Blackaddr,

    Thanks for your explanations. I mostly agree with your analysis and I do not expect any drastic improvements in weak signal SNR through my changes in the I2S functions. The one point...
  20. Replies
    6
    Views
    519

    The 16-bit values (instead of 24) was due to a...

    The 16-bit values (instead of 24) was due to a mistake I made in the control_WM8731.cpp. I had changed to 32-bit mode in the master enable method, while I am using it in slave mode. The corrected...
  21. Replies
    6
    Views
    519

    Some more findings: It seems like the DMA is...

    Some more findings:

    It seems like the DMA is for some reason running amok and not stopping at the end of the destination buffer. I added the following printout to the ISR to check the destination...
  22. Replies
    6
    Views
    519

    Hi Pete, Thanks for your reply. That part...

    Hi Pete,

    Thanks for your reply.

    That part of the code is taken without modification from input_i2s.cpp. I tried to add a return as you suggest (even another one for the case that allocation of...
  23. Replies
    6
    Views
    519

    Issues when modifying input_i2s.cpp

    I am trying to make a version of input_i2s.cpp for Teensy 4 that would allow me to capture all 24 bits from a WM8731 audio codec and shift the bits left by a selectable number of steps before using...
  24. Replies
    29
    Views
    5,708

    Yes, I mostly appreciate the simplicity of the...

    Yes, I mostly appreciate the simplicity of the Arduino IDE and the minimal configuration and setup necessary to get up and running. But sometimes some of the things that are hidden and make simple...
  25. Replies
    29
    Views
    5,708

    Thanks defragster for that piece of information....

    Thanks defragster for that piece of information. Good to know.
    I am more used to an ordinary C/C++ environment where there is perhaps more to learn to get started, but also less of the "helpful"...
  26. Replies
    29
    Views
    5,708

    I had trouble compiling my code (in the Arduino...

    I had trouble compiling my code (in the Arduino environment) when I had placed the definition of getTeensy3Time() in a separate file. After some head scratching, I realized I had to explicitly...
Results 1 to 26 of 26