Patent Description:
<CIT> discloses an imaging device comprising a print monitoring engine configured to monitor an ink level of an ink cartridge installed in the imaging device.

It should be noted that the description and figures are merely examples of the present subject matter and are not meant to represent the subject matter itself.

Imaging devices are commonly used for obtaining printed copies of documents. Examples of the imaging devices include, but are not limited to, printing device, scanning devices, 3D printers, photocopy machines, and fax machines. The imaging devices may be used for performing one or more functions, such as printing, scanning of a document, photocopying of a document, and fax or email of a scanned document. The imaging devices include an ink cartridge as a source of ink for printing the printed copies. Once the ink in the ink cartridge is entirely consumed, i.e., a volume of the ink has depleted to zero, the existing ink cartridge is replaced with a new ink cartridge. Regular replacement of the ink cartridges may increase a running cost of the imaging device.

Further, if a user has a high usage of ink, the user may have to replace the ink cartridges quite frequently. For instance, if a user prints <NUM> pages per month and the ink cartridge has a capacity of printing around <NUM> prints on an average, then the user may have to replace the ink cartridges quite frequently, which may be tiresome and costly. Further, if an ink cartridge gets deactivated due to a software glitch, the user may assume the ink to have been consumed and buy a new ink cartridge even if the deactivated ink cartridge could have been activated, thus resulting in undue costs. Therefore, in order to optimize costs and reduce the efforts, the user may subscribe to ink cartridge replacement services. Such services may employ techniques that detect the current level of ink in the ink cartridge and automatically order replacement ink cartridges, whenever the ink level runs below a threshold value. For instance, the user may subscribe to a periodic print service where the user may be allowed to print a predetermined number of pages within a predetermined time period with a regular supply of ink cartridges at no extra cost during validity of the subscription. A service provider of the periodic print service may remotely track the usage of the imaging device and replace the ink cartridges whenever the ink in the ink cartridge goes below a threshold value.

Once the user unsubscribes from such services, the ink cartridge is deactivated and the user may be unable to use the ink cartridge in any imaging device to print documents, irrespective of the ink level of the ink cartridge. Thus, if a deactivated ink cartridge contains ink, the ink gets wasted, resulting in a wastage of resources. Further, the user may have to buy a new ink cartridge for regular work using the imaging device, even if the user may have to print few print documents.

The present subject matter discloses example implementations for ink cartridge activation in an imaging device. In one example implementation of the present subject matter, a deactivated ink cartridge may be activated based on a print capacity estimate of the ink cartridge, indicating the number of prints that may be obtained using remaining ink in the ink cartridge. In one example, the print capacity estimate of the ink cartridge may be determined based on an average print rate and a current ink level of the ink cartridge. The average print rate indicates an average minimum number of prints obtained using one percent volume of ink and may be determined based on print counts for each ink level beginning. Thus, once an ink cartridge gets deactivated, the ink cartridge may be activated based on the print capacity estimate of the ink cartridge, thus optimizing resource utilization and running costs.

In one example implementation of the present subject matter, once a new ink cartridge is installed in the imaging device, print monitoring engine may initiate monitoring an ink level of the ink cartridge and the print count for each one percent drop in the ink level. The ink level of the ink cartridge may indicate a percentage volume of ink in the ink cartridge. The print count for an ink level may indicate number of prints obtained during one percent drop in the ink level.

Further, upon occurrence of a predetermined event, say discontinuation of a subscription service or occurrence of a technical glitch, the imaging device may deactivate the ink cartridge. Once the ink cartridge is deactivated, the user, such as an operator of the imaging device or a service provider of the ink cartridges may obtain the print capacity estimate of the ink cartridge to determine if the ink cartridge may be activated. Initially, an average print rate for the ink cartridge may be determined based on the print count for each one percent drop in ink level beginning from the hundred percent ink level up to a current ink level of the ink cartridge.

In one example implementation, the average print rate may be determined using a concept of moving windows by creating a plurality of ink level subsets as moving windows across a plurality of ink levels. To determine the average print rate, an average print count for each ink level subset may be computed based on the print count for each ink level included in the ink level subset. In one example, the plurality of ink level subsets is created using overlapping moving windows of a predetermined width equal to a predetermined number of ink levels. The plurality of ink levels may be obtained beginning from the hundred percent ink level up to the current ink level in the numerically descending order. Further, each ink level subset may be created such that an initial ink level of the subset is determined by shifting forward the initial ink level of a preceding ink level subset by a predetermined value.

Subsequently, a lowest average print count from among average print counts obtained for the plurality of ink level subsets may be assigned as the average print rate for the ink cartridge. Further, the print capacity estimate of the ink cartridge may be determined based at least on the average print rate and the current ink level. On receiving the print capacity estimate, the user may determine whether or not to activate the ink cartridge, for example, based on the print capacity estimate and cost of reactivating the ink cartridge. The user may accordingly provide an activation input based on which the ink cartridge may be activated.

The present subject matter thus facilitates in identifying and activating ink cartridges with a desirable print capacity. Identifying the ink cartridge based on the print capacity estimate facilitates in activating selective ink cartridges that may have a substantial volume of ink that may be used by the user to optimize costs and resources. For instance, a user may choose not to activate ink cartridges having a low print capacity, say, <NUM> prints. However, if a user has to print <NUM> pages, then instead of buying a new ink cartridge, the user may decide to activate an ink cartridge that has a print capacity estimate of <NUM> prints and agree to pay for activating the print based on cost for <NUM> prints. The user may thus save on cost and efforts related to buying and installing a new ink cartridge. Further, by allowing a user to activate a deactivated ink cartridge, the present subject matter facilitates in optimizing resources by utilizing ink that may have otherwise been wasted.

Further, computing the print capacity estimate based on the lowest average print count helps in ensuring that the print capacity estimate is determined after considering adverse print conditions and high ink usage. The print capacity estimate may thus indicate a substantially accurate minimum number of prints that may be obtained using the ink cartridge.

The present subject matter is further described with reference to <FIG>. It should be noted that the description and figures merely illustrate principles of the present subject matter. Various arrangements may be devised that, although not explicitly described or shown herein, encompass the principles of the present subject matter. Moreover, all statements herein reciting principles, aspects, and examples of the present subject matter, as well as specific examples thereof, are intended to encompass equivalents thereof.

<FIG> illustrates an imaging device <NUM>, according to an example implementation of the present subject matter. Examples of the imaging device <NUM> include, but are not limited to, a multifunction printer, a home printer, an office printer, a 3D printer, a scanner, and a photocopy device. In one example, the imaging device <NUM> may support at least printing of a document,.

In one implementation, the imaging device <NUM> includes a print monitoring engine <NUM> to monitor an ink level of an ink cartridge <NUM> installed in the imaging device <NUM>. The ink level indicates a percentage volume of ink in the ink cartridge <NUM>. For example, <NUM>% ink level may indicate that current volume of ink in the ink cartridge <NUM> is <NUM>% of total ink capacity of the ink cartridge <NUM>.

The print monitoring engine <NUM> further is to track a print count for each ink level. In one example, the print count for each ink level may indicate number of prints printed during one percent drop in the ink level.

The imaging device <NUM> further includes a print capacity estimation engine <NUM> to determine a print capacity estimate of the ink cartridge <NUM>. In one example, the print capacity estimation engine <NUM> may determine an average print rate for the ink cartridge <NUM> based on the print count for each one percent drop in ink level. The average print rate indicating an average minimum number of prints obtained using one percent volume of ink. The print capacity estimation engine <NUM> may subsequently determine the print capacity estimate of the ink cartridge <NUM> based at least on the average print rate and a current ink level.

The imaging device <NUM> further includes an ink cartridge controlling engine <NUM> to activate and deactivate the ink cartridge <NUM>. In one example, the ink cartridge controlling engine <NUM> may deactivate the ink cartridge <NUM> upon occurrence of a predetermined event, such as termination of a subscription or a technical fault in either the imaging device <NUM> or the ink cartridge <NUM>. The ink cartridge controlling engine <NUM> may further, activate the deactivated ink cartridge <NUM> in response to an activation input from a user. In one example, the activation input may be based on the print capacity estimate.

