Providing auxiliary services or functionality on an apparatus

An apparatus operates to provide default services or functionality. The apparatus authenticates replaceable resources by determining whether the replaceable resources originate from a desired source. The apparatus provides an auxiliary service or functionality in addition to the default services or functionality when each of the replaceable resources originates from the desired source, and precludes the auxiliary service or functionality when any of the replaceable resources do not originate from the desired source.

BACKGROUND

Numerous kinds of printers exist. For example, network-capable printers exist for connecting to external networks. Services for users may be provided on printers.

DETAILED DESCRIPTION

Examples described herein provide for a computing device can provide an auxiliary service or functionality when it is used with a replaceable resource that originates from a desired source.

Among other advantages, examples such as described enable a manufacturer or provider of an electronic device to incentivize a user to purchase or otherwise acquire replaceable resources of an electronic device from a desired source. By incentivizing users, the manufacturer or provider can exert some control or influence in order to promote replacement resources from the desired source (e.g., from the manufacturer).

One or more examples describe an apparatus comprises a memory resource, controller, and a resource utilization component to manage use of a set of replaceable resources. The controller is to perform operations to determine whether each replaceable resource in a set of replaceable resources originates from a desired source, and provide an auxiliary service or functionality on the apparatus for when the replaceable resource in the set originates from the desired source, and preclude use of the auxiliary service or functionality when the replaceable resource in the set is not determined to originate from the desired source.

Examples provide for an apparatus that operates, by default, at an operational level that excludes any service or functionality other than a default set of services or functionality. The device determines whether each replaceable resource in a set of replaceable resources originates from a desired source. The apparatus further operates to, in response to determining that each replaceable resource in the set of replaceable resources originates from the desired source, provide at least a first auxiliary resource or functionality to the apparatus so as to change the operational level of the apparatus from the default operational level to an enhanced operational level.

In examples described herein, a non-transitory computer readable medium stores instructions, that when executed by one or more processors, cause the one or more processors to perform a method including determining an authentication status for a set of replaceable resources of the computing device, the authentication status indicating whether each replaceable resource in the set of replaceable resources originates from a desired source, and determining a set of services or functionality to provide to the computing device based on the authentication status of each replaceable resource in the set of replaceable resources, the set of services or functionality being in addition to a default set of services or functionality for enabling a functional operational level on the apparatus.

In further examples, a printer includes logical and physical elements to contact an external server for authentication of a resource (e.g., an ink resource). The external server provides verification services for the resource, to support the printer in enabling or deactivating additional services or resources associated with the printer.

Implementations provide for the use of embedded components on a device to perform an authentication process which, when completed, activates auxiliary services on the device. The authentication process verifies that the origin of a consumable resource is within a set of permitted origins and securely stores a certificate confirming this verification. An external service verifies the certificate and proceeds to unlock receive, activate or otherwise provide access to the auxiliary services.

In further illustration, a set of resources are defined in association with additional content to be provided with a device. The device includes hardware and machine readable instructions (e.g., software) for connecting to resources within the set of resources, determining and verifying a source of the connected resource, and employing or inhibiting the additional content on determining the source.

In some examples, a replaceable resource includes resources which are consumed, meaning resources that are depleted over time and use. By way of example, an ink resource, such as an ink cartridge, is an example of a resource that is consumed by a printer, the ink or the cartridge being replaceable to avoid complete depletion. In other examples, a replaceable resource is a modular component, such as provided by a connected accessory input device or insertable memory resource.

In examples described herein, “auxiliary services” refer to services provided to a user which are distinct from “default services.” In examples, “default services” (also referred to as “basic services”) of a device refer to services provided with the device that are made available to fulfill a default or core functionality associated with fulfilling the intended use or primary function of the device. In examples of default services, the default services of a device are made available to a user without utilizing a process (e.g., authentication process) which controls access to the services. For example, a printer may include printing services that are made available immediately after the printer is installed. The printing services enable a user to operate the printer to print documents. In another example of how default services are provided, a multifunction printer provides default services such as fax services, copier services and printing services.

