1. A method for providing a company advanced programming interface aiming, via PC software installed on a customer computer, allowing an OEM customer to define its product functionality without need for company involvement in microcontroller programming, compiling, and so forth, comprising: preparing PC software by a company; installing the PC software on a customer's computer; building configurable firmware from a library; sharing a map file and template from the configurable firmware on the customer's computer; reconfigurating the configurable firmware by the customer on the computer; uploading a reconfigured configuration file to a configurable man-machine interface device having a direct and immediate feedback to the customer of its selected functionality; returning a configuration file by the customer to the company upon satisfaction of the functionality of a sample of the firmware; and on approval producing batches of man-machine interface devices with customer defined functionality.