Search results

  1. T

    Velocity-sensitive, contactless MIDI keyboard with polyphonic aftertouch for Teensy synth

    Since there are so many synth projects on this forum, yet just a few talk about controllers for synths, I would like to introduce you to one of the projects I've been working on for some time... and I'm trying to motivate myself to finish it. From the old times I got a musical keyboard made on...
  2. T

    Synth - Starting out - emphasis on Expressive

    Some advice on FX. The usual order of FX section is that they are connected one after another (serial, not parallel setup as in your scheme) and reverb comes last. Flanger/chorus first. With your current parallel setup, the reverb would only be applied to dry signal, not chorused one. So I...
  3. T

    Help with a 4 band parametric eq

    It's hard to say without seeing the flicker on the video, but sometimes display may be having problems with keeping up with reliable transfer at high SPI clocks or the wires that you are using to connect to display are too long to transmit high frequency SPI clock. You can try lowering SPI clock...
  4. T

    Help with a 4 band parametric eq

    Typically flickering is because you first erase content and then you draw. Between erase and new draw there is nothing on screen and that causes flicker. To avoid that you should "never paint the same pixel twice". Don't erase the content of screen then draw, but draw the new content over...
  5. T

    Help with a 4 band parametric eq

    Yes using FIR is good idea, but if you want to go IIR way a simple biquad structure implements all kinds of filters (LP, HP, BP, BR, halving, etc), you can use calculator here to find out coefficients needed https://www.earlevel.com/main/2021/09/02/biquad-calculator-v3/ And C++ source code...
  6. T

    Guitar Distortion Effect using waveshape and Teensy 4.0 with Audio Shield

    Every non-linearity introduces new harmonics. You should do Taylor series expansion to see what is the amplitude of components generated. For example single sine gets expanded to sin(x) = x − x^3/3! + x^5/5! − x^7/7! + · · · Each power component of Nth degree creates Nth harmonic. So x^3 term...
  7. T

    Teensy 4.1 MQS has harmonics which alias down to audible frequencies

    MQS is essentially noise-shaped PWM/PDM output so you should not expect much. NXP docs specifically say that over 10kHz you are going to get bad THD+N.
  8. T

    Ladder filter frequency and resonance control via pots

    It converts linear scale that your potentiometer has to logarithmic frequency scale (how human hearing works), so equal knob movement represents one octave movements say from 100 to 200Hz and 1kHz to 2kHz (for example)
  9. T

    Google imxrt1176 coming soon

    Everything that involves convolution is implementable on TPUs. Other algorithms too, check out some science on the subject: https://arxiv.org/abs/2107.05473
  10. T

    Future Teensy features & pinout

    Just for what it is worth NXP i.MX RT1176 -based products start to emerge: https://coral.ai/products/dev-board-micro/
  11. T

    Google imxrt1176 coming soon

    I was just about to post that info, but it looks like TeensyWolf was faster :- Product page for imxrt1176-based Dev Board Micro is now available: https://coral.ai/products/dev-board-micro/ I don't know how easy would be to program the Coral Edge TPU on this board, but they advertise this...
  12. T

    Future Teensy features & pinout

    Just wanted to say Thank You, Paul Stoffregen, for doing all the work you do. I can imagine how stressful keeping up with all things is, as I am running the some other tech forum. Thank you for sharing the info about manufacturing side. T4 is fantastic piece of design and manufacturing and your...
  13. T

    Porting moog ladder filters to audio objects?

    CMSIS provides ready-to-use implementation. For interpolation you need call arm_fir_interpolate_init_f32 (once) and arm_fir_interpolate_f32 ( in the loop) For decimation you need call arm_fir_decimate_init_f32 (once) and arm_fir_decimate_f32 (in the loop) Look inside CMSIS source files they...
  14. T

    Porting moog ladder filters to audio objects?

    If you did oversampling "by the book" you would need polyphase FIR interpolator at the input and polyphase FIR decimator filter at the output. These are costly. Not doing things by the book results in aliasing. FWIW D'Angelo filter (Arturia) is running at 176kHz rate...
  15. T

    Porting moog ladder filters to audio objects?

    With max resonance you can clearly hear that analog filter has some "gritty" quality to it (2:52 of your video), while digital is sterile and lacks this effect completely.
  16. T

    Porting moog ladder filters to audio objects?

    I noticed that you are using copy of the same input sample when oversampling and averaging output. You may consider using linear interpolation on input and dropping on output.
  17. T

    Porting moog ladder filters to audio objects?

    Sorry, I did not want to sound harsh, I realised that I was too quick to post feedback, so I deleted it as it requires more time. I will run newest code and do more tests. UPDATE: Now I am running your newest code and I can enjoy increased frequency range :-)
  18. T

    Porting moog ladder filters to audio objects?

    For obvious (performance) reasons nobody uses math library tanhf for audio. It is way too slow. And if you read previous posts, you would see that I earlier wrote to use float everywhere, not double as it was used in earlier versions of the code. Rational Pade approximation used by the code...
  19. T

    Porting moog ladder filters to audio objects?

    For what it is worth soft saturation (distortion) is absolutely essential to Moog sound. https://www.youtube.com/watch?v=5sAq0FjRUI4 And using tanh() in simultation is not random choice. Moog ladder filter consist of bipolar transistor pairs forming variable transconductance amplifier stages...
  20. T

    Porting moog ladder filters to audio objects?

    Was busy with other stuff, but over the weekend I intend to pull that code and check against analog 4pole "moog" filter simulation in hardware Virus TI synthesiser. Guys from Kemper Music are famous from good sounding digital filters. Their analog model goes into self-oscillation easily and...
  21. T

    sgtl5000 Delay from ADC to DAC

    Here you can find the document that describes from where the delays come from: https://www.ti.com/lit/wp/slyy095a/slyy095a.pdf?ts=1613141458124
  22. T

    Porting moog ladder filters to audio objects?

    For what it is worth it is not possible to exactly simulate non-linear analog filter with feedback in digital domain because of the delay introduced by digitization. So called "zero delay" filters were developed to address that problem https://urs.silvrback.com/zero-delay-feedback Also each...
  23. T

    New Teensy 4.1 DIY Synthesizer

    Sorry. Apparently I need to get my eyes checked.
  24. T

    New Teensy 4.1 DIY Synthesizer

    For better reliability of your MIDI IN consider 10k resistor between pin 7 and ground of optocoupler as explained here: https://electronics.stackexchange.com/questions/165255/midi-in-many-circuits?noredirect=1&lq=1
  25. T

    Porting moog ladder filters to audio objects?

    As I wrote in my earlier post, I advise to keep attention to those little details such as using floating point constants: 4.0 is a DOUBLE (64-bit) constant. It causes your computations to be done in 64-bit, not 32-bit. And such computations are 2x slower. To avoid that (and get best...
  26. T

    Porting moog ladder filters to audio objects?

    Two performance suggestions: 1. Use f for constants: like 0.9892f instead of 0.9892. Constants by default are double. Float is twice as fast even on hardware FPU 2. Use float instead of double (for audio 32bit float offers enough resolution and dynamic range)
  27. T

    Audio library, I2S DAC oversampling?

    SNR is measured in dB. And it was observation / comment / remark (hence "approx" word), not measurement. PT8211 is so bad, not only with regards to noise but mainly to distortion that I wonder why would anyone use it. Teensy 4 MQS output is actually better, esp with regards to distortion and has...
  28. T

    Raspberry Pi Pico

    "Brand" effect. Everything that has name "Raspberry Pi" on it gets media coverage. Every web site talks circles about it and praises it as it was the best thing since sliced bread. They don't mention things like Black Pills. They only compare to Arduino UNO (easy win). So crowds go with...
  29. T

    Raspberry Pi Pico

    The other person could say: Focus on your core product/business. High-performance microcontrollers in tiny user-friendly package. Why would anyone bother to think about yet another 12-year old Cortex M0? Did you guys check the timings for floating point operations on this pico? Function ROM/SDK...
  30. T

    Raspberry Pi Pico

    Cortex M0 was introduced in 2009. So it is 12 year old tech. CPU in Raspberry PI 1 wasn't 12 years old. But typical user does not program (majority of) them using APIs (yet), of course except washing machines ;-) Lots of incompatible APIs is not necessarily developer's dream.
  31. T

    Raspberry Pi Pico

    +1. That is my sentiment too. I have seen such hype so many times in the past. Don't waste time on platform that is not bringing anything new. M0 is old tech, underpowered, lacking crucial features like FPU. The only advantage is somewhat low price ($4), but there are lower priced ($2.50) and...
  32. T

    Raspberry Pi Pico

    Yes, I have been running it at 750MHz super stable, but decreased longevity https://www.nxp.com/docs/en/nxp/application-notes/AN12253.pdf worries me a bit.
  33. T

    Raspberry Pi Pico

    And it is 5 times as useful :-) Seriously. I am making project that requires LOT of horse power and will probably use 5 or more Teensy 4s. And I need bare metal, so Linux based things like Raspberry Pi are not an option. And their Pico is so pico-powered. I would love to use 1GHz Teensy, but it...
  34. T

    Raspberry Pi Pico

    +1. and 600MHz T4 is even better :D There is detailed chart on page 180 of reference manual for F401. FIFO has four 32-bit words that can act as 16 bytes or 8 half-words (16-bit).
  35. T

    Raspberry Pi Pico

    It does. Page 166 and page 180 of STM32F401 Reference manual: "Four-word depth 32 first-in, first-out memory buffers (FIFOs) per stream." FIFO in STM32F401 is universal that handles not only I2S but ALL streams. Stream can be i2C, serial, SPI, I2S, memory, whatever.
  36. T

    Audio library, I2S DAC oversampling?

    Exactly, noise floor approx -58dB that is less than 10 bits. Good cassette decks in '80s were able to get >70dB.
  37. T

    Raspberry Pi Pico

    I2S without masterclock limits the number of DACs you can connect to those that don't need MCLK. Also since this PIO seems to be implementing I2S in software the question arises about clock jitter and availability (or lack of) of FIFO buffer that is typically offered by fixed function I2S...
  38. T

    Audio library, I2S DAC oversampling?

    Now do the same with PT8211 and you will see how bad it really is. I would say it is no better than '80s compact cassette.
  39. T

    Raspberry Pi Pico

    I also hate Arduino IDE, but there is a solution already. I strongly recommend taking a look at PlatformIO (Visual Studio Code addon). It is night and day compared to Arduino. I used various IDEs for various families (STM32, ESP32, Arduino, Teensy) but today I do all the work on ALL...
  40. T

    Audio library, I2S DAC oversampling?

    I am using studio grade ADC AK5394A (123dB SNR/ 123dB DR) with Visual Analyser. With regards to your results, your power supply may be the culprit too. Disconnect USB and try running from some high quality low noise power supply or batteries. USB power is noisy.
  41. T

    Audio library, I2S DAC oversampling?

    I would actually say that pretty much ALL current high quality sigma-delta audio DACs have oversampling built-in with multistage decimator and FIR filters that have quality way above what is offered by library and zero computational overhead from uC side. I don't see any reason to use...
  42. T

    Future Teensy features & pinout

    Yes it would be very handy to have SDRAM option on board. Note that this Daisy board uses STM32H750 microcontroller at @480MHz so it is already significantly slower than existing Teensy 4 @600MHz, and nowhere near to promised speed of i.MX RT1176 @1GHz. I was also recently participating in STM...
  43. T

    sinf() on Teensy 4.0

    First, in almost all practical cases you use windowed sinc. Second, as I wrote, its better to do range reduction yourself.
  44. T

    sinf() on Teensy 4.0

    Range reduction of large arguments in trigonometric functions is always problematic because PI constant used is inherently inaccurate. There is infamous bug in Intel x87 FPU hardware that causes sin to be inaccurate for large arguments...
  45. T

    FIR filter with Teensy 4 + audio adapter

    Yes see: https://www.mathworks.com/help/dsp/ug/optimized-fixed-point-fir-filters.html
  46. T

    FIR filter with Teensy 4 + audio adapter

    It works because you have converted (rescaled) floating point coefficients to fixed point. If you use short data type (16 bit), coefficients are supposed to be in the range of -32768 upto 32767 and that values represent fractions of -1.0..+1.0. See...
  47. T

    FIR filter with Teensy 4 + audio adapter

    Datatype short is 16 bit - it is too low resolution for coefficients of a good filter. Also if you just change the data type from int to short, you will likely overflow the range, as short has only +/-2^15 range (-32768...+32767) while int spans much higher range (-2^31...+2^31) so all...
  48. T

    Led strip

    I did that already in the past. True power issues are a problem if you want to light up entire strip, but to light up only a few leds out of say 4 octave keyboard (48 leds) (usually you don't have more than 10 FINGERS to play) I found out that I could easily live with 500mA power supply. Also a...
  49. T

    Teensy 4.0 - how to connect a jtag debugger ?

    Just my 2 cents worth: I also faced problem that I needed a decent and FAST debugger for complex programs written for embedded systems (not only Teensy but STM32 too). Although I got debugger with STM32 I find it too slow to work with. So I ended up with hybrid approach. I try to isolate...
  50. T

    teensy amount of quality

    Soldering Teensy is not rocket science. Certainly not more complicated than soldering Arduino Nano or Micro. Keep temperature in check, don't use too much tin and heat the pad and the pin not more than 1 second. That's all. And I think Teensy quality is superb.
Back
Top