Patent ID: 8786871

Claim:
A printer comprising: a user interface configured to receive an input from a user for upgrading the printer; a memory configured to store at least one upgrade indicator, a first software component and a second software component; a communication interface configured to send information to a server based on the input from the user, and receive verification from the server based on the information sent to the server; a controller in communication with the user interface, the memory and the communication interface, the controller configured to: control an operation at a first level of performance according to an execution of the first software component, wherein at the first level of performance, the first software component is executable by the controller to modify image data received by the printer before the input is received from the user, and the second software component is non-executable such that the second software component cannot be executed by the controller to modify any image data received by the printer before the input is received from the user; in response to receiving the verification from the server, change a state of the at least one upgrade indicator in order to transition from the first level of performance to a second level of performance, the second level of performance enabling the previously non-executable second software component to be executable such that the second software component is enabled to cause the controller to modify image data received by the printer; execute the second software component, and in response to the execution of the second software component, modify image data received by the printer at the second level of performance.