Rolfdegen's latest activity

  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    I'm using 3x MCP23017. Two for the 24 keys and one for seven encoders in the Jeannie. The circuit diagram is not yet complete. An MCP23017 is still needed for the other buttons (24 in total) and the other 5 encoders.
    • Screenshot 2026-05-03 121759.png
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    Jeannie 2 Prototyp back
    • 20260504_202905.jpg
  • Rolfdegen
    Rolfdegen replied to the thread New Encoder library suggestion.
    Here in the Teensy forum, there are several projects that use the MCP23017 for encoder queries. Using the MCP23017 saves a lot of pins, and you can do it with a Teensy.40.
  • Rolfdegen
    Rolfdegen replied to the thread New Encoder library suggestion.
    In my synth project, I use a total of 7 encoders and an MCP23017 GPIO expansion module. This works very well. When the encoders are moved, the MCP23017 sends an interrupt signal to the Teensy MCU. The Teensy then queries the GPIO lines connected...
    • Screenshot 2026-05-03 121759.png
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Audio and graphics with two Teensys https://forum.pjrc.com/index.php?threads/new-teensy-4-1-diy-synthesizer.63255/post-367637
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    Audio and Graphics Test By distributing the audio and graphics functions across two Teensy MCUs, the graphics on the touchscreen are fast enough and run smoothly. The red LED (left) indicates data transmission from the GUI MCU to the audio MCU...
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    Yes, you're right. I overlooked that 🥸
  • Rolfdegen
    Thank you. I place great importance on a good and attractive GUI. Separating the output onto two MCUs was necessary because the 300KB frame buffer and audio on a Teensy 4.1 consume too many resources, making the display output very slow. I think...
  • Rolfdegen
    That's an interesting project. I've linked to it on the German sequencer forum :) Link : https://www.sequencer.de/synthesizer/threads/jeannie-2-polyphonic-synthesizer-sampler.178440/
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    Seriall Data Port with 6 MHz on the Teensy 4.1 is a bit slow for transmitting real-time audio data for a sample curve on the display. However, I can reduce the 16-bit data to 8 bits and transmit it in blocks. That's sufficient for the graphic...
  • Rolfdegen
    Hello Teensy Warriors, @bk40, I can relate to broken devices and code. Hardware is incredibly unforgiving, and requires money, time, and patience. I've been at this for a long time and I've failed to finalize many designs. I'm hoping my momentum...
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    I'm using every pin on the Teensy 4.0. Perhaps it would be better to switch to a second Teensy 4.1. Then a high-speed SPI connection between the first Teensy (audio engine) and the second Teensy (GUI) would be possible and I would have a few...
  • Rolfdegen
    Rolfdegen reacted to h4yn0nnym0u5e's post in the thread New Teensy 4.1 DIY Synthesizer with Like Like.
    I've been messing around with FlexIOSPI to reasonably good effect, though it does have its quirks. I think it may fail to implement anything other than SPI Mode 0, but having raised an issue with the author I got only the response "No idea...
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    I use Visual Studio Code and PlatformIO for programming. I've connected the two Teensy devices to the PC via USB and combined the two Teensy projects (audio engine & GUI) into a single workspace. I use the TyTools program to program the Teensy...
    • Screenshot 2026-05-02 125015.png
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    For communication between the audio engine (Teensy 4.1) and the GUI interface (Teensy 4.0), I established a high-speed serial connection with 6,000,000 baud to smoothly display audio signals and waveforms. Unfortunately, the Teensy 4.0 only has...
    • Jeannie2_Block_02.png
    • Screenshot 2026-05-02 122547.png
    • Screenshot 2026-05-02 122625.png
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    A few more details... Teensy 4.1 handles audio synthesis and MIDI. Teensy 4.0 takes care of all the graphical aspects, as well as encoder and key input, and touchpad input. Teensy 4.0 FX engine for 16-bit stereo delay and effects such as Corus...
    • Screenshot 2026-04-27 220044.png
  • Rolfdegen
    Rolfdegen replied to the thread New Teensy 4.1 DIY Synthesizer.
    During the development of Jeannie 2, it became apparent that the graphical user interface and the audio engine required more CPU resources than anticipated, pushing the limits of a Teensy 4.1. To gain more flexibility for developing audio...
    • Screenshot 2026-04-26 212118.png
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Thanks. I always get that mixed up. Another option. The Teensy 4.0 for the GUI queries the encoders, buttons and touch controllers and controls the parameters for the audio engine and FX via two serial buses. Perhaps this is a better way :unsure:
    • Screenshot 2026-04-26 212118.png
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    This is the 'Jeannie 2' Synthesizer Block
    • Screenshot 2026-04-26 205314.png
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Mouser also offers the 16MB PSRAM Link: https://www.mouser.de/ProductDetail/ISSI/IS66WVS16M8FBLL-104NLI?qs=HMhDvBYWqvOQH9kJuzBK4g%3D%3D
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    I also considered using an intelligent HMI TFT multi-touch display with graphics capabilities. However, these displays are somewhat more expensive than regular TFT displays. Link: https://www.antratek.de/nx4827p043-011c-y
    • Screenshot 2026-04-26 102417.png
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    The audio engine requires up to 80% CPU processing time when 8 voices with ladder filters are used simultaneously. I have concerns about the size of the 300KB framebuffer. The remaining 200KB will not be sufficient for the audio engine. Putting...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Because the audio engine (8-voice polyphonic synthesizer with filter, LFO, wavetable, and samples) requires a lot of resources on Teensy4.1. I think I'll move the GUI to a second Teensy (Teensy 4.0). I'm working with PlatformIO and Visual Studio...
    • Jeannie Board Green1.jpg
  • Rolfdegen
    Rolfdegen reacted to MarkT's post in the thread ST7796 Teensyduino support with Like Like.
    Above about 30Mbit/s you start to require careful attention to track impedance and routing, for instance don't expect things to work reliably on a breadboard up at 80Mbit/s, even with careful layout and short wiring.
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    On my prototype, the maximum SPISpeed (60000000) only works. It could be due to the wiring. I used your example and got readings between 1198 and 1260 at a 600MHz CPU clock.
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    I'm now using your corrected ST7735_t3-dev-big-screen-t4 library with the pinout you suggested and Teensyduino version 1.60 with the original DMA files. Graphics and sound are now working perfectly. /* Test mit Display ST7796S FrameBuffer mit...
    • RigolDS2.png
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    I'm using the ST7796_t3 library in Teensyduino, Version 1.60 for an ST7796S display (320x480 Pixel). When I set FrameBuffer to true, the image output doesn't work. When I set FrameBuffer to false, the image output works. /* Test with Display...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    I need help. I don't understand why FrameBuffer isn't working. I'm using the ST7796_t3.h library.
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Hallo again.. Okay. Back to the roots. But first, a big thanks on 'h4yn0nnym0u5e' for your great support 🙏 For my touchscreen (ST7796S 480 x 320 pixels), I'm now using the standard ST7796 library from Teensyduino, version 1.60. The display works...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    I don't know if this is the right way to go. So many problems with the graphics. And the audio processing for ADSR, filters, LFOs, and other things has to work too.. I'm considering using a second Teensy 4.0 for drawing graphics and menus on the...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    You're right. It's just a simple example. But it should work with audio. Unfortunately, it doesn't. I have no audio with tft.useFrameBuffer(true)
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Sorry.. I've changed it now. Screen without flickring but no sound :unsure: /* Test with Display ST7796S FrameBuffer with DMA and Audio */ #include <Arduino.h> #include <Audio.h> #include <ST7796_t3.h> // Hardware-specific library #include...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    No screen flickering without audio. ST7796S framebuffer and dma is enabled. My code /* Test with Display ST7796S FrameBuffer with DMA. Audio is disabled */ #include <Arduino.h> #include <Audio.h> #include <ST7796_t3.h> // Hardware-specific...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Flickering with horizontal bargraph. ST7796S framebuffer and dma is enabled. Audio is on. Automatic fading without encoder. My code /* Test with Display ST7796S FrameBuffer with DMA and Audio */ #include <Arduino.h> #include <Audio.h>...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    :unsure: Small objects with a black background are flickering. Is that normal Another thing I've noticed: I can no longer disable the frame buffer by setting it to false. One more thing. If I turn off (comment out) all audio, then the screen...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Yes. You're the best. The `mcp0.begin_I2C(0x21, &Wire1);` line was missing from the `setup()` function. Thanks a lot :)
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Houston, i have a problem! I'm using Wire.h and the Adafruit_MCP23X17.h library for my key and encoder query. The system crashes after initializing Adafruit_MCP23X17.h. /* Test with Display ST7796S FrameBuffer with DMA and Audio */ #include...
    • Screenshot 2026-04-16 201054.png
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Sorry. Its my bug. I used my old example. Your example works fine. I'll try it in my project :) Display ST7796S FrameBuffer and Audio Test
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    I copied the files DMAChannel.* and imxrt.h into the Teensy 4 cores folder under Win11 and copied the new library ST7735_t3/tree/dev/big-screen-t4 into the Lib folder of my platformIO project. Unfortunately, I'm not getting any sound.
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Great thanks for your help. I didn't understand what I was supposed to do with the file pre-emptible DMA v2.zip :unsure:
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    The cause seems to be the `tft.useIntermediateBuffer(tft.width() * 10 * sizeof(uint16_t));` line. If I disable it, audio playback works with FrameBuffer.
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    OK. Thank you for your efforts :)
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Which line do I need to insert 'setAsyncInterruptPriority(int level)' ? /* Test with Display ST7796S FrameBuffer with DMA and Audio */ #include <Arduino.h> #include <Audio.h> #include <ST7796_t3.h> // Hardware-specific library #include <SPI.h>...
  • Rolfdegen
    Rolfdegen replied to the thread ST7796 Teensyduino support.
    Houston, we have a problem! The ST7796S frame buffer is blocking Teensy audio. If I disable the frame buffer, the audio works perfectly.
Back
Top