-
They have an application note about calibrating the RTC from an external clock and, or do some smooth adjustments in orders to compensate for temperature changes, which could be used from time to time when the Pico or Standard boards are awaken and thus 'correct' the LSI clock.
I have been aware of those problem by trying to log the internal temperature sensor on the sdcard during more than a few days.
While in a box outside by temperatures under 0°C all night and days, I had a shift in the clock which was terribly higher than while the box was on my desk more ar less at 20°C.
This alone made the data log time and date rather difficult to use in real conditions.I also actually missed the capability to create a directory on SDcard. That's mainly to avoid sd wear problem. I turned around this by creating the whole tree structure on a PC before starting the experiment.
Thanks - it's more a matter of looking at the external crystals themselves though (rather than the chip). I know only too well how rubbish the internal low-speed oscillator on the STM32F4 is :)
Some chips allow you to calibrate the internal RC oscillators, but it seems the STM32 doesn't. The best I can do is to change the divisor (which is usually 32768), but even that seems hard to do on the fly. I do have a branch with some code in, but I can't get it working reliably.
If 32kHz crystals aren't actually much more accurate than the 8Mhz ones, then it's not such a big deal switching over to use the 8Mhz crystal on the Pico.