FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [September 2015 Threads]
Hi all,
I'm using ST's CubeMX implementation on a F4 discovery board. I use ST's USB middlewares with FreeRTOS.
When I get a special OutputReport from PC side I have to answer nearly immediately (in 10-15 ms). Currently I cannot achieve this timing and it seems my high priority tasks can interrupt the USB callback. What do you think, is it possible? Because it's generated code I'm not sure but can I increase the priority of the USB interrupt (if there is any)?
Thank you,
David
10 to 15 ms is very slow, so I'm sure its possible.
Where is the USB callback function called from? If it is an interrupt then it cannot be interrupted by high priority RTOS tasks. Any non interrupt code (whether you are using an RTOS or not) can only run if no interrupts are running.
Without knowing the control flow in your application its hard to know what to suggest. How is the OutputReport communicated to you? By an interrupt, a message from another task, or some other way?
The callback which receive the data from PC is called from the OTGFSIRQHandler (it's the part of the HALPCDIRQHandler function). I think the problem is SysTickHandler's priority is higher than OTGFSIRQHandler and it's cannot be modified, but the scheduler shouldn't interrupt the OTGFSIRQHandler with any task handled by the scheduler. Am I wrong that the scheduler can interrupt the OTGFS_IRQHandler?
If you have a license key or an active subscription, the software will validate it automatically online. New users can opt to start a free trial period. Configuring Audio Settings for Best Sound
Audirvana Windows Install: A Comprehensive Guide for Audiophiles
Stable internet connection for license activation and streaming services integration. Corequisites for Audiophile Playback A dedicated external USB DAC.
Note: Roon has limited Spotify support.
Close background apps like web browsers, Discord, or Spotify before playing tracks. Buffer size is too small or CPU power saving is active.
:
Audirvāna does not provide a direct download link without an account. You must first register for a license or a 30-day free trial. How to install Audirvāna Studio/Origin?
Before starting the install, ensure your PC meets the following hardware and software benchmarks :
Click the icon located in the bottom right corner of the Audirvāna interface.
This error happens if your Windows deployment is missing package prerequisites.
: This is a standard Windows component. If missing, it can be downloaded for free from the Microsoft Store .
: Windows 10 64-bit (version 1809 or later) or Windows 11 (version 22H2 recommended).
: KERNEL STREAMING may not work with all DACs. If you experience issues, revert to WASAPI mode.
: 1GB available for the app; additional space is needed for the music database. Step-by-Step Installation Guide
Audirvāna uses the rather than a traditional .exe wizard.
Thank you for the answer, I think I'm a bit confused with the Cortex ISR priorities :-)
What I can observe is if I use a much higher osDelay in my high priority task I can respond for the received USB message much faster. This is why I think tasks can mess up with my OTG interrupt.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.