************************************************************************************************************ Hi Ferdinand, I believe the newer DLLs handle multiple listeners on RTT properly. Before they just sent to whomever started listening, but they sent ALL the data, not just the buffer index that it wanted. So now it splits up the data to the two different applications as it should, but CrossStudio appearantly can't disable the listening, so index 0 becomes unusable for anyone else. Not very well handled by CrossStudio. I have no idea why CrossStudio shuts down when Tracealyzer is closed. It really shouldn't. Maybe they handle J-Link shutdown, and when we shut down our instance of it, they think it means they should shut down theirs as well... I don't know. You might wanna try take it up with the developers of CrossStudio. No other IDE has this issue, so it shouldn't be impossible to fix. Best regards Erik ************************************************************************************************************ Hi Eric, when I turn off the IDE, also buffer index 0 is working. I did not find a way, how to disable the debug terminal in CrossStudio, but with reducing the buffer sizes for index 0 and use the recorder on index 1, I would say we have a workaround. I am only wondering, why this was no problem with older versions of the Segger-DLL/Segger- Firmware. But it is still annoying that closing the Tracealyzer shuts down the CrossStudio. Regards, Ferdinand ************************************************************************************************************ Hi Ferdinand, Ah ok, so CrossStudio intercepts the RTT data before we get a chance to read it. Is there no way to disable this feature in CrossStudio? If you turn off the IDE, can you get the RTT data from buffer index 0 then? - If you don't need to use the terminal on index 0 for something else, but you can't get rid of CrossStudio interfering with it (meaning the trace recorder can't use it), modify the buffers in "SEGGER_RTT.c" like this: static char _acUpBuffer[1]; static char _acDownBuffer[1]; That will ensure it takes minimum RAM for the unused index 0. Then you can set the trace recorder to use index 1 instead. If you have a decent debugger you can get away with <1kb RTT RAM buffer. Just make sure to increase the MHz setting in the application (File->Settings->J-Link Speed). I achieved 600kb/s with a 512 byte buffer on my J-Link Ultra+ running at 48MHz. Best regards Erik ************************************************************************************************************ Hi Erik, today I set up a new project and implemented the trace functionality. With the default config the trace data were send to the debug terminal of the IDE. By setting the TRC_RTT_UP_BUFFER_INDEX to 1 I could fix the problem. But this also doubles the RAM needed for the RTT_Buffer. It’s no problem on this small project, but normally I do not have much RAM left for the Buffer. When I do following steps CrossStudio shuts down in case of an error condition (did not happen before) 1.) Start Debugsession in CrossStudio (CPU is halted) 2.) Start Tracealyzer and connect to the target 3.) Start CPU 4.) Start Recording (Tracing works) 5.) Stop Recording and ViewData 6.) Close Recording window 7.) Close Tracealyzer -> in this moment also CrossStudio shuts down Regards, Ferdinand ************************************************************************************************************ Hi Ferdinand, I will check if I can reproduce this issue with the latest J-Link drivers. Have you tried any previous version? Best regards Erik ************************************************************************************************************ Hi, we recently bought a Tracealyzer license and a J-Link Ultra+. Before that I have tested with a J-Link Base and had no problems with Starting/Stopping the trace and recording data. The only problem was a small buffer size and the limited speed of the J-Link Base. Now with using the J-Link Ultra+ and the latest firmware and DLL from Segger, recording the data is not possible. It seems the data get streamed to the Debug Terminal of my IDE. Changing back to the J-Link Base with the latest firmware and DLL from Segger does not work. When the IDE is not running, it’s also not possible to record data. Do you have an idea, where the problem could be? I am using CrossStudio for ARM 3.5 with J-Link Ultra+ or J-Link Base. Latest firmware and DLL from Segger. My target CPU is an STM32L051C8. I have also attached the ConfigFiles for the Library. Kind Regards, -- Percepio AB - www.percepio.com Köpmangatan 1A 72215 Västerås Sweden