In contrast, “auxiliary services” (also referred to as “enhanced services”) for a device as described herein refer to services that are enabled (e.g., made available to a user) or precluded (e.g., made unavailable to a user). In examples of auxiliary services, an auxiliary service of a device is made available to a user by utilizing a process (e.g., authentication process) which controls access, to the services. Examples of auxiliary services provided include 1) new services on the device (e.g., printing services; gaming services; device control services), 2) network services (e.g., e-mail, messaging, Internet functions), 3) modification of existing services (e.g., modifying how a default printing function works) or 4) premium services (e.g., services which are made available after payment is rendered to another party). For example, a printer may be capable of printing a special graphical effect under a graphical printing service, but the graphical printing service is only available as a premium service (e.g., a user must pay or otherwise satisfy another condition to obtain the service). In another example, a printer may provide an e-mail service to access a user's e-mail, and the printer switches between providing the e-mail service and ceasing the e-mail service.

In examples, access to “auxiliary services” of a device is controlled under different modes. For example, a device may operate in a default mode in which only the default services are available, and an auxiliary mode in which both auxiliary services and the default services are available. In another example, a device includes features which are enabled while a certain condition is true (e.g., a particular kind of replaceable resource is connected).

Examples described herein provide that methods, techniques, and actions performed by a computing device are performed programmatically, or as a computer-implemented method. Examples may be implemented as hardware, or a combination of hardware (e.g., a processor(s)) and executable instructions (e.g., stored on a machine-readable storage medium). These instructions can be stored in one or more memory resources of the computing device. A programmatically performed step may or may not be automatic.

Examples described herein can be implemented using modules or components, which may be any combination of hardware and programming to implement the functionalities of the modules or components. In examples described herein, such combinations of hardware and programming may be implemented in a number of different ways. For example, the programming for the components may be processor executable instructions stored on at least one non-transitory machine-readable storage medium and the hardware for the components may include at least one processing resource to execute those instructions. In such examples, the at least one machine-readable storage medium may store instructions that, when executed by the at least one processing resource, implement the modules or components. In examples, a system may include the machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to system200and the processing resource.

Some examples described herein can generally involve the use of computing devices, including processing and memory resources. For example, examples described herein may be implemented, in whole or in part, on computing devices such as desktop computers, cellular or smart phones, personal digital assistants (PDAs), laptop computers, printers, digital picture frames, and tablet devices. Memory, processing, and network resources may all be used in connection with the establishment, use, or performance of any example described herein (including with the performance of any method or with the implementation of any system).

FIG. 1illustrates an example system for selectively enhancing a service or functionality provided on an electronic device. In examples ofFIG. 1, a system100includes a network enabled device, such as a printer, and network services that can selectively enhance a service or functionality provided on the device. Furthermore, a system ofFIG. 1can make a determination to enhance a service or functionality to the network-enabled device based on information determined about a source of a replaceable resource that is utilized on the device. In examples ofFIG. 1, the network enabled device is a printer (e.g., home printer), capable of receiving network services, including subscriptions for content and resources. The replaceable resource can include an ink supply of the printer. In variations, examples described herein can extend to other forms of computing devices, such as a home computer (e.g., laptop, desktop computer, etc.) in which the replaceable resource is an accessory or memory card.

Functions described in relation to the examples herein may be implemented by devices via hardware or a combination of hardware and instructions for the hardware. For example, components ofFIG. 1may be implemented via hardware which is instructed to perform functionality associated with the components utilizing instructions stored in memory.

Accordingly, a system such as illustrated as inFIG. 1can operate to selectively provide a specific service or functionality (associated with a corresponding network enabled device (e.g., printer)) in response to a determination as to an origin or source of a consumable resource (e.g., ink supply).