<FIG> illustrates an imaging system <NUM>, according to an example implementation of the present subject matter. The imaging system <NUM> includes an imaging device, such as the imaging device <NUM> and a user device <NUM> communicatively coupled to the imaging device <NUM>. An example of the user device <NUM> includes, but is not limited to, desktop computers, laptops, tablets, portable computers, workstation, mainframe computer, servers, and network servers. Examples of the imaging device <NUM> include, but are not limited to, a multifunctiotion printer, a home printer, an office printer, a 3D printer, a scanner, and a photocopy device. The present approaches may also be implemented in other types of user device <NUM> and imaging device <NUM> without deviating from the scope of the present subject matter. Further, the user device <NUM> may be used to implement various functionalities of the imaging device <NUM>, for example, functionalities implemented by the print monitoring engine <NUM>, the print capacity estimation engine <NUM>, and the ink cartridge controlling engine <NUM>.

The user device <NUM> and the imaging device <NUM> may be connected with each other over a communication network <NUM>. The user device <NUM> may be used by a user, such as an operator of the imaging device <NUM>. Further, a service provider may remotely connect to the imaging device <NUM> using the communication network <NUM>. The communication network <NUM> may be a wireless network, a wired network, or a combination thereof. The communication network <NUM> can also be an individual network or a collection of many such individual networks, interconnected with each other and functioning as a single large network, e.g., the Internet or an intranet. The communication network <NUM> can be one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), and the internet. In an example, the communication network <NUM> may include any communication network that use any of the commonly used protocols, for example, Hypertext Transfer Protocol (HTTP), and Transmission Control Protocol/internet Protocol (TCP/IP).

The imaging device <NUM> includes input/output (I/O) interface(s) <NUM> and memory <NUM>. The I/O interface(s) <NUM> may include a variety of interfaces, for example, interfaces for data input and output devices, referred to as I/O devices, storage devices, network devices, and the like. The I/O interface(s) <NUM> may facilitate communication between the imaging device <NUM>, the user device <NUM>, and various other computing devices connected in a networked environment. The I/O interface(s) <NUM> may also provide a communication pathway for one or more components of the imaging device <NUM>. Examples of such components include, but are not limited to, input device, such as keyboards and a touch enabled graphical user interface.

The memory <NUM> may store one or more computer-readable instructions, which may be fetched and executed to provide print interfaces to users for providing print instructions. The memory <NUM> may include any non-transitory computer-readable medium including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like. The imaging device <NUM> further includes engine(s) <NUM> and data <NUM>.

The engine(s) <NUM> may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the engine(s) <NUM>. In examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the engine(s) <NUM> may be processor executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the engine(s) <NUM> may include a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement engine(s) <NUM>. In such examples, the imaging device <NUM> 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 the imaging device <NUM> and the processing resource. In other examples, engine(s) <NUM> may be implemented by electronic circuitry. The engine(s) <NUM> may further include circuitry and hardware for performing print and scan operations.

The data <NUM> includes data that is either stored or generated as a result of functionalities implemented by any of the engine(s) <NUM>. The engine(s) <NUM> of the imaging device <NUM> include the print monitoring engine <NUM>, the print capacity estimation engine <NUM>, the ink cartridge controlling engine <NUM>, and other engine(s) <NUM>. The other engine(s) <NUM> may implement functionalities that supplement applications or functions performed by the engine(s) <NUM>. Further, the data <NUM> may include ink level and print count data <NUM>, print capacity data <NUM>, and other data <NUM>.

As previously discussed, the imaging device <NUM> may support various functionalities, such as scanning of a document, printing of a document, photocopying of a document, 3D printing, and other similar functions. The imaging device <NUM> may include the ink cartridge <NUM> as a source of ink or other similar fluid to be used for performing the various functionalities. In one example, the imaging device <NUM> may be located in a secure home or office environment to perform the various functionalities, Further, in one example, the user of the imaging device <NUM> may subscribe to a periodic print service where the user may be allowed to take a predetermined number of prints within a predetermined time period with a regular supply of ink cartridges during validity of the subscription. in another example, the user of the imaging device <NUM> may buy ink cartridges whenever ink in the ink cartridges gets utilized.

