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

Search:

Type: Posts; User: gfvalvo

Page 1 of 9 1 2 3 4

Search: Search took 0.01 seconds.

  1. Replies
    3
    Views
    69

    I've only worked directly with SPI hardware on...

    I've only worked directly with SPI hardware on T3.x. On that family of processors I pretty sure the SPI clock setup doesn't offer the resolution you're looking for. That's why I suggested using one...
  2. Replies
    10
    Views
    120

    It seems to me that the problems of your 3...

    It seems to me that the problems of your 3 different threads posted here all stem from the same source --- attempting to use USB audio. Is that a requirement? Can Max/MSP (whatever THAT is) provide...
  3. Replies
    3
    Views
    69

    The SPI hardware is detailed in the appropriate...

    The SPI hardware is detailed in the appropriate chip datasheet: https://www.pjrc.com/teensy/datasheets.html
    I believe at least some of them offer the feature of a continuous clock.

    Using an FTM...
  4. I've successfully used this board with Teensy 3.2...

    I've successfully used this board with Teensy 3.2 / 3.6 and the Teensy Audio Library: https://www.amazon.com/gp/product/B07HHPJLWC/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1
    It does both...
  5. Replies
    11
    Views
    179

    Before going too far down the road of trying new...

    Before going too far down the road of trying new hardware, you should take the divide and conquer approach to debug the problem. I'd replace the AudioInputUSB object with a couple of AudioPlayQueue...
  6. Replies
    11
    Views
    179

    * Your IntervalTimer interrupt may have a higher...

    * Your IntervalTimer interrupt may have a higher priority than the SWI that triggers all the audio class update() functions. That might cause some funny interactions if the former interrupts the...
  7. Replies
    13
    Views
    246

    If the shift register's latch input is LEVEL...

    If the shift register's latch input is LEVEL sensitive rather than EDGE sensitive, it might look more like this:

    #include <Audio.h>
    #include <SPI.h>
    #include <EventResponder.h>

    class...
  8. Replies
    13
    Views
    246

    Interesting problem. Actually, from the...

    Interesting problem. Actually, from the description it doesn't seem like @grinch needs to synchronize the SPI transfers to the Audio Library sample rate. Only the latch input of the shift register...
  9. Replies
    13
    Views
    246

    Thoughts: * Post the code you have. * Post...

    Thoughts:

    * Post the code you have.

    * Post a schematic

    * I'll bet you can nail the interrupt timing exactly by working with a PIT directly rather than indirectly with IntervalTimer (see...
  10. Replies
    13
    Views
    246

    Why don't you want to use DMA? That's what I'd...

    Why don't you want to use DMA? That's what I'd try first, using the same PDB timer method as the AudioOutputAnalog class.
  11. Replies
    35
    Views
    566

    Something like this will work on any Arduino...

    Something like this will work on any Arduino board and you won't have to resort to templates or lambdas:

    #include "Arduino.h"
    #include "OneButton.h"

    class NewButton: public OneButton {...
  12. Replies
    4
    Views
    123

    Assuming a Teensy 3.x, Pin 11 is I2s MCLK, Pin...

    Assuming a Teensy 3.x, Pin 11 is I2s MCLK, Pin 13 is I2S Din, and Pin 14 becomes SPI CLK. It's all documented on the Audio Board page.
  13. The WM8804-based board that I linked in the...

    The WM8804-based board that I linked in the thread that you referenced above supports both coax and optical S/PDIF input (as well as coax and optical S/PDIF output). It's reasonably priced and is...
  14. Reads / writes of 32-bit variables are atomic on...

    Reads / writes of 32-bit variables are atomic on a 32-bit ARM processor.
  15. Replies
    10
    Views
    385

    I find that the apparent setting hysteresis,...

    I find that the apparent setting hysteresis, drift, and lack of repeatability inherent in using pots outweighs other considerations. But, YMMV.
  16. Replies
    2
    Views
    128

    I'll take a look. Thanks.

    I'll take a look. Thanks.
  17. Replies
    2
    Views
    128

    SD Card on Arbitrary SPI Interface

    Hi all.

    So, the standard Teensy SD library nicely handles SPI-connected SD cards and the SDHC interface on T3.5 / T3.6. However, it's hard-coded to use the SPI instance of SPIClass (aka SPI0).
    ...
  18. Replies
    10
    Views
    385

    The State Table Approach...

    The State Table Approach nicely handles contact bounce as part of its algorithm.

    Here's one implementation that I wrote: https://github.com/gfvalvo/NewEncoder
  19. Replies
    10
    Views
    385

    I'd start by seeing if you have enough pins to...

    I'd start by seeing if you have enough pins to use rotary encoders instead of Pots. They produce much more stable and repeatable results. You might be able to do that by using pins on the T3.5's back...
  20. Actually, it will work perfectly if properly...

    Actually, it will work perfectly if properly implemented. It's done all the time in the digital telecom world. The "PLL" must synch the RX frequency exactly to the TX frequency --- but only on...
  21. @martianredskies, you should probably start a new...

    @martianredskies, you should probably start a new thread instead of hijacking this one. But yes, many of the Audio Library classes contain functions that are intended to be called from the main...
  22. Everything is Open Source. Just open the .h and...

    Everything is Open Source. Just open the .h and .cpp files for the objects of interest. It's all there to see.
  23. Replies
    6
    Views
    241

    I've found Agent Ransack...

    I've found Agent Ransack to be an invaluable tool for answering questions like this.
  24. I'll have to take your word for it on the...

    I'll have to take your word for it on the difference between audio clips. I have no doubt that you hear it. It's just that such minutiae in audio isn't my thing. I'm more a "blink the lights to the...
  25. Replies
    15
    Views
    455

    No, I just used boards with InvenSense devices.

    No, I just used boards with InvenSense devices.
  26. Replies
    2
    Views
    217

    Take a look at the State Table approach described...

    Take a look at the State Table approach described here: http://www.buxtronix.net/2011/10/rotary-encoders-done-properly.html
    It handles de-bouncing automatically as part of the algorithm.
  27. Replies
    15
    Views
    455

    Yes, that's what I found when I tested it. It's...

    Yes, that's what I found when I tested it. It's also what the device's datasheet shows. It also violates the I2S specification.
  28. Replies
    15
    Views
    455

    Well, I can't explain that. Different flavor of...

    Well, I can't explain that. Different flavor of SPH0645 perhaps? This picture is from the datasheet provided by Adafruit for their SPH0645 Breakout:
  29. Replies
    15
    Views
    455

    The SPH0645 is not the best choice as it's I2S...

    The SPH0645 is not the best choice as it's I2S output violates the timing specification. The Data signal transitions on the wrong edge. See:...
  30. Perhaps not. But, if you did as requested, others...

    Perhaps not. But, if you did as requested, others could recreate your issue and test potential solutions. Is there some reason you're unwilling to show code?
  31. Glad it's working. But, your use of the interrupt...

    Glad it's working. But, your use of the interrupt is still wrong and unnecessary.

    What are "gates"? Why can't you just read the input line in the loop() function?

    Also, which Teensy board are...
  32. You need to learn about arrays. They are a basic...

    You need to learn about arrays. They are a basic and essential element of the language. There are numerous references online. Here' Arduino's:...
  33. Check out the Granular effect.

    Check out the Granular effect.
  34. Just use an array of drums: ...

    Just use an array of drums:


    AudioSynthSimpleDrum myDrums[4];
    uint8_t currentDrum;


    void playDrum () {
    myDrums[currentDrum].noteOn();
    }
  35. Perhaps you could adjust the rate of the RX...

    Perhaps you could adjust the rate of the RX T3.5's I2S MCLK (with I2S0_MDR register) based on the fill level of a receive FIFO? It would form a kind of a PLL with the fill level as the phase...
  36. A quick look at the code shows that the I2S RX...

    A quick look at the code shows that the I2S RX hardware gets set up slightly differently by the AudioInputPDM class than by the AudioOutputI2S class (which configures both I2S TX and RX).

    It seems...
  37. I should work as-is with the BCLK supplied by the...

    I should work as-is with the BCLK supplied by the T3.6 (~2.8 MHz). The PDM object then filters the signal and provides the proper Audio Library sample stream to the following objects.

    If it were...
  38. You should not be calling the PDM object's...

    You should not be calling the PDM object's begin() an update() functions. That's handled by the audio library. Fix that and get rid of all your button handling code until you get the mic input to I2S...
  39. The answers to both of your questions are...

    The answers to both of your questions are contained in the page Paul linked above:
  40. Replies
    14
    Views
    510

    Feature Creep or poorly defined requirements from...

    Feature Creep or poorly defined requirements from the start?
  41. You could use the 'AudioPlayQueue' class or...

    You could use the 'AudioPlayQueue' class or implement your envelope detector as a Audio Library class.
  42. Looks like you're right. Too bad the I2S write-up...

    Looks like you're right. Too bad the I2S write-up in the BM23 datasheet is so poor and uses non-standard signal names.
  43. Replies
    11
    Views
    306

    That's interesting, according to the Datasheet...

    That's interesting, according to the Datasheet it does. It's referred to as "System Clock" on Page 11.
  44. Replies
    11
    Views
    306

    Based on devices I've looked at with I2S (and...

    Based on devices I've looked at with I2S (and similar) interfaces, I'm going to guess that the frame size is actually 32 bits and only the upper 24 bits contain valid data. Your best bet is to put a...
  45. Replies
    11
    Views
    306

    Please post a link to the MV8800's I2S...

    Please post a link to the MV8800's I2S documentation.
  46. Might be easiest to just statically allocate all...

    Might be easiest to just statically allocate all the DMAMEM for the largest LED count you're going to need. Then just create the OctoWS2811 object and tell it the ledsPerPin count. It will use as...
  47. At best, this: DMAMEM int *displayMemory;...

    At best, this:

    DMAMEM int *displayMemory;
    would just give you a pointer variable in the DMAMEM area. When you dynamically allocate the memory, it may or may not be located in the DMAMEM area....
  48. The mode is controlled by configuration of the...

    The mode is controlled by configuration of the device, the proper connections to use follow from that. Master mode would be required if you're using a DAC that only supports slave mode.


    I'd use...
  49. I'm not a fan of that particular microphone as it...

    I'm not a fan of that particular microphone as it violates the I2S timing specifications. See: https://forum.pjrc.com/threads/47010-I2S-Microphone-(SPH0645LM4H-B)
    Instead, I'd go with something from...
  50. Replies
    11
    Views
    419

    You seem to be trying to solve a non-existent...

    You seem to be trying to solve a non-existent problem. Why don't you just use a Mixer block? That's what it's for.
Results 1 to 50 of 403
Page 1 of 9 1 2 3 4