Examples ofFIG. 1recognizes that numerous kinds of network services may be provided for and by electronic, devices. For example, among other possible types of services, a printer may be to print documents received through a network service or communication, provide print job information on a display, convey status information about the printer to an external service, receive content subscriptions (e.g., newsletters) or resource subscriptions (e.g., ink subscription). Moreover, examples as inFIG. 1recognize that the services provided by an individual device may be implemented as part of an overall business service, such as a cloud printing service. Such kinds of devices involve resupply of resources such as ink, and examples described herein recognize that incentives, such as the availability of a desirable service or functionality for the device can promote user activity to purchase the consumable resources from a desired source or origin.

InFIG. 1, a system100includes a network enabled device101and network services170. The device101includes a controller110, a resource interface120, an authentication component140and a memory180. In some variations, the device101can also include a network interface160and an output device190(e.g., display) on which a user interface can be provided or otherwise enabled. The device101can operate in a default or basic mode using instructions for basic services182, shown as being stored in memory180. The instructions for basic services182are retrieved and executed by controller110to provide default or core functionality associated with fulfilling the intended use or primary function of the device. For example, if the device is a printer, the instructions for basic services182may include instructions for a default printing package (e.g., printing basic graphical designs), but exclude instructions for enabling advanced graphics or special effects.

In one implementation, device101is a printer provided as part of an electronic cloud printing service. The printer detects a connected resource, authenticates the resource, accesses the cloud printing service, and receives permission from the cloud printing service to provide auxiliary services to the user.

The resource interface120can include mechanical and electrical components for functionally receiving replaceable resources130, such as an ink cartridge (or set of multiple resources) or a memory card. In one implementation, the resource interface120also includes logic, such as provided through integrated circuitry, to extract a resource identifier (ID)132from the replaceable resource.

In an implementation, resource ID132is linked to or associated with an origin of the consumable resource, such as the identity of the manufacturer of the consumable resource. In another implementation the information identifies whether the ink cartridge is an Original Equipment Manufacturer (OEM) authentic cartridge.

In one implementation, the resource identifier132includes a product or manufacturing identifier, such as a serial number. The resource identifier132can be printed or otherwise provided with the replaceable resource, and the resource interface can, for example, include an optical scanner or other sensor interface to detect the identifier. In a variation, the resource identifier132can be stored as data on a storage medium of the replaceable resource130. For example, the replaceable resource can include a printed tag that embeds a serial number. Still further, the replaceable resource can include memory to store the serial or product identifier in encrypted or non-encrypted form. Examples of resource ID132include serial numbers, manufacturer numbers, codes, or non-confidential information which is associated with a product.

The controller110includes logic for controlling operation of the resource interface120. The controller110can be implemented as hardware, or hardware utilizing machine readable instructions (e.g., firmware or software). In one implementation, the controller110is implemented as a processor that communicates with and controls the resource interface120. In one implementation, the resource interface120signals a trigger122upon detecting a resource event, corresponding to when the replaceable resource130is functionally connected to the device101. The trigger122can cause the controller110to communicate with the resource interface120to obtain the resource identifier132. In examples ofFIG. 1, the replaceable resource130can be representative of a set of multiple resources, each of which can be replaced and utilized in a manner described with exampled provided herein.

The trigger122can coincide with any of (i) an out-of-box event, when the device101is first powered and made operational, (ii) a powered on event, when the device101is powered into an active or operational state from a low or off power state, and/or (iii) a replacement event, when the replaceable resource (or individual resource in set of resources) is replaced (when a consumable resource such as ink is depleted and then replaced). Still further, in some examples, the trigger122can be generated repeatedly, meaning the resource events can be programmatically generates status or health checks, or alternatively polling events. Resource interface120operates to detect and respond to trigger122.

