Slow ranging when I add button and lcd


I have a weird situation here, right now I have been working fine with a port of the twr demo with our own pcb, I’m using stm32f401re with a dwm3000 on both tag and anchor. The thing here is that on the anchor I have an oled lcd SSD1306 connected via i2c to show distances, it works well and fast, but now I added a menu to list all tags blinking and select the one I want to connect to start twr. The curious thing is that when I add the menu, the button interrupt to select and connect to a tag, the time between each poll of the tag increases, resulting lower max distances than before, I don’t understand what’s happening.

I’ve read that if there is too many interrupts, it can slow spi speeds and get bad results, do I need a stronger processor to ensure that it won’t slows spis interface?

One more thing to add is that when i tried pdoa config (i know this uwb doesnt support it) it happens the same thing. I’ve tried to run the menu without printing on screen(blind) but still the same.

Thanks in advance for your response, any sugestions would be appreciated.

You need RTOS in your implementation and correctly set priorities to tasks/irqs.

1 Like