This invention relates generally to controlling the print density in printers.
Mono-laser printers may contain device parameters, commonly called operating points, that control the density or darkness of the print on a page. The density control parameters may be defined for each engine speed and also for special media types.
The operating points may be stored in tables in print engine firmware. The table values in the engine firmware are determined during the printer development cycle. A cartridge and printer pair determined to have nominal components is used to determine the values to be stored in the engine firmware tables.
A density control operating point table may have sixty rows that determine the laser power, duty cycle, and developer bias voltage. The density control operating point selected by the printer depends on the print engine speed, print resolution, user-selected darkness, media type, and other factors.
Changing the print engine's density control table is impractical after the start of printer production because of the large number of printers in customer' hands that would need to receive the revised firmware. Thus, print engine density control tables are modified through the use of adders that are stored in cartridge memory devices. The adders, stored in the cartridge memory devices, modify the index of the current density operating point table that is currently selected.
The resolution of available adjustment with an adder is limited. A four-bit value may used to encode an adder that has only 16 possible values. The adder is typically applied to more than one operating point table with the possibility of unintended effects.
Thus, there is a need for better ways to enable modification of density control tables.
Referring to
The toner cartridge 14 may include an interface 16 to facilitate communication between a cartridge controller 18 and the host 12. The controller 18 also communicates with an on-board memory device 20. The memory device 20 may be any conventional memory, but a non-volatile memory, such as a flash memory, may be advantageous in some cases. The memory device 20 may store density control operating points 22 that enables updating of the printer density control table stored in the host 12.
Thus, in accordance with some embodiments of the present invention, when the toner cartridge 14 is replaced because the toner has been consumed, an updated printer density control table may be supplied with the toner cartridge 14. All that needs to be done is for the host 12, in this case the laser printer with the cartridge, to read out the data from the memory device 20 and to store it on board within the host 12. The host 12 may then implement the new printer density control table.
This solves the problem of how to update the printer density control table after production has begun when a large base of installed printers already exists and updating each one manually would be impractical. In this way, as cartridges of toner are consumed, the update of the printer density control table is provided with the replacement toner cartridge. In some cases, the printer density control table is not in need of updating, and in such case, cartridges may be distributed without the memory or with a memory which implements other functions.
Conventionally, the density control operating point data structure may include four fields. In one embodiment, the four fields are implemented through twenty-four bits or three bytes. Bits 0-7 may provide the developer bias voltage, bits 8-15 may provide the laser power, bits 16-22 give the laser duty index, and the parity bit may be bit 23 in one embodiment of the present invention. The most significant bit may be the parity bit used to check the integrity of the memory cells that store the data structure. The laser duty index is an index into a table to be included in the engine firmware that holds the available laser duty cycles. However, the illustration of the three fields and their uses may change over time and other data structures may be used as well.
Once installed within the host 12, the toner cartridge memory device 20 may be read out. The cartridge memory device 20 responds to a Read Data command from the host by extracting the first requested memory location from the message packet. The memory at the current address is then read. For reading density control operating points, a parity flag is set in the data packet. The cartridge memory device 20 performs a parity check on the three bytes of data making up the data structure. If the data at the current memory location fails the parity check, an error code may replace the three bytes of data in the response from the memory device 20 to the host 12. If the data structure passes the integrity check, the three bytes will be placed in a response data packet. The packet to be sent to the host or print engine in response to the read data command with parity may contain 180 data bytes in one example, made up of 60 data structures, each of three bytes.
Referring to
A check of diamond 36 determines whether the calculated parity and bit 23 match. If not, the data is set to an error code as indicated in block 38. If the calculated parity and the bit 23 match as determined in diamond 36, or if the parity flag is not set, the data is added to a response packet at block 40. Then the address pointer is set to the next address in block 42. Once the last entry is reached, as determined in diamond 44, a response packet is transmitted as indicated in block 46.
Thus, referring to
In response to the read data command in the format on the left side of
Thus, a programming host device writes the data density control operating point to the cartridge memory device at the time of cartridge manufacture. The programming host and the reading hosts are different devices. The programming host device is responsible for calculating the appropriate parity value for bit 23 before writing to the device. Thus, referring to
The memory device 20 response to the write command may include a device address 50, a command length 52, a write command 64, and a write success or failure indicator 66 in some embodiments.
In this way, the cartridge 14 may be programmed at the factory and, when received and mounted appropriately as a replacement cartridge within a printer, the printer can read out the memory device obtaining the new printer density control tables. Because of the imposition of parity, the transfer of data may be implemented in a secure, error free fashion in some embodiments.
References throughout this specification to “one embodiment” or “an embodiment” mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one implementation encompassed within the present invention. Thus, appearances of the phrase “one embodiment” or “in an embodiment” are not necessarily referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be instituted in other suitable forms other than the particular embodiment illustrated and all such forms may be encompassed within the claims of the present application.
While the present invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of this present invention.