Examples of replaceable resource130include ink supplies (e.g., ink cartridges), toner cartridges, paper, electronic storage tape, or other materials which may be consumed during the primary operation of the device. In an example in which device101is a printer and replaceable resource130is an ink cartridge, controller110may implement resource interface120in conjunction with a print head coupled to the ink cartridge. The ink cartridge includes a scannable bar code on a housing. The print head includes elements for scanning the bar code. When scanned, resource interface120obtains resource ID132.

In implementations, resource interface120may also acquire other information about the consumable resource besides resource ID132. This information may be provided to controller110for later use as part of device/resource information166.

Trigger122signals controller110to begin processes for controlling access to additional functionality or services. Resource ID132is used in these processes to determine whether the additional functionality or services are provided.

In implementations, it is possible that resource ID132erroneously identifies the replaceable resource130. In examples, access to additional functionality on a device can be rewarded to a user for using authentic replaceable resources (e.g., OEM-authentic resources). However, to bypass this restriction, inauthentic replaceable resources include forged elements (e.g., a falsified bar code). The forged elements cause resource interface120to extract a resource ID132that wrongly identifies the inauthentic resource as being authentic, and which causes the additional functionality to be wrongly provided.

An authentication component140can be provided to authenticate the replaceable resource130. The authentication component140can correspond to any programmatic element or process which operates to independently authenticate an origin of the replaceable resource130. For example, many network-enabled printers utilize an internal process or component to verify that an ink cartridge is from a particular origin. In examples ofFIG. 1, the authentication component140can operate as either an independent functional component or as an integrated process provided by the controller110. In either implementation, the authentication component140operates in a manner that is secured and tamper-proof. The authentication component140operates to authenticate the replaceable resource130by verifying the resource ID132.

In one implementation, the authentication component140operates as a stand-alone or local element. For example, the authentication component140can include a reference library of codes which can be cross-referenced to the resource ID132in order to determine authenticity. The local reference library can be managed by the authentication component140and/or updated periodically. The reference library can also be stored in secure memory resources of the device101to be accessed at a later time.

In a variation, the authentication component140operates to trigger an authentication request (e.g., as part of authentication component result142) with an authentication service144. For example, the authentication component140can independently or as part of controller110trigger the network interface160to signal a secure communication to an authentication service144(for brevity shown to be in direct communication with the authentication component140).

In one implementation, the authentication component140communicates with authentication service144to communicate data corresponding to the resource ID132for a resource130being authenticated. The communication of the resource ID132may be encrypted or otherwise secured. For example, a public/private key encryption process may be used in which the authentication component140encrypts the resource ID132using a public key that is shared with the authentication service144. In turn, the authentication service144extracts the resource ID132, and uses the code or data provided as part of the resource ID132to verify (or not verify) the replaceable resource as authentic. The authentication service144can provide a certificate152to the device101that signifies the authenticity of the replaceable resource130. When the certificate152is provided, the authentication component140can securely store the certificate152in a certificate store150, and replace or remove any prior certificates for a prior replaceable resource. The certificate store150can be implemented as a memory that is dedicated for storing various kinds of certificates, or alternatively, for certificates specifically associated with authentication service144. Security measures (e.g., encryption) may be used to protect certificate storage150from tampering. Still further, the certificate store150can be controlled or managed with embedded machine readable instructions, such as embedded software or firmware.

In a variation, the certificate152is persistently and securely stored on the device101in the certificate store150, and the authentication component140operates to enable or disable the certificate152. When the replaceable resource130is authenticated, a secure return communication155from the authentication service144causes authentication component140to enable the certificate152on device101. The presence or activation of certificate152provides indication that the replaceable resource130is authentic. If, however, the replaceable is deemed not authentic, then the device101does not receive the certificate152, or alternatively cannot activate the stored certificate152. As described below, the presence or activation of certificate152can serve as a condition for the device101to receive an auxiliary service or benefit, apart from the default (e.g., primary or core) services and functionality of the device101.

