Skip to main content
LHarm.1
Associate III
Aug 19, 2021 12:02 AM UTC
Solved

HW_TS timing is different when appe_Tl_Init(); is called

I have written an app using the sequencer and time server. My app selectively runs or doesn't run the BLE stack by calling or not appe_Tl_Init();

I use HW_TS to generate delays. When I don't run the appe_Tl_Init function my timing is correct. when I do run the function the timing is 4 times too fast. How does appe_Tl_Init() affect this timing?

This topic has been closed for replies.
Remi QUINTIN
Remi QUINTINBest answer
ST Technical Moderator
Aug 19, 2021 3:35 PM UTC

appe_Tl_Init should not affect the timers. This function is initializing the IPCC system before releasing the CPU2 for booting.

Now CPU2 is indeed setting its own parameters/dividers for the RTC. The RTC is the time base for the timers used to pace the BLE communication accurately.

So some settings may disturb your time base when CPU2 is activated.

You could try with another application like the p2pServer project to check whether you face the same issue.

2 replies

Remi QUINTIN
Remi QUINTINBest answer
ST Technical Moderator
Aug 19, 2021 3:35 PM UTC

appe_Tl_Init should not affect the timers. This function is initializing the IPCC system before releasing the CPU2 for booting.

Now CPU2 is indeed setting its own parameters/dividers for the RTC. The RTC is the time base for the timers used to pace the BLE communication accurately.

So some settings may disturb your time base when CPU2 is activated.

You could try with another application like the p2pServer project to check whether you face the same issue.

LHarm.1
LHarm.1Author
Associate III
Aug 19, 2021 7:55 PM UTC

Thanks. I have fixed (hopefully) the problem. I had several timers defined, but only Created some of them. The I removed the unused timers the problem went away.