No need to wait a week, the new idle_b setting works fine.
The problem was caused by a combination of two bad defaults and bad smart design in firmware.
Seagate drives parking after two minutes, but also TrueNAS taking temperature readings via smart every 5 mins, so after 2 mins heads park, then 3 mins later they unpark for the smart read request, rinse and repeat for infinity.
My WD Red drives dont go out of whatever idle mode they in for smart requests unless its a smart test. So much better behavior which I am not sure why Seagate dont do the same. So any setting above 5 mins for idle_b or disabling it will solve the problem, I suggest probably something in between 15 mins and 2 hours. Although realistically 5mins is as good as disabled in TrueNAS since the readings will prevent it from ever hitting idle_b state.
The problem was caused by a combination of two bad defaults and bad smart design in firmware.
Seagate drives parking after two minutes, but also TrueNAS taking temperature readings via smart every 5 mins, so after 2 mins heads park, then 3 mins later they unpark for the smart read request, rinse and repeat for infinity.
My WD Red drives dont go out of whatever idle mode they in for smart requests unless its a smart test. So much better behavior which I am not sure why Seagate dont do the same. So any setting above 5 mins for idle_b or disabling it will solve the problem, I suggest probably something in between 15 mins and 2 hours. Although realistically 5mins is as good as disabled in TrueNAS since the readings will prevent it from ever hitting idle_b state.