Once the replaceable resource is authenticated, controller110can be enabled or activated to receive an enhanced set of services or functionality. According to one aspect, the controller110communicates with network service170to indicate that the replaceable resource130in use is authentic. In one implementation, the controller110accesses the certificate store150and communicates the certificate152, or alternatively, data generated from the certificate to the network service170. In another implementation, the controller110communicates data that is indicative of the presence of the certificate152. Still further, the controller110may include functionality, or credentials which are unlocked or otherwise made available for use when certificate152is present. The functionality may include the ability to locate and/or access the network service170for additional auxiliary services.

In examples of the operation of authentication component140, a customer purchases and installs toner cartridges with device101. Authentication component140then contacts (e.g., pings) a cloud or web authentication service to determine if the installed toner cartridges are OEM authentic. If the installed cartridges are indeed authentic, a certificate is installed on device101stating the authenticity of the installed consumables. Furthermore, if a new consumable is later installed then device101contacts the cloud or web authentication service for authentication and renewal of the certificate. For example, a certificate for a color printer is tied to using all color toner cartridges from the original OEM. The certificate is authenticated and renewed each time a new color toner cartridge is installed.

According to an aspect, when the certificate152is present or active, the controller110can make a service request164that is proper. When the certificate is not present or active, the controller110may not be able to make the service request164. Alternatively the service request164may not be proper as the service request was not communicated with other data indicating the presence of a valid or active certificate152. The proper service request164can include an identifier for the device101.

In some variations, the request164can be provided with device or resource information166. The device or resource information166can include any information about the device or resource which the service170can utilize in providing auxiliary or enhanced services or functionality. In implementations, device/resource information166includes information about the device101(e.g., type of device, usage information about the device, such as heavy or light usage) and/or information about the resource130(e.g., when resource130was first installed).

The device interface172of service170can process the service request164, and determine information such as whether the request164is proper. In one implementation, the device interface172determines whether the certificate152communicated from the device101is valid. The device interface172can also determine the identifier103of the device101making the request.

The identifier103of the device101can be communicated to the service engine174. In one implementation, the service engine174can respond to the proper service request164by selecting a service or other functionality for the device101. The selection can be based on, for example, (i) time of request (e.g., all devices that make a proper request receive a same service in a given time period); (ii) type of device, which can be determined from the device identifier103; and/or (iii) the specific device making the request. In the latter case, the device interface references the device identifier103with an account store175in order to determine a profile of the device or the user. The profile can include, for example, information provided by the user (e.g., user can access a website for the network service170to complete a form), services that the user has previously received, or historical resource or service related information (e.g., number of times the user has used replaceable resources130from a desired source). As an addition or alternative, the service engine174can use the device information166to select or configure a service for the device101.

Examples of auxiliary services provided include 1) new services on the device (e.g., printing services; gaming services; device control services), 2) network services (e.g., e-mail, messaging, Internet functions), 3) modification of existing services (e.g., modifying how a default printing function works) or 4) premium services. The auxiliary services which are provided may include any combination of these kinds of services.

