vik369 I was probably the inventor of preheat in terms of installing that tech onto dual boiler machines correctly, as well as the 800 ml boiler standard (for many years) and over the years many machines followed the Duetto formula.
Gicar over the years have made many changes to their PIDs and what you normally see now is just a display with the PID logic within the mainboard of the machine. Each manufacturer can have slightly customised versions. The core PID algorithm (I believe), maintains a certain level of PIDness, regardless of how you set the “modifiers” P, I, D. e.g, if you don’t have all settings as zero it still behaves as if there is some background level of PIDness.
I also came up with the B parameter when working with QM and it should be the range over which is DOES NOT act as a PID and outside this range the heating element is full on or full off. So for a steam boiler with a B of 1, the PID only operates when more than 1C outside the set point. For the Brew boiler B5 means it operates as a PID only when 5 degrees or less from the set point. You balance B values with the PID set points for the brew boiler to get a balance between overshoot and recovery time to best suit the home environment.
All this is because PIDs are really meant to maintain a steady state and not used in systems which regularily have large changes e.g. Pulling 3 shots back to back.
12C might be fine for the ECM, but if you find recovery two slow, you can try reducing it a bit at a time. Oh and if you DM me for personal 1-2-1 advice I will always tell you to put it on this forum, so other people can benefit from it.
NOTE: Gicar have fecked things up many times over the decades, with some values being decimal 10 (so 10x smaller than people thought, incorrect F to CX conversions etc.. etc..