I'm afraid tracking down the FIFO error could be tricky. Basically on STM32 the stuff that puts stuff in the FIFO is:
USB Serial
Normal Serial ports
setWatch
And really that's about it. I guess the obvious thing is how much data is AzzyRF sending your board?
To do some debug, you could try clearing the flags with E.getErrorFlags and then check them again after any long-running functions you have - you might be able to find a function that runs so long that it's causing the overflow.
Or... it could be that you have code that is sending a lot of characters on serial? If so, that could be blocking the function that's sending and then causing you issues?
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
I'm afraid tracking down the FIFO error could be tricky. Basically on STM32 the stuff that puts stuff in the FIFO is:
And really that's about it. I guess the obvious thing is how much data is AzzyRF sending your board?
To do some debug, you could try clearing the flags with
E.getErrorFlags
and then check them again after any long-running functions you have - you might be able to find a function that runs so long that it's causing the overflow.Or... it could be that you have code that is sending a lot of characters on serial? If so, that could be blocking the function that's sending and then causing you issues?
But yeah, you can increase the buffer size up to 256 (which uses 1.2k-ish of RAM) here: https://github.com/espruino/Espruino/blob/master/scripts/build_platform_config.py#L322
That might help? Although if your code is spending all its time busy I guess you might still end up hitting issues.