In implementations, the same auxiliary service or additional functionality may be provided in response to different conditions. For example, an auxiliary service is provided for a printer as part of a cloud printing service. The cloud printing service provides the auxiliary service as a bonus to users who use authentic, OEM-certified resources with their printer, and also provides the auxiliary service to users who pay a fee for access to the service even if they do not use authentic resources with their printer. Users who do use authentic resources are provided a certificate (e.g., a certificate150stored on the user's printer) which enables the user to access and use the auxiliary service on their printer free of charge as long as the certificate is valid.

In another implementation, a cloud printing service ties the use of the auxiliary service to a quota. For example, if the user uses the auxiliary service enough times to meet a monthly quota, the customer may receive an exemption from being charged the next month for use of the auxiliary service. However, if the customer does not meet the monthly quota, the customer is charged the next month. In further examples, a schedule can be put into place to vary a charge for the auxiliary services based on use.

According to another aspect, controller110receives logic, in the form of a code (e.g., script) as service item177. The controller110uses the logic to provide a notification to the user that the auxiliary services or additional functionality are being provided on device101. In this way, the controller110can utilize the service item177(e.g., logic) to provide, unlock or enable (e.g., through download) the services or additional functionality which is linked to the notification. The additional functionality may originate from the service170, or may leverage existing functionality present on device101. WhileFIG. 1refers to service item177in the singular for brevity, examples provide for the use of multiple service items177.

As additional or alternative examples, the service item177can include A) tokens (e.g., persistent or session-based stored items which enable additional functionality while present), B) links (e.g., a link through which controller110accesses additional functionality), or C) code or script logic for establishing a socket or other bi-directional data channel. In some examples, service item177includes programming which, when executed by controller110, establishes a bi-directional data channel between device101and service engine174on a session-by-session basis. In further examples, service item177includes a token; the token is received and stored, and the presence of the token permits controller110to execute additional functionality.

In examples of the notification, controller110executes the code or programming that is received as or with service item177to alter a user interface on UI/output190to reflect the new auxiliary services or functionality. For example, UI content192, reflecting standard or default operation of device101, and UI update194(e.g., a notification corresponding to the auxiliary services) are provided as part of UI/output190. A user may interact (user interaction196) with UI/output190, e.g., via mouse, touch-sensitive pad, text input, etc., with the new UI update194.

In implementations, UI update194includes a user notification which notifies the user about how the auxiliary services are being made available. For example, the service corresponds to a cloud printing service, and the device corresponds to a printer. The cloud printing service receives a service request from the printer which states that the printer is using an authentic ink resource from a desired source. The cloud printing service enables auxiliary services on the printer (e.g., instant printing; ink subscription). The printer then displays a notification to a user that the auxiliary services are now available due to the authentic ink resource. The user then utilizes the auxiliary services.

In examples of the notification, a pop-up icon is provided as part of UI update194notifying the user that an additional service is available for selection. In other examples new text content (e.g., header) may be provided on UI/output190to show the user that an auxiliary service has been enabled. In further examples a notification may be provided on UI/output190which includes features (e.g., a selectable hyperlink) to enable a user to perform further actions.

In additional examples of the notification, during an installation process an authentication component140operates to activate or install an authentication certificate. In response to the activation or presence of the certificate, controller110activates processes to modify a user interface layout (e.g., UI/output190). The user interface layout can be modified to have additional solutions/services for the user, and the solutions/services can be provided in addition to the default services on the computing device.

In an implementation, some or all of the additional auxiliary services to be provided on device101(or logic to provide such additional functionality or logic) are already present on the device, but such functionality remains in a locked state. The controller110can use the service item177(e.g., which can be provided as a token or link) to unlock and activate the auxiliary functionality. After receiving any certificate information (e.g., data indicative of the presence of certificate152), the service item177can provide the controller110with a token to unlock the functionality and/or a link to locally identify and access the functionality.

In another implementation, the additional auxiliary services to be provided on device101are not already present on device101. The service item177enables controller110to obtain the needed auxiliary services. For example, the service item177can include an encoded link from which the device101can access the auxiliary services.

According to one aspect, when the device101is enabled or has access to the auxiliary services or functionality, the memory can store instructions184for enabling the auxiliary service or functionality. For example, memory180can store instructions for auxiliary services184, as well as instructions182for basic or default services. The controller110executes the instructions for auxiliary services184to provide additional functionality, as described above regarding service engine174. For example, if device101is a printer, instructions for auxiliary services184may include instructions for a premium printing package (e.g., printing complex graphical designs, special effects, etc.).