In operation, the user may install a new ink cartridge, say, the ink cartridge <NUM> in the imaging device <NUM> to use the imaging device <NUM>. Once the ink cartridge <NUM> is installed, the print monitoring engine <NUM> may start monitoring an ink level of the ink cartridge <NUM>. The ink level, say, <NUM>% ink level of the ink cartridge <NUM> may indicate a percentage volume of ink in the ink cartridge <NUM>. For example, if the ink cartridge <NUM> has the ink level as <NUM>%, the current volume of ink in the ink cartridge <NUM> may then be equal to <NUM>% of total ink capacity of the ink cartridge <NUM>.

The print monitoring engine <NUM> may further monitor the print count for each one percent drop in the ink level. Each one percent drop in the ink level indicates one percent depletion in the volume of ink, beginning from a hundred percent ink level. Thus, a one percent drop in the ink level from <NUM>% to <NUM>% may indicate that the volume of ink is depleted by <NUM>% of the total ink capacity. In order words, change of ink level from <NUM>% to <NUM>% may indicate that <NUM>% of the total ink capacity of the ink cartridge <NUM> has been used. The print count for a current ink level may indicate a number of prints obtained while depletion of ink to the current ink level from a consecutive ink level. The current ink level of the ink cartridge <NUM> indicates a percentage volume of ink currently available in the ink cartridge <NUM>. For example, if <NUM> prints have been obtained while ink level changed from <NUM>% to <NUM>%, then the print count for <NUM>% ink level would be <NUM>.

In one example, the print count may be determined by the print monitoring engine <NUM> using one or more sensors connected to a print unit of the imaging device <NUM>. Whenever a print is obtained, for example, a page is printed by the print unit of the imaging device <NUM>, the sensor may update the print monitoring engine <NUM>. Further, to keep a track of the print count for each ink level, the sensor may use a counter or a flag that may be reset to zero each time the ink level is changed.

in one example implementation of the present subject matter, the print monitoring engine <NUM> may maintain a print counter, for example, nPrints, to keep a track of print counts for each ink level. A value of the print counter may be initially zero, when the ink cartridge <NUM> is installed and the ink level is <NUM>%. The print counter may be incremented by a value of <NUM> for each single print being taken. Thus, for "n" prints the value of the print counter may be "n". Once the ink level changes from the current ink level, say, <NUM>% to <NUM>%, the value of print counter, i.e., "n" may be attributed as the print count for the current ink level <NUM>%. Further, the print counter may be reset to zero. In one example, the print monitoring engine <NUM> may maintain a print count array of <NUM> elements to record the print count for each ink level. Each array may indicate an ink level, such that the value of each array element may indicate the print count for the ink level being represented by the array element. Further, the value of each array element may be equal to the print counter for the array element.

An example print count array is illustrated below: <MAT> where Array[m] represents the mth ink level and the value of Array[m] indicates print count for the current ink level. For example, Array[<NUM>] represents <NUM>% ink level and the value of Array[<NUM>] indicates print count for <NUM>% ink level. In one example, the mth ink level may be the current ink level of the ink cartridge <NUM>.

As previously described, when a new ink cartridge is installed the ink level will be <NUM>% and the print count will be zero. Thereafter, the print counter may be incremented by a value of <NUM> for each single print being taken. When the ink level reaches <NUM>%, Array[<NUM>] will be filled with the value of the print counter and the print counter will be reset to zero. Similarly, as the ink level reaches <NUM>%, Array[<NUM>] will be filled with the value of the print counter and the print counter will be reset to zero. The array may keep on getting updated till the ink cartridge <NUM> gets deactivated, the last array element may thus be Array[m] corresponding to current ink level of the deactivated ink cartridge.

An example print count array for a deactivated ink cartridge is illustrated below: <MAT> where [<NUM>] represents print count <NUM> for the ink level <NUM>%, [<NUM>] represents print count <NUM> for the ink level <NUM>%, [<NUM>] represents print count <NUM> for the ink level <NUM>%, [<NUM>] represents print count <NUM> for the ink level <NUM>%, [<NUM>] represents print count <NUM> for the ink level <NUM>%, and [<NUM>] represents print count <NUM> for the current ink level, say, <NUM>%.

In one example, the print monitoring engine <NUM> may save the print count array and ink level data in the ink level and print count data <NUM>. Further, in one example, the print count array and the ink level data may be monitored and saved by the user device <NUM>. The user device <NUM>, may obtain the ink level and the print counter value from the print monitoring engine <NUM> and accordingly update the print count array.

Further, upon occurrence of a predetermined event, the imaging device <NUM> may deactivate the ink cartridge <NUM>. In one example, the ink cartridge controlling engine <NUM> may monitor the occurrence of the predetermined event, such as discontinuation of a subscription service or a technical fault in either the imaging device <NUM> or the ink cartridge <NUM>. In one example, upon discontinuation of the subscription service, the ink cartridge controlling engine <NUM> may receive a deactivation instruction, for example, from the user device <NUM> or the service provider remotely connected to the imaging device <NUM> and the user device <NUM>. In response, the ink cartridge controlling engine <NUM> may deactivate the ink cartridge <NUM>. Similarly, in case of a technical fault, the ink cartridge controlling engine <NUM> may receive a deactivation instruction from the print unit or other components of the imaging device <NUM>. The ink cartridge controlling engine <NUM> may accordingly deactivate the ink cartridge <NUM>. In one example, the ink cartridge controlling engine <NUM> may deactivate the ink cartridge <NUM> by setting a flag or a variable or a flip flop in a cartridge acumen or an imaging device NVM.

Once the ink cartridge <NUM> is deactivated, the user, say, the operator of the imaging device <NUM> or a service provider may determine if the ink cartridge 106may be re-activated. In one example, the user may obtain the print capacity estimate of the ink cartridge <NUM> to determine if the ink cartridge <NUM> may be activated. The print capacity estimate of the ink cartridge <NUM> may be determined by the print capacity estimation engine <NUM> of the imaging device <NUM>, cartridge based at least on the average print rate and the current ink level.

The print capacity estimation engine <NUM> may initially determine the average print rate for the ink cartridge <NUM> based on the print count for each one percent drop in ink level beginning from a ninety-nine percent ink level up to a current ink level of the ink cartridge <NUM>. In one example, to obtain the average print rate, the print capacity estimation engine <NUM> may determine a plurality of ink levels for which individual print counts have been determined and stored in the print count array. For instance, in the above example, the current ink level is <NUM>%, therefore, the print capacity estimation engine <NUM> may determine that for print counts have been obtained for ink levels upto <NUM>%. In one example, if the current ink level is below a predefined ink level, say, ink level <NUM>, the print capacity estimation engine <NUM> may determine the print capacity of the of the ink cartridge <NUM> to be low. The user may decide not to activate the ink cartridge <NUM>.

The print capacity estimation engine <NUM> may then cluster such a plurality of ink levels into a plurality of ink level subsets beginning from the hundred percent ink level up to the current ink level. In one example, the print capacity estimation engine <NUM> may use a model of overlapping moving windows to obtain the plurality of ink level subsets. The print capacity estimation engine <NUM> may use overlapping moving windows of a predetermined width to create the plurality of ink level subsets beginning from the ninety nine percent ink level up to the current ink level such that a first ink level subset is created for a predetermined width with the hundred percent ink level as an initial ink level. Further each subsequent ink level subset is created by shifting forward the initial ink level of a preceding ink level subset by a predetermined value, say, <NUM>, <NUM>, <NUM> etc..

In one example, the predetermined width of the moving window or the ink level subset may be equal to a predetermined number of ink levels, say, <NUM>, <NUM>, <NUM>, <NUM>, depending upon level of accuracy sought. For example, if the predetermined width is chosen to be <NUM>, each ink level subset may include <NUM> ink levels. For instance, the first ink level subset may be created for ink levels <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>. A second ink level subset may be created for ink levels <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>, the predetermined value for shifting forward being <NUM>.

The print capacity estimation engine <NUM> further is to obtain an average print count for each of the plurality of ink level subsets based on a print count for each ink level included in the ink level subset. In one example, the print capacity estimation engine <NUM> may obtain an average of the print counts for each ink level included in the ink level subset to obtain the average print count for the ink level subset. An example equation for calculating average print count for an ink level subset is illustrated below in equation <NUM>: <MAT> where y is the initial ink level and the value of Array[y] indicates pprint count for the initial ink level, y-<NUM> is a subsequent initial ink level and the value of Array[y-<NUM>] indicates print count for the ink level, y-x is a last ink level of the ink level subset, placed x ink levels away from the initial ink level.

An example equation for calculating average print count for a subsequent ink level subset is illustrated below in equation <NUM>: <MAT> where "y-<NUM>" is the initial ink level obtained by shifting forward, by a value of <NUM>, the initial ink level "y" of the previous ink level subset, "y-<NUM>-x" is a last ink level of the subsequent ink level subset, placed x ink levels away from the initial ink level,.

The print capacity estimation engine <NUM> may thus obtain the average print count for each of the plurality of ink level subsets till an array having the current ink level as the last ink level reached. In one example, the print capacity estimation engine <NUM> may store the average print count for each of the plurality of ink level subsets in the print capacity data <NUM>. In one example, the print capacity estimation engine <NUM> may store the average print counts in a graphical or a tabular form. An example print count table is illustrated below, as Table <NUM>.

The Table <NUM> illustrates print counts for the ink level subsets starting from the first ink level subset to a last ink level subset for the deactivated ink cartridge <NUM>.

Further, the print capacity estimation engine <NUM> may determine a lowest average print count from among average print counts obtained for the plurality of ink level subsets and assign the lowest average print count as the average print rate for the ink cartridge <NUM>. For instance, in the above example, assuming the print count "<NUM>" to be the lowest average print count, the print capacity estimation engine <NUM> may determine the average print rate for the ink cartridge <NUM> to be equal to <NUM>.

The print capacity estimation engine <NUM> may further determine the print capacity estimate of the ink cartridge <NUM> based at least on the average print rate and the current ink level. In one example, the print capacity estimation engine <NUM> may compute a product of the average print rate and the current ink level to obtain an estimate of number of prints to be printed using the ink cartridge <NUM>. The estimate of number of prints may then be assigned as the print capacity estimate. For instance, in the current example described above, the print capacity estimation engine <NUM> may multiply the average print rate "<NUM>" with the current ink level "<NUM>%" to obtain the print capacity estimate as <NUM> prints.

The ink cartridge controlling engine <NUM> may subsequently render the print capacity estimate to the user of the imaging device <NUM>. The user, on receiving the print capacity estimate, may make a decision regarding re-activation of the ink cartridge <NUM>. For instance, on determining the print capacity estimate to be useful for meeting print job requirement of the user, the user may decide to get the ink cartridge activated. In one example, the user may get the ink cartridge activated by reactivating the subscription service. In another example, the user may get the ink cartridge activated by getting technical fault diagnosed and corrected. The user may then send an activation input to the ink cartridge controlling engine <NUM> for activating the deactivated ink cartridge <NUM>. The activation input may indicate completion of an activation event by the user, such as payment of subscription service fee or repair of the ink cartridge <NUM> or the imaging device <NUM>. In one example, the subscription service fee may be computed based on the print capacity estimate and an average print fee. For example, if the average print fee, i.e., average cost of a single print is $ <NUM>, the subscription service fee in the previous example, for <NUM> prints may be $ <NUM>.

On receiving the activation input from the user, the ink cartridge controlling engine <NUM> may activate the ink cartridge <NUM>. In one example, the ink cartridge controlling engine <NUM> may activate the ink cartridge <NUM> by resetting a flag of a variable or a flip flop in a cartridge acumen or an imaging device NVM.

<FIG> and <FIG> illustrate example methods <NUM> and <NUM>, respectively, for activating an ink cartridge. The order in which the methods are described is not intended to be construed as a limitation, and any number of the described method blocks may be combined in any order to implement the methods, or an alternative method. Furthermore, methods <NUM> and <NUM> may be implemented by processing resource or computing device(s) through any suitable hardware, non-transitory machine readable instructions, or combination thereof.

It may also be understood that methods <NUM> and <NUM> may be performed by programmed computing devices, such as the user device <NUM> and the imaging device <NUM>, as depicted in <FIG>. Furthermore, the methods <NUM> and <NUM> may be executed based on instructions stored in a non-transitory computer readable medium, as will be readily understood. The non-transitory computer readable medium may include, for example, digital memories, magnetic storage media, such as one or more magnetic disks and magnetic tapes, hard drives, or optically readable digital data storage media. The methods <NUM> and <NUM> are described below with reference to the user device <NUM> and the imaging device <NUM> as described above; other suitable systems for the execution of these methods may also be utilized. Additionally, implementation of these methods is not limited to such examples.

