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
Using a modified firmware with just that value set to 76000 instead of 56000 makes the flipper no longer crash, but still freezes before any command is sent when a button is pressed in the IR app.
expected behaviour: IR remote app sends the signal when button is pressed then stops when the button is depressed
actual behaviour: flipper crashes with a furi_check failed message on bootup when button is pressed,
OR
if using a modified version of furi_hal_infrared.h with line 16 set to 76000, flipper freezes and needs to be restarted
Target
Infrared
Logs
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered:
After a bit of talk on the discord infrared channel (see from here ), this appears to be a hardware issue cause by how the signal is generated, specifically by using 2 hardware timers and Direct Memory Access (see furi_hal_infrared_configure_tim_pwm_tx and everything surounding INFRARED_DMA_TIMER)
System limitation comes from how infrared uses timers and DMA channels: long story short 1MHz carrier will generate 1M DMA transaction, which is close to what Flipper MCU designed to handle.
Interesting thing: previous max value was chosen based on infrared app performance when it was in MCU flash memory. After we moved apps to SD this limit is no longer actual.
I've bumped limit to ~1MHz, but there is no guarantee that it will always behave as expected(it may fail under specific type of load).
Awesome! Thanks for taking care of this so quickly!
Very interesting to know that moving things to the SD card pushed back the limitations a bit, makes you wonder what else could get a boost in performance out of that change!
Describe the bug.
infrared remote crashes the device when frequency is set to 76000, regardless of the signal output path chosen (flipper, A7)
line 16 of furi hal interface specifies a max frequency of 56KHz.
Using a modified firmware with just that value set to 76000 instead of 56000 makes the flipper no longer crash, but still freezes before any command is sent when a button is pressed in the IR app.
Reproduction
example code to run:
expected behaviour: IR remote app sends the signal when button is pressed then stops when the button is depressed
actual behaviour: flipper crashes with a furi_check failed message on bootup when button is pressed,
OR
if using a modified version of furi_hal_infrared.h with line 16 set to 76000, flipper freezes and needs to be restarted
Target
Infrared
Logs
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: