The system was designed to be very flexible by allowing installation of multiple processing modules that can perform a variety of tasks. The central handling robot arm is configurable and can handle multiple consumable types depending on the workflow. Processing modules include formulation, analysis, dispensing and agitation. Individual workflows are performed on each substrate which can then be analysed using image analysis to determine the best locations to perform measurements such as gloss and spectrophotometry. The substrate agitation module allows full control over a variety of parameters including pressure, stroke lengths, agitation pattern, frequency and duration depending on the workflow, formulation and substrate type.