<FIG> illustrates the method <NUM> for activating an ink cartridge, according to an example implementation of the present subject matter. At block <NUM>, an ink cartridge installed in an imaging device is deactivated. In one example, the ink cartridge is deactivated by the imaging device upon occurrence of a predetermined event, such as discontinuation of a subscription service or occurrence of a technical fault.

At block <NUM>, a current ink level of the ink cartridge is determined. In one example, the current ink level of the ink cartridge indicates a percentage volume of ink currently available in the ink cartridge.

At block <NUM>, a print count is obtained for each ink level of the ink cartridge. In one example, the print count for an ink level indicates number of prints printed during one percent drop in the ink to the ink level from a consecutive ink level. Each one percent drop in the ink level indicating one percent depletion in the volume of ink, beginning from a hundred percent ink level.

At block <NUM>, an average print rate for the ink cartridge is determined. In one example, the average print rate is determined based on the print count for each one percent drop in ink level beginning from the hundred percent ink level up to a current ink level of the ink cartridge. The average print rate indicating an average minimum number of prints obtained using one percent volume of ink.

At block <NUM>, a print capacity estimate of the ink cartridge is determined. In one example, the print capacity estimate is determined based at least on the average print rate and the current ink level.

At block <NUM>, the deactivated ink cartridge is activated. In one example, the ink cartridge is activated in response to an activation input received from a user. In one example, the activation input is based on the print capacity estimate.

<FIG> illustrates a method for activating an ink cartridge, according to an example implementation of the present subject matter. At block <NUM>, a current ink level is determined for an ink cartridge installed in an imaging device, such as the imaging device <NUM>. In one example, the current ink level is determined after ink cartridge has been deactivated upon occurrence of a predetermined event, such as discontinuation of a subscription service or occurrence of a technical fault. Further, the current ink level of the ink cartridge indicates a percentage volume of ink currently available in the ink cartridge.

At block <NUM>, a print count for each ink level is obtained. In one example, the print count for an ink level indicates number of prints printed during one percent drop in the ink to the ink level from a consecutive ink level. Further, each one percent drop in the ink level indicates one percent depletion in the volume of ink, beginning from a hundred percent ink level.

At block <NUM>, an average print count is obtained for each of a plurality of ink level subsets. In one example, average print count is obtained based on a print count for each ink level included in the ink level subset. In one example, the plurality of ink level subsets is obtained from a plurality of ink levels, beginning from a ninety-nine percent ink level up to the current ink level, using overlapping moving windows of a predetermined width equal to a predetermined number of ink levels. For instance, a first ink level subset is created with the ninety-nine percent ink level as an initial ink level and each subsequent ink level subset is created by shifting forward the initial ink level of a preceding ink level subset by a predetermined value.

At block <NUM>, an average print rate is determined for the ink cartridge. The average print rate is determined based on the average print counts for the plurality of ink level subsets. In one example, a lowest average print count is determined from among average print counts obtained for the plurality of ink level subsets. Further, the lowest average print count is assigned as the average print rate for the ink cartridge.

At block <NUM>, a print capacity estimate of the ink cartridge is determined based at least on the average print rate and the current ink level. In one example, a product of the average print rate and the current ink level is computed to obtain an estimate of number of prints to be printed using the ink cartridge. The estimate of number of prints is used as the print capacity estimate of the ink cartridge.

At block <NUM>, the deactivated ink cartridge is then activated in response to an activation input received from a user. In one example, the user may decide to provide the activation input based on the print capacity estimate.

<FIG> illustrates an example network environment <NUM> using a non-transitory computer readable medium <NUM> for activating an ink cartridge, according to an example implementation of the present subject matter. The network environment <NUM> may be a public networking environment or a private networking environment. In one example, the network environment <NUM> includes a processing resource <NUM> communicatively coupled to the non-transitory computer readable medium <NUM> through a communication link <NUM>.

For example, the processing resource <NUM> can be a processor of an electronic device, such as the imaging device <NUM> or the user device <NUM>. The non-transitory computer readable medium <NUM> can be, for example, an internal memory device or an external memory device. In one example, the communication link <NUM> may be a direct communication link, such as one formed through a memory read/write interface. In another example, the communication link <NUM> may be an indirect communication link, such as one formed through a network interface. In such a case, the processing resource <NUM> can access the non-transitory computer readable medium <NUM> through a network <NUM>. The network <NUM> may be a single network or a combination of multiple networks and may use a variety of communication protocols.

The processing resource <NUM> and the non-transitory computer readable medium <NUM> may also be communicatively coupled to data sources <NUM> over the network <NUM>. The data sources <NUM> can include, for example, databases and computing devices. The data sources <NUM> may be used by the database administrators and other users to communicate with the processing resource <NUM>.

In one example, the non-transitory computer readable medium <NUM> includes a set of computer readable instructions, such as an print monitoring engine <NUM>, a print capacity estimation engine <NUM>, an ink cartridge controlling engine <NUM>. As would be understood, the print monitoring engine <NUM> implements the functionality of the print monitoring engine <NUM>, the print capacity estimation engine <NUM> implements the functionality of the print capacity estimation engine <NUM>, and the ink cartridge controlling engine <NUM> implements the functionality of the ink cartridge controlling engine <NUM><NUM>. The set of computer readable instructions, referred to as instructions hereinafter, can be accessed by the processing resource <NUM> through the communication link <NUM> and subsequently executed to perform acts for facilitating facsimile communication.

For discussion purposes, the execution of the instructions by the processing resource <NUM> has been described with reference to various components introduced earlier with reference to the description of <FIG>.

On execution by the processing resource <NUM>, the print monitoring engine <NUM>, may monitor an ink level of an ink cartridge installed in an imaging device, such as the imaging device <NUM>. The ink level of the ink cartridge indicates a percentage volume of ink in the ink cartridge, such that each one percent drop in the ink level indicates one percent depletion in the volume of ink, beginning from a hundred percent ink level.

The print monitoring engine <NUM> may further track a print count for each ink level. In one example, the print count for a current ink level indicates number of prints printed during one percent drop in the ink to the current ink level from a consecutive ink level. The current ink level of the ink cartridge indicates a percentage volume of ink currently available in the ink cartridge.

Further, upon occurrence of a predetermined event, the ink cartridge controlling engine <NUM> may deactivate the ink cartridge. In one example, the predetermined event may include discontinuation of a subscription service or occurrence of a technical fault. Subsequently, the print capacity estimation engine <NUM> may determine an average print rate for the ink cartridge based on the print count for each one percent drop in ink level beginning from the hundred percent ink level up to a current ink level of the ink cartridge. The average print rate indicating an average minimum number of prints obtained using one percent volume of ink.

The print capacity estimation engine <NUM> may further determine a print capacity estimate of the ink cartridge based at least on the average print rate and the current ink level. The print capacity estimation engine <NUM> may further render the print capacity estimate to a user of the imaging device. The user may accordingly use the print capacity estimate to ascertain whether or not to activate the deactivated ink cartridge in response. To activate the deactivated ink cartridge, the user may share an activation input with the ink cartridge controlling engine <NUM>. The ink cartridge controlling engine <NUM> may accordingly activate the deactivated ink cartridge in response to the activation input from the user.

Claim 1:
An imaging device (<NUM>) comprising:
a print monitoring engine (<NUM>, <NUM>) to:
monitor an ink level of an ink cartridge (<NUM>) installed in the imaging device (<NUM>); and
track a print count for each ink level, wherein the print count for each ink level indicates a number of prints printed during one percent drop in the ink level;
a print capacity estimation engine (<NUM>, <NUM>) to:
determine an average print rate for the ink cartridge (<NUM>) based on the print count for each one percent drop in ink level; and
determine a print capacity estimate of the ink cartridge (<NUM>) based at least on the average print rate and a current ink level; and an ink cartridge controlling engine (<NUM>, <NUM>) to.
deactivate the ink cartridge (<NUM>) upon occurrence of a predetermined event; and
activate the deactivated ink cartridge (<NUM>) in response to an activation input from a user, wherein the activation input is based on the print capacity estimate.