In implementations, controller110operates between at least two levels of function, a basic level and an enhanced level. At the basic level controller110implements the instructions for basic services182while precluding implementation of instructions for auxiliary services184. At the enhanced level, controller110implements both the instructions for basic services182and the instructions for auxiliary services184. WhileFIG. 1illustrates the storage of instructions for auxiliary services184in memory180of device101, as described above other auxiliary services may be provided which do not involve stored instructions.

Examples provide for elements illustrated inFIG. 1to be implemented by use of hardware in conjunction with downloadable machine readable instructions. For example, elements ofFIG. 1may be implemented by hardware in conjunction with a downloadable software application (app) on a computing device. In examples, elements of device101may be implemented as an application operating on a portable computing device. In such examples authentication component140may form a secure handshake (e.g. TLS/SSL handshake) with authentication server144, confirm that communication is possible, and send info securely once the handshake occurs. Sending information securely may be part of the communication between authentication component140and authentication service144(e.g., authenticity component result142).

In examples, authentication service144may determine that the replaceable resource130is not valid. For example, replaceable resource130may not be OEM authentic; replaceable resource130may have a source which is not approved; or a subscription associated with device101may have expired. If authentication service144determines the replaceable resource130is not valid, for example, then the authentication component140is unable to replace or update the certification152. Without access to the certification152, the controller110may lack access for providing additional services and functionality, so that additional services other than the basic or default services or functionality are suppressed or otherwise precluded. Furthermore controller110prevents further reactivation of the auxiliary service or functionality. For example, component140may remove or disable a certificate (if any such certificate exists) associated with the consumable resource130.

Optionally, a notification may be provided on UI/output190that the consumable resource130is not authentic and that the auxiliary services are being suppressed/disabled, and informational content such as why the consumable resource130was not authentic. The notification may further include other content, such as a selectable link to enable a user to pay for enabling the auxiliary services, or to buy better consumable resources,

FIG. 2illustrates an example method for changing an operational level of a device.FIG. 3illustrates an example method for verifying the source of a consumable resource to enable auxiliary services.FIG. 4illustrates an example method for determining services or functionality to provide to a computing device based on an authentication status of a set of replaceable resources. An example method such as described byFIG. 2,FIG. 3orFIG. 4can be implemented using components such as described with an example system ofFIG. 1. Accordingly, reference may be made to elements ofFIG. 1for purpose of illustrating suitable elements or components for performing a step or sub-step being described.

With reference toFIG. 2, a device performs operations to determine whether a replaceable resource originates from a desired source (210). For example, the device101performs operations to determine whether each replaceable resource in a set of replaceable resources originates from a desired source. The determination can include an authentication process, such as described with an authentication component140, to determine that a replaceable resource130is authentic. The authentication process can be performed in response to a variety of events, such as, for example, the device being powered on (214), the device detecting the presence of a newly placed replaceable resource (e.g., as a replacement for an existing resource) (216), and/or a health/periodic check of the resource (218).

In an aspect, a determination is made as a result of performing the authentication process as to whether replaceable resource originates from a desired source (225). If the determination of, for example, the authentication component140is that the replaceable resource130originates from the desired source, then device provides or enables auxiliary services (230). However, if the determination is that the resource does not originate from the desired source, then the device limits the auxiliary services (240). For example, the device may preclude the auxiliary services from being implemented (242).

As an addition or alternative, the device101may require payment for the auxiliary services that were otherwise available through the use of authentic replaceable resources (244). By way of example, the user can be prompted for a single-use fee, a recurring charge, or a premium user account which a user pays for and in return receives access to the auxiliary services. In an example, the auxiliary service is provided as a bonus while an authentic resource is being used, and is also provided to users who pay a fee for access to the auxiliary service. While the user may be prompted for payment to receive the auxiliary services in lieu of using replaceable resources130from a desired source, basic services are not affected or tied to additional payment or limitations on the source of replaceable resources.

