You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While working on my modification of Sound Engine I got an issue that while reading some I2C sensors software crashed. After a small investigation, I found that the I2C driver fails in using semaphore. I found such note in the documentation: "Mutex type semaphores cannot be used from within interrupt service routines."
After removing semaphore usage in the interruption handler function everything is working fine.
if ( xSemaphoreTake( xPwmSemaphore, portMAX_DELAY ) )
Replace xSemaphoreCreateMutex with xSemaphoreCreateBinary is not making any change - software is still crashing.
This can lead to other unexpected issues, so I suggest changing the way how channels data is synchronized. I didn't figure out it yet by myself. If I find a way I'll create PR.
Best Regards!
Gregor
The text was updated successfully, but these errors were encountered:
Hello,
when integrating the I2C DAC MCP4728 to control a power servo I also get constant RESETS.
The initialization works fine, but I get resets when outputting the speed.
Can you tell me exactly what you have changed so that it works?
Hi.
While working on my modification of Sound Engine I got an issue that while reading some I2C sensors software crashed. After a small investigation, I found that the I2C driver fails in using semaphore. I found such note in the documentation: "Mutex type semaphores cannot be used from within interrupt service routines."
After removing semaphore usage in the interruption handler function everything is working fine.
Rc_Engine_Sound_ESP32/src/src.ino
Line 1070 in 4f940f0
Replace xSemaphoreCreateMutex with xSemaphoreCreateBinary is not making any change - software is still crashing.
This can lead to other unexpected issues, so I suggest changing the way how channels data is synchronized. I didn't figure out it yet by myself. If I find a way I'll create PR.
Best Regards!
Gregor
The text was updated successfully, but these errors were encountered: