Hi,
When the testing of the finished MCU, a final calibration of the onboard oscillator is performed.
At room temperature the ICGTRM/ICSTRM register is changed until the frequency error is minimum.
Then this value is stored in a TRIM byte high up in the Flash EPROM.
1) Yes the trimming is individual. I think it takes a couple of ms to do it.
To use the TRIM value, you must read it and write it into the xysTRM register.
The manufacturers of MCU burn equipment have fixed their programs so that the TRIM value is always saved before a mass erase command is given. And later it is restored.
Note that if you want to have an another frequency, you can set up your own calibration value somewhere else in the Flash EPROM.
If the TRIM value is 0xff, it is replaced by the default TRM value of 0x80.
2) When the MCU is later soldered on a board, with another Vdd supply, the frequnency might be slightly changed. Therefore some Flash burner manufacturers, offer an optional TRM value setting.
This is usually very simple, just click in a box in the software, and you have a fresh TRIM value.
I think it takes about 1 S to do it.
Regards,
Ake