functional color updating from opc