With reference toFIG. 3, an apparatus is enabled to operate, by default, to provide a core/primary function (310). In an example, the apparatus operates at a functional operational level that excludes any service or functionality other than a default set of services or functionality. For example, with reference toFIG. 1, controller110is unable to access or provide auxiliary services. In a variation, the controller110suppresses auxiliary services from being provided on the device101, while at the same time providing a core set of primary functionality.

The apparatus then performs operations to determine whether each replaceable resource in a set of replaceable resources originates from a desired source (320). For example, the authentication component140can determine when the replaceable resources are authentic and originate from a desired source.

In response to determining that each replaceable resource in the set of replaceable resources originates from the desired source (320), at least a first auxiliary resource or functionality is provided so as to change the operational level of the apparatus from the default operational level to an enhanced operational level (330). By way of reference toFIG. 1, controller110implements added functionality via service170, which changes the operational level of functionality for device101.

With reference to an example ofFIG. 4, a computing device determines an authentication status for one or more of a set of replaceable resources (410). The authentication status indicates whether any of the replaceable resources originate from a desired source (e.g., the OEM). According to one aspect, if more than one replaceable resource is used at one time, the determined authentication status can reflect the status of the group, meaning each and every replaceable resource in use would need to originate from the desired source for the status to satisfy the requirement for receiving additional services or functionality.

The device can then receive additional services or functionality based on the authentication status for the replaceable resources (420). For example, the controller110or the network service170can include logic for determining a set of auxiliary services or functionality to provide to the computing device based on the authentication status of each replaceable resource in the set. The set of services or functionality can additive to a default set of services or functionality for enabling a functional operational level on the computing device (420). For example, controller110of a device101may communicate with a service170, to receive service item177which determines auxiliary services to be provided on the device.

FIG. 5illustrates an example of a network-enabled printer. The printer500includes a memory510, processing resources520, a network resource530, a display540and an output mechanism570. The printer500also includes an ink receptacle560which receives ink cartridges562. The ink cartridges562provide an example of a replaceable resource, as the ink cartridges are consumed over time and then replaced.

The memory510can store instructions for operating the printer500. The instructions can include default instructions512, which can be executed by the processing resources520to enable default or core functionality from the printer500. The default instructions512can, for example, enable the processing resources520to initiate print operations531through the output mechanism570. Additionally, the default instructions512can generate user interface content525for the display550. In some variations, the instructions can provide, as part of the user interface content525, a notification for the display550that indicates that auxiliary services are (or are not) provided.

According to one aspect, the ink receptacle560is coupled to or provides logic for detecting insertion of ink cartridges562. When inserted, a trigger563can be signaled to the processing resources520. Depending on implementation, the ink receptacle560determines identification information563for the ink cartridge(s) that are inserted for use with the printer500. The cartridge identification information563is signaled to the processing resources520, which in turn implements the authentication logic522.

In one implementation, the authentication logic522is executed to trigger authentication with a remote service (not shown). When authenticated, the processor can execute the auxiliary retrieval instructions518to request and retrieve an auxiliary item524from a remote provider540. The request can be communicated over a network542. In response to the request, the printer500can receive an auxiliary item524. The processor can use the auxiliary item524to retrieve and/or store auxiliary instructions514. For example, the auxiliary item524can correspond to a script, a link, a token or other data item from which additional functionality and services can be determined. The processing resources520can execute the auxiliary instructions514in order to, for example, enable (i) enhanced print operations533(e.g., special effects), or (ii) print operations for special or subscribed content535. As an addition or alternative, the processing resource can modify the user interface content525to include additional features as provided by the auxiliary services.

Although illustrative examples have been described in detail herein with reference to the accompanying drawings, variations to specific examples and details are encompassed by this disclosure. It is intended that the scope of the invention is defined by the following claims and their equivalents. Furthermore, it is contemplated that a particular feature described, either individually or as part of an example, can be combined with other individually described features, or parts of other examples. Thus, absence of describing combinations should not preclude the inventor(s) from claiming rights to such combinations.