This application is a U.S. National Stage Application of PCT Application No. PCT/US2019/064213, filed Dec. 3, 2019, entitled “LOGIC CIRCUITRY PACKAGE,” which claims priority to PCT Application No. PCT/US2019/026133, filed Apr. 5, 2019, entitled “LOGIC CIRCUITRY”; PCT Application No. PCT/US2019/026152, filed Apr. 5, 2019, entitled “FLUID PROPERTY SENSOR”; PCT Application No. PCT/US2019/026161, filed Apr. 5, 2019, entitled “LOGIC CIRCUITRY”; and PCT Application No. PCT/US2018/063631, filed Dec. 3, 2018, entitled “LOGIC CIRCUITRY”; all of which are incorporated herein by reference.
Subcomponents of apparatus may communicate with one another in a number of ways. For example, Serial Peripheral Interface (SPI) protocol, Bluetooth Low Energy (BLE), Near Field Communications (NFC) or other types of digital or analog communications may be used.
Some two-dimensional (2D) and three-dimensional (3D) printing systems include one or more replaceable print apparatus components, such as print material containers (e.g., inkjet cartridges, toner cartridges, ink supplies, 3D printing agent supplies, build material supplies etc.), inkjet printhead assemblies, and the like. In some examples, logic circuitry associated with the replaceable print apparatus component(s) communicate with logic circuitry of the print apparatus in which they are installed, for example communicating information such as their identity, capabilities, status and the like. In further examples, print material containers may include circuitry to execute one or more monitoring functions such as print material level sensing.
In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific examples in which the disclosure may be practiced. It is to be understood that other examples may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present disclosure is defined by the appended claims. It is to be understood that features of the various examples described herein may be combined, in part or whole, with each other, unless specifically noted otherwise.
Some examples of applications described herein are in the context of print apparatus. Not all the examples, however, are limited to such applications, and at least some of the principles set out herein may be used in other contexts. The contents of other applications and patents cited in this disclosure are incorporated by reference.
In certain examples, Inter-integrated Circuit (I2C, or I2C, which notation is adopted herein) protocol allows at least one ‘master’ integrated circuit (IC) to communicate with at least one ‘slave’ IC, for example via a bus. I2C, and other communications protocols, communicate data according to a clock period. For example, a voltage signal may be generated, where the value of the voltage is associated with data. For example, a voltage value above X volts may indicate a logic “1” whereas a voltage value below X volts may indicate a logic “0”, where X is a predetermined numerical value. By generating an appropriate voltage in each of a series of clock periods, data can be communicated via a bus or another communication link.
Certain example print material containers have slave logic that utilize I2C communications, although in other examples, other forms of digital or analog communications could also be used. In the example of I2C communication, a master IC may generally be provided as part of the print apparatus (which may be referred to as the ‘host’) and a replaceable print apparatus component would comprise a ‘slave’ IC, although this need not be the case in all examples. There may be a plurality of slave ICs connected to an I2C communication link or bus (for example, containers of different colors of print agent). The slave IC(s) may include a processor to perform data operations before responding to requests from logic circuitry of the print system.
Communications between print apparatus and replaceable print apparatus components installed in the apparatus (and/or the respective logic circuitry thereof) may facilitate various functions. Logic circuitry within a print apparatus may receive information from logic circuitry associated with a replaceable print apparatus component via a communications interface, and/or may send commands to the replaceable print apparatus component logic circuitry, which may include commands to write data to a memory associated therewith, or to read data therefrom.
For example, logic circuitry associated with a replaceable print apparatus component may include a print material (e.g., fluid) level sensor arranged inside a reservoir of the replaceable print apparatus component. The print material level sensor may include a plurality of heater cells and corresponding temperature sensor cells. The print material level may be determined by transmitting first requests to the logic circuitry to read each of the temperature sensor cells with the heater cells disabled and second requests to read each of the temperature sensor cells again after enabling the corresponding heater cells. The unheated values may be subtracted from the heated values for each temperature sensor cell to generate delta values such that the effect of sensor cell to sensor cell variations are reduced or eliminated. The first derivative of the delta values (e.g., the difference between delta values for sensor cells two locations apart) for each temperature sensor cell are then calculated and compared to a threshold value to determine the print material level.
In at least some of the examples described below, a logic circuitry package is described. The logic circuitry package may be associated with a replaceable print apparatus component, for example being internally or externally affixed thereto, for example at least partially within the housing, and is adapted to communicate data with a print apparatus controller via a bus provided as part of the print apparatus.
A ‘logic circuitry package’ as the term is used herein refers to one logic circuit, or more logic circuits that may be interconnected or communicatively linked to each other. Where more than one logic circuit is provided, these may be encapsulated as a single unit, or may be separately encapsulated, or not encapsulated, or some combination thereof. The package may be arranged or provided on a single substrate or a plurality of substrates. In some examples, the package may be directly affixed to a cartridge wall. In some examples, the package may include an interface, for example including pads or pins. The package interface may be intended to connect to a communication interface of the print apparatus component that in turn connects to a print apparatus logic circuit, or the package interface may connect directly to the print apparatus logic circuit. Example packages may be configured to communicate via a serial bus interface. Where more than one logic circuit is provided, these logic circuits may be connected to each other or to the interface, to communicate through the same interface.
In some examples, each logic circuitry package is provided with at least one processor and memory. In one example, the logic circuitry package may be, or may function as, a microcontroller or secure microcontroller. In use, the logic circuitry package may be adhered to or integrated with the replaceable print apparatus component. A logic circuitry package may alternatively be referred to as a logic circuitry assembly, or simply as logic circuitry or processing circuitry.
In some examples, the logic circuitry package may respond to various types of requests (or commands) from a host (e.g., a print apparatus). A first type of request may include a request for data, for example identification and/or authentication information. A second type of request from a host may be a request to perform a physical action, such as performing at least one measurement. A third type of request may be a request for a data processing action. There may be additional types of requests. In this disclosure, a command is also a type of request.
In some examples, there may be more than one address associated with a particular logic circuitry package, which is used to address communications sent over a bus to identify the logic circuitry package which is the target of a communication (and therefore, in some examples, with a replaceable print apparatus component). In some examples, different requests are handled by different logic circuits of the package. In some examples, the different logic circuits may be associated with different addresses. For example, cryptographically authenticated communications may be associated with secure microcontroller functions and a first I2C address, while other communications may be associated with a sensor circuit and a second and/or reconfigured I2C address. In certain examples, these other communications via the second and/or reconfigured address can be scrambled or otherwise secured, not using the key used for the secure microcontroller functions.
In at least some examples, a plurality of such logic circuitry packages (each of which may be associated with a different replaceable print apparatus component) may be connected to an I2C bus. In some examples, at least one address of the logic circuitry package may be an I2C compatible address (herein after, an I2C address), for example in accordance with an I2C protocol, to facilitate directing communications between master to slaves in accordance with the I2C protocol. For example, a standard I2C communications address may be 7 or 10 bits in length. In other examples, other forms of digital and/or analog communication can be used.
The replaceable print apparatus component 104 may include, for example, a print material container or cartridge (which could be a build material container for 3D printing, a liquid or dry toner container for 2D printing, or an ink or liquid print agent container for 2D or 3D printing), which may in some examples include a print head or other dispensing or transfer component. The replaceable print apparatus component 104 may, for example, contain a consumable resource of the print apparatus 102, or a component which is likely to have a lifespan which is less (in some examples, considerably less) than that of the print apparatus 102. Moreover, while a single replaceable print apparatus component 104 is shown in this example, in other examples, there may be a plurality of replaceable print apparatus components, for example including print agent containers of different colors, print heads (which may be integral to the containers), or the like. In other examples, the print apparatus components 104 could include service components, for example to be replaced by service personnel, examples of which could include print heads, toner process cartridges, or logic circuit package by itself to adhere to corresponding print apparatus component and communicate to a compatible print apparatus logic circuit.
In some examples, the logic circuitry package 204 may be further configured to encode data for transmission via the data interface 202. In some examples, there may be more than one data interface 202 provided. In some examples, the logic circuitry package 204 may be arranged to act as a ‘slave’ in I2C communications.
In some examples, controller 304 may be configured to act as a host, or a master, in I2C communications. The controller 304 may generate and send commands to at least one replaceable print apparatus component 200, and may receive and decode responses received therefrom. In other examples the controller 304 may communicate with the logic circuitry package 204 using any form of digital or analog communication.
The print apparatus 102, 300 and replaceable print apparatus component 104, 200, and/or the logic circuitry thereof, may be manufactured and/or sold separately. In an example, a user may acquire a print apparatus 102, 300 and retain the apparatus 102, 300 for a number of years, whereas a plurality of replaceable print apparatus components 104, 200 may be purchased in those years, for example as print agent is used in creating a printed output. Therefore, there may be at least a degree of forwards and/or backwards compatibility between print apparatus 102, 300 and replaceable print apparatus components 104, 200. In many cases, this compatibility may be provided by the print apparatus 102, 300 as the replaceable print apparatus components 104, 200 may be relatively resource constrained in terms of their processing and/or memory capacity.
In some examples, the logic circuitry package 400a is addressable via a first address and includes a first logic circuit 402a, wherein the first address is an I2C address for the first logic circuit 402a. In some examples, the first address may be configurable. In other examples, the first address is a fixed address (e.g., “hard-wired”) intended to remain the same address during the lifetime of the first logic circuit 402a. The first address may be associated with the logic circuitry package 400a at and during the connection with the print apparatus logic circuit, outside of the time periods that are associated with a second address, as will be set out below. In example systems where a plurality of replaceable print apparatus components are to be connected to a single print apparatus, there may be a corresponding plurality of different first addresses. In certain examples, the first addresses can be considered standard I2C addresses for logic circuitry packages 400a or replaceable print components.
In some examples, the logic circuitry package 400a is also addressable via a second address. For example, the second address may be associated with different logic functions or, at least partially, with different data than the first address. In some examples, the second address may be associated with a different hardware logic circuit or a different virtual device than the first address. The hardware logic circuit can include analog sensor functions. In some examples, the logic circuitry package 400a may include a memory to store the second address (in some examples in a volatile manner). In some examples, the memory may include a programmable address memory register for this purpose. The second address may have a default second address while the second address (memory) field may be reconfigurable to a different address. For example, the second address may be reconfigurable to a temporary address by a second address command, whereby it is set (back) to the default second address after or at each time period command to enable the second address. For example, the second address may be set to its default address in an out-of-reset state whereby, after each reset, it is reconfigurable to the temporary (i.e., reconfigured) address.
In some examples, the package 400a is configured such that, in response to a first command indicative of a first time period sent to the first address (and in some examples a task), the package 400a may respond in various ways. In some examples, the package 400a is configured such that it is accessible via at least one second address for the duration of the time period. Alternatively or additionally, in some examples, the package may perform a task, which may be the task specified in the first command. In other examples, the package may perform a different task. The first command may, for example, be sent by a host such as a print apparatus in which the logic circuitry package 400a (or an associated replaceable print apparatus component) is installed. As set out in greater detail below, the task may include activating a heater or obtaining a sensor reading.
Further communication may be directed to memory addresses to be used to request information associated with these memory addresses. The memory addresses may have a different configuration than the first and second address of the logic circuitry package 400a. For example, a host apparatus may request that a particular memory register is read out onto the bus by including the memory address in a read command. In other words, a host apparatus may have a knowledge and/or control of the arrangement of a memory. For example, there may be a plurality of memory registers and corresponding memory addresses associated with the second address. A particular register may be associated with a value, which may be static or reconfigurable. The host apparatus may request that the register be read out onto the bus by identifying that register using the memory address. In some examples, the registers may include any or any combination of address register(s), parameter register(s) (for example to store gain and/or offset parameters), sensor identification register(s) (which may store an indication of a type of sensor), sensor reading register(s) (which may store values read or determined using a sensor), sensor number register(s) (which may store a number or count of sensors), version identity register(s), memory register(s) to store a count of clock cycles, memory register(s) to store a value indicative of a read/write history of the logic circuitry, or other registers.
Back to
The logic circuitry package 400b is configured to process the first command. If the first command cannot be complied with (for example, a command parameter is of an invalid length or value, or it is not possible to enable the second logic circuit 406a), the logic circuitry package 400b may generate an error code and output this to a communication link to be returned to host logic circuitry, for example in the print apparatus.
If, however, the first command is validly received and can be complied with, the logic circuitry package 400b measures the duration of the time period included in the first command, for example utilizing the timer 404a. In some examples, the timer 404a may include a digital “clock tree”. In other examples, the timer 404a may include an RC circuit, a ring oscillator, or some other form of oscillator or timer. In yet other examples, the timer may include a plurality of delay circuits each of which is set to expire after a certain time period, whereby depending on the timer period indicated in a first command, the delay circuit is chosen.
In this example, in response to receiving a valid first command, the first logic circuit 402b enables the second logic circuit 406a and effectively disables the first address, for example by tasking the first logic circuit 402b with a processing task. In some examples, enabling the second logic circuit 406a includes sending, by the first logic circuit 402b, an activation signal to the second logic circuit 406a. In other words, in this example, the logic circuitry package 400b is configured such that the second logic circuit 406a is selectively enabled by the first logic circuit 402b. The first logic circuit 402b is configured to use the first timer 404a to determine the duration of the enablement, that is, to set the time period of the enablement.
In this example, the second logic circuit 406a is enabled by the first logic circuit 402b sending a signal via a signal path 408, which may or may not be a dedicated signal path 408, that is, dedicated to enable the second logic circuit 406a. In one example, the first logic circuit 402b may have a dedicated contact pin or pad connected to the signal path 408, which links the first logic circuit 402b and the second logic circuit 406a. In a particular example, the dedicated contact pin or pad may be a General Purpose Input/Output (a GPIO) pin of the first logic circuit 402b. The contact pin/pad may serve as an enablement contact of the second logic circuit 406a.
In this example, the second logic circuit 406a is addressable via at least one second address. In some examples, when the second logic circuit 406a is activated or enabled, it may have an initial, or default, second address, which may be an 12C address or have some other address format. The second logic circuit 406a may receive instructions from a master or host logic circuitry to reconfigure the initial second address to a temporary second address. In some examples, the temporary second address may be an address which is selected by the master or host logic circuitry. This may allow the second logic circuit 406a to be provided in one of a plurality of packages 400 on the same I2C bus which, at least initially, share the same initial second address. This shared, default, address may later be set to a specific temporary address by the print apparatus logic circuit, thereby allowing the plurality of packages to have different second addresses during their temporary use, facilitating communications to each individual package. At the same time, providing the same initial second address may have manufacturing or testing advantages.
In some examples, the second logic circuit 406a may include a memory. The memory may include a programmable address register to store the initial and/or temporary second address (in some examples in a volatile manner). In some examples, the second address may be set following, and/or by executing, an I2C write command. In some examples, the second address may be settable when the enablement signal is present or high, but not when it is absent or low. The second address may be set to a default address when an enablement signal is removed and/or on restoration of enablement of the second logic circuit 406a. For example, each time the enable signal over the signal path 408 is low, the second logic circuit 406a, or the relevant part(s) thereof, may be reset. The default address may be set when the second logic circuit 406a, or the relevant part(s) thereof, is switched out-of-reset. In some examples, the default address is a 7-bit or 10-bit identification value. In some examples, the default address and the temporary second address may be written in turn to a single, common, address register. For example, while the first address of the first logic circuit is different for each different associated print material (e.g., different color inks have different first addresses), the second logic circuits can be the same for the different print materials and have the same initial second address.
In the example illustrated in
The first cells 416a-416f, 414a-414f and the at least one second cell 412 can include resistors. The first cells 416a-416f, 414a-414f and the at least one second cell 412 can include sensors. In one example, the first cell array 410 includes a print material level sensor and the at least one second cell 412 includes another sensor and/or another sensor array, such as an array of strain sensing cells. Further sensor types may include temperature sensors, resistors, diodes, crack sensors (e.g., crack sense resistors), etc. In this disclosure, different sensor types may also be referred to as different sensor classes. As mentioned, earlier, this disclosure encompasses alternative examples (e.g., mentioned with reference to
In this example, the first cell array 410 includes a sensor configured to detect a print material level of a print supply, which may in some examples be a solid but in examples described herein is a liquid, for example, an ink or other liquid print agent. The first cell array 410 may include a series of temperature sensor cells (e.g., cells 414a-414f) and a series of heating elements (e.g., cells 416a-416f), for example similar in structure and function as compared to the level sensor arrays described in WO2017/074342, WO2017/184147, and WO2018/022038. In this example, the resistance of a resistor cell 414 is linked to its temperature. The heater cells 416 may be used to heat the sensor cells 414 directly or indirectly using a medium. The subsequent behavior of the sensor cells 414 depends on the medium in which they are submerged, for example whether they are in liquid (or in some examples, encased in a solid medium) or in air. Those which are submerged in liquid/encased may generally lose heat quicker than those which are in air because the liquid or solid may conduct heat away from the resistor cells 414 better than air. Therefore, a liquid level may be determined based on which of the resistor cells 414 are exposed to the air, and this may be determined based on a reading of their resistance following (at least the start of) a heat pulse provided by the associated heater cell 416. In one example, temperature sensor cells 414a-414f are used for print material level sensing, whereas other temperature sensors, of a different type, may be used to detect an ambient and/or fluid temperature.
In some examples, each sensor cell 414 and heater cell 416 are stacked with one being directly on top of the other. The heat generated by each heater cell 416 may be substantially spatially contained within the heater element layout perimeter, so that heat delivery is substantially confined to the sensor cell 414 stacked directly above the heater cell 416. In some examples, each sensor cell 414 may be arranged between an associated heater cell 416 and the fluid/air interface.
In this example, the second cell array 412 includes a plurality of different cells that may have a different function such as different sensing function(s). For example, the first and second cell array 410, 412 may include different resistor types. Different cells arrays 410, 412 for different functions may be provided in the second logic circuit 406a. More than two different sensor types may be provided, for example three, four, five or more sensor types, may be provided, wherein each sensor type may be represented by one or more sensor cells. Certain cells or cell arrays may function as stimulators (e.g., heaters) or reference cells, rather than as sensors.
Each of the circuits 402c, 406b has a contact pin 420, which are connected by a common signal line 422. The contact pin 420 of the second circuit serves as an enablement contact thereof.
In this example, each of the first logic circuit 402c and the second logic circuit 406b include a memory 423a, 423b. The memory 423a of the first logic circuit 402c stores information including cryptographic values (for example, a cryptographic key and/or a seed value from which a key may be derived) and identification data and/or status data of the associated replaceable print apparatus component. In some examples, the memory 423a may store data representing characteristics of the print material, for example, any part, or any combination of its type, color, color map, recipe, batch number, age, etc. The first logic circuit 402c may be, or function as, a microcontroller or secure microcontroller.
In this example, memory 423b of the second logic circuit 406b includes a programmable address register to contain an initial address of the second logic circuit 406b when the second logic circuit 406b is first enabled and to subsequently contain a new (temporary) second address (in some examples in a volatile manner) after that new second address has been communicated by the print apparatus. The new, e.g., temporary, second address may be programmed into the second address register after the second logic circuit 406b is enabled, and may be effectively erased or replaced at the end of an enablement period. In some examples, the memory 423b may further include programmable registers to store any, or any combination of a read/write history data, cell (e.g., resistor or sensor) count data, Analog to Digital converter data (ADC and/or DAC), and a clock count, in a volatile or non-volatile manner. The memory 423b may also receive and/or store calibration parameters, such as offset and gain parameters. Use of such data is described in greater detail below. Certain characteristics, such as cell count or ADC or DAC characteristics, could be derivable from the second logic circuit instead of being stored as separate data in the memory.
In one example, the memory 423b of the second logic circuit 406b stores any or any combination of an address, for example the second I2C address; an identification in the form of a revision ID; and the index number of the last cell (which may be the number of cells less one, as indices may start from 0), for example for each of different cell arrays or for multiple different cell arrays if they have the same number of cells.
In use of the second logic circuit 406b, in some operational states, the memory 423b of the second logic circuit 406 may store any or any combination of timer control data, which may enable a timer of the second circuit, and/or enable frequency dithering therein in the case of some timers such as ring oscillators; a dither control data value (to indicate a dither direction and/or value); and a timer sample test trigger value (to trigger a test of the timer by sampling the timer relative to clock cycles measureable by the second logic circuit 406b).
While the memories 423a, 423b are shown as separate memories here, they could be combined as a shared memory resource, or divided in some other way. The memories 423a, 423b may include a single or multiple memory devices, and may include any or any combination of volatile memory (e.g., DRAM, SRAM, registers, etc.) and non-volatile memory (e.g., ROM, EEPROM, Flash, EPROM, memristor, etc.).
While one package 400c is shown in
In this example, the processing circuitry 424 includes a memory 426 and a first logic circuit 402d which enables a read operation from memory 426. The processing circuitry 424 is accessible via an interface bus of a print apparatus in which the print material container is installed and is associated with a first address and at least one second address. The bus may be an I2C bus. The first address may be an I2C address of the first logic circuit 402d. The first logic circuit 402d may have any of the attributes of the other examples circuits/packages described in this disclosure.
The first logic circuit 402d is adapted to participate in authentication of the print materials container by a print apparatus in which the container is installed. For example, this may include a cryptographic process such as any kind of cryptographically authenticated communication or message exchange, for example based on a key stored in the memory 426, and which can be used in conjunction with information stored in the printer. In some examples, a printer may store a version of a key which is compatible with a number of different print material containers to provide the basis of a ‘shared secret’. In some examples, authentication of a print material container may be carried out based on such a shared secret. In some examples, the first logic circuit 402d may participate in a message to derive a session key with the print apparatus and messages may be signed using a message authentication code based on such a session key. Examples of logic circuits configured to cryptographically authenticate messages in accordance with this paragraph are described in US patent publication No. 9619663.
In some examples, the memory 426 may store data including: identification data and read/write history data. In some examples, the memory 426 further includes cell count data (e.g., sensor count data) and clock count data. Clock count data may indicate a clock speed of a first and/or second timer 404a, 404b (i.e., a timer associated with the first logic circuit or the second logic circuit). In some examples, at least a portion of the memory 426 is associated with functions of a second logic circuit, such as a second logic circuit 406a as described in relation to
The memory 426 may, for example, include data representing characteristics of the print material, for example any or any combination of its type, color, batch number, age, etc. The memory 426 may, for example, include data to be communicated in response to commands received via the first address. The processing circuitry may include a first logic circuit to enable read operations from the memory and perform processing tasks.
In some examples, the processing circuitry 424 is configured such that, following receipt of the first command indicative of a task and a first time period sent to the first logic circuit 402d via the first address, the processing circuitry 424 is accessible by at least one second address for a duration of the first time period. Alternatively or additionally, the processing circuitry 424 may be configured such that in response to a first command indicative of a task and a first time period sent to the first logic circuit 402d addressed using the first address, the processing circuitry 424 is to disregard (e.g., ‘ignore’ or ‘not respond to’) I2C traffic sent to the first address for substantially the duration of the time period as measured by a timer of the processing circuitry 424 (for example a timer 404a, 404b as described above). In some examples, the processing circuitry may additionally perform a task, which may be the task specified in the first command. The term ‘disregard’ or ‘ignore’ as used herein with respect to data sent on the bus may include any or any combination of not receiving (in some examples, not reading the data into a memory), not acting upon (for example, not following a command or instruction) and/or not responding (i.e., not providing an acknowledgement, and/or not responding with requested data).
The processing circuitry 424 may have any of the attributes of the logic circuitry packages 400 described herein. In particular, the processing circuitry 424 may further include a second logic circuit wherein the second logic circuit is accessible via the second address. In some examples, the second logic circuit may include at least one sensor which is readable by a print apparatus in which the print material container is installed via the second address. In some examples, such a sensor may include a print materials level sensor. In an alternative example, the processing circuitry 424 may include a single, integral logic circuit, and one or more sensors of one or more types.
In this example, the first logic circuit 402e includes a microcontroller 430, a memory 432, and a timer 434. The microcontroller 430 may be a secure microcontroller or customized integrated circuitry adapted to function as a microcontroller, secure or non-secure.
In this example, the second logic circuit 406c includes a transmit/receive module 436, which receives a clock signal and a data signal from a bus to which the package 400d is connected, data registers 438, a multiplexer 440, a digital controller 442, an analog bias and analog to digital converter 444, at least one sensor or cell array 446 (which may in some examples include a level sensor with one or multiple arrays of resistor elements), and a power-on reset (POR) device 448. The POR device 448 may be used to allow operation of the second logic circuit 406c without use of a contact pin 420.
The analog bias and analog to digital converter 444 receives readings from the sensor array(s) 446 and from additional sensors 450, 452, 454. For example, a current may be provided to a sensing resistor and the resultant voltage may be converted to a digital value. That digital value may be stored in a register and read out (i.e., transmitted as serial data bits, or as a bitstream) over the I2C bus. The analog to digital converter 444 may utilize parameters, for example, gain and/or offset parameters, which may be stored in registers.
In this example, there are different additional single sensors, including for example at least one of a point temperature sensor 450, a crack detector 452, and/or a distributed temperature sensor 454. The point temperature sensor 450 (e.g., a thermal diode) may sense the temperature of print material (e.g., fluid) when the print material level is above the location of the point temperature sensor. The point temperature sensor 450 may sense the temperature of the air inside the component when the print material level is below the location of the point temperature sensor. In many cases, the air temperature and print material temperature will be the same. If the component has recently been transported, however, there is a chance that the component may be frozen. The air volume will warm faster than the print material volume once exposed to warmer ambient conditions. Before determining if the print material inside a component is frozen, a print system may first reference the last known print material level stored in a memory to ensure the print material level is sufficiently near or above the point temperature sensor to achieve an accurate measurement dependent on thermal conduction between the print material and the logic circuitry package where the point temperature sensor is located. In some examples, the point temperature sensor may only be read upon new component installation. The crack detector 452 may sense a structural integrity of a die on which the logic circuitry is provided. The distributed temperature sensor 454 (e.g., a temperature sensitive resistor) may sense the average temperature of print material and/or air over its length. The point and/or distributed temperature sensor may be different than the temperature sensor cells of the sensor 410 intended for fluid level sensing.
In other examples, a replaceable print apparatus component includes a logic circuitry package of any of the examples described herein, wherein the component further includes a volume of liquid. The component may have a height H that is greater than a width W and a length L that is greater than the height, the width extending between two sides. Interface pads of the package may be provided at the inner side of one of the sides facing a cut-out for a data interconnect to be inserted, the interface pads extending along a height direction near the top and front of the component, and the data pad being the bottom-most of the interface pads, the liquid and air interface of the component being provided at the front on the same vertical reference axis parallel to the height H direction wherein the vertical axis is parallel to and distanced from the axis that intersects the interface pads (i.e., the pads are partially inset from the edge by a distance D). The rest of the logic circuitry package may also be provided against the inner side.
It will be appreciated that placing logic circuitry within a print material cartridge may create challenges for the reliability of the cartridge due to the risks that electrical shorts or damage can occur to the logic circuitry during shipping and user handling, or over the life of the product.
A damaged sensor may provide inaccurate measurements, and result in inappropriate decisions by a print apparatus when evaluating the measurements. Therefore, a method may be used to verify that communications with the logic circuitry based on a specific communication sequence provide expected results. This may validate the operational health of the logic circuitry.
As will be described in more detail below, the threshold parameter(s) 602 may be used to determine the print material level within a reservoir of a replaceable print apparatus component. The threshold parameter(s) 602 may include a first value (e.g., −20) when the print material level is above a predetermined level (e.g., the sensor assembly is fully in contact with the print material) and a second value (e.g., −11) when the print material is below the predetermined level (e.g., the sensor assembly is partially in contact with the print material and partially in contact with air). The threshold parameter(s) may be stored as a count value(s). The predetermined period 604 may indicate the amount of time to enable (i.e., activate) a heater cell in response to a corresponding request. In one example, the predetermined period is within a range between about 20 and 250 microseconds. The predetermined period 604 may be stored as a count value equal to the number of cycles of a clock signal of the logic circuitry package equivalent to the predetermined period.
In another example, the highest cell 0 may be calibrated to output a target value (e.g., 200 counts) prior to any sensor readings to ensure all sensors readings will be within a valid range. In this case, if cell 0 is completely covered by the print material 702 when calibrated to the target value, the lower cells including the lowest cell k may output count values close to the output count value of cell 0. If cell 0 is not covered by the print material when calibrated to the target value, a higher sub-set of cells not covered by the print material (including the highest cell 0) will output relatively higher count values close to the output count value of cell 0, while a lower sub-set of cells covered by the print material (including the lowest cell k) may output relatively lower count values compared to the output count value of cell 0. Thus, even when cell 0 transitions from covered by the print material to not covered by the print material, the cell 0 output count may remain constant because a new calibration value is used, but cells 1-k which are still covered by the print material will show a large drop in output counts because they are relative to the new calibration point for cell 0.
The temperature sensor cell array 704 may include over 20, over 40, over 60, over 80, over 100, or over 120 cells (in one example, 126 cells). The cells may include thin film elements on a thin film substrate, as part of thin film circuitry. In one example, the sensor cells 706 include resistors. In one example, each temperature sensing resistor has a serpentine shape, for example to increase its length over a small area.
At a first usage of a filled replaceable print apparatus component (e.g., first customer installation), a temperature sensor cell response in heated and wet condition may be determined for calibration, because all cells may be covered by print liquid. Since it is known that the output of a dry sensor cell is higher, the calibrated output count value for the wet cells should be at a certain minimum distance from the highest output count value of the output count value operational range to allow for margin for later outputs of the dry cells.
The calibration logic may set any of the heating power, heating time, sense time, offset function, amplifier function, and/or analog to digital and digital to analog conversion functions so that the output count values are within the operational range, at a sufficient distance from the highest output count value to allow for margin for dry and heated readings, and/or at a sufficient distance from the lowest output count value to allow for margin for (wet or dry) unheated readings. The calibration parameters may be adjusted until the logic circuit returns an output count value, first, within a wider count value range at a distance from the highest and lowest output count values, respectively, (e.g., to avoid clipping) and, second, in a narrower sub-range, for example having at least 50 or 100 counts from the highest output count value (e.g., at least 10% or at least 20% of the range distance from the ends of the range) if the output count value range is between 0 and 255, for example between 60 and 200 counts. The output count value range is set so that there is margin in the count value range for a lower output count value range for unheated cells, for example below the 60 or 100 counts, while still being able to determine the difference between dry and wet cells.
After setting the operational calibration parameters, the print material level may be derived by detecting a step change as described below with reference to
For example, in response to receiving the second class parameter associated with the print material sensor class, and operational calibration parameters for that class, and subsequently, a series of sub-class selections and respective read requests, the logic circuitry package may output, during depletion of the associated liquid reservoir 701, (i) at a first point in time, first relatively low count values for all sub-class selections of the series, (ii) at a second point in time after depletion, second relatively high count values for a sub-set of the series of sub-class selections and first relatively low count values for remaining sub-class selections of the series, and (iii) at a third point in time after more depletion (e.g., complete or near exhaustion), second relatively high count values for all sub-class selections of the series. The respective first, second and third condition (as indicated by roman numerals i, ii and iii, respectively) are associated with a measure of depletion of print liquid 702 during the lifetime of a replaceable print component 700. The sub-class IDs corresponding to the step change can be determined which in turn allows for determining the print material level. In use, the respective transitions between the first, second and third condition (i, ii, iii) are accompanied by a change in a count field in a memory of the package (e.g., memory 432 of
In certain examples, the sensor circuit 704, 708 may extend from near a gravitational bottom upwards, at least in a normal operational orientation, but not reach the complete height of the reservoir 701. Hence, the logic circuit is configured to generate first, relatively low count values during a substantial part of the lifetime, per roman i above. In certain alternative embodiments, the logic circuit may return only first count values in response to the second class parameters and subsequent sub-class parameters and certain operational calibration parameters, at least until a value in the print material level field reaches a value that the print apparatus logic circuit associated with a level that is above the sensor cells 706.
The logic circuitry package may include a “Trust” metric. This Trust metric represents how often the print material level sensor and algorithm correctly determine the print material level of a component versus how often the incorrect print material level is determined. If too many incorrect print material level determinations are made, the Trust score decreases, and the print apparatus component may be rejected by a printer in the field. The logic circuitry package should perform with a high Trust score by avoiding false triggers.
During a print job, the scanning carriage motion may disturb the print material level in the print apparatus component. The scanning motion may strand residual ink on the print material level sensing die, generate air bubbles, splash droplets of ink onto the sensor, create froth inside the reservoir, etc. Each of these may cause the sensor to appear wet at a given location during the print material level measurement, resulting in what appears to be multiple ink levels within the component. This may be confusing to a print material level algorithm, and result in incorrect determination of the ink level, negatively affecting the Trust score. Accordingly, the process for print material level measurement described in more detail below with reference to
In this example, chart 850 includes a first subset of output counts as indicated 852 (e.g., for sensor IDs between about 24 and 126), a step change as indicated at 854 (e.g., for sensor IDs between about 21 and 23), and a second subset of output counts as indicated at 856 (e.g., for sensor IDs between about 0 and 20). The output counts of the first subset 852 indicate sensor cells that are submerged in print material, while the output counts of the second subset 856 indicate sensor cells that are exposed to air. The step change 854 indicates the sensor cells located at the print material level. For example, referring back to
A threshold parameter (e.g., 602 of
As illustrated in
In one example, a difference between a delta value for a sensor ID of the plurality of sensor IDs and a delta value for a sensor ID plus two of the plurality of sensor IDs being less than or equal to a threshold parameter indicates the print material level (e.g., see
In one example, the at least one logic circuit may receive the plurality of first requests in a sequential order of the different sensor IDs of the plurality of sensor IDs. In another example, the at least one logic circuit may receive the plurality of first requests in a random order of the different sensor IDs of the plurality of sensor IDs.
In one example, the logic circuitry package may include a sensor (e.g., 410 of
At 1102, the at least one logic circuit may receive, via the interface, a first command corresponding to a first mode (e.g., unheated) and a series of sub-class IDs (e.g., sensor IDs). At 1104, the at least one logic circuit may transmit, via the interface, a first digital value (e.g., count) corresponding to each sub-class ID in response to the first command. At 1106, the at least one logic circuit may receive, via the interface, a second command corresponding to a second mode (e.g., heated) and the series of sub-class IDs. At 1108, the at least one logic circuit may transmit, via the interface, a second digital value (e.g., count) corresponding to each sub-class ID in response to the second command. Delta values correspond to a difference between the first digital value and the second digital value for each sub-class ID of the series of sub-class IDs. In a partially filled or almost empty state, there is a relatively large difference (e.g., at least 25 counts per sensor cell reading) between the delta values of a first sub-series of consecutive sub-class IDs of the series of sub-class IDs and the delta values of a second sub-series of consecutive sub-class IDs of the series of sub-class IDs while there is a relatively small difference (e.g., 0 to 4 counts per sensor cell reading) between delta values of consecutive sub-class IDs within each of the first sub-series and the second sub-series (e.g., see
In one example, the at least one logic circuit is configured to transmit first digital values and second digital values that are different. The first digital values and the second digital values may be count values, and at least a portion of the second digital values may be less than the first digital values. In one example, the relatively large difference is associated with a sub-class ID between or at a corresponding end of one of the first sub-series and the second sub-series, and the at least one logic circuit is configured to, in a partially filled state and while the component outputs print material, gradually change the sub-class ID associated with the relatively large difference so that the number of sub-class IDs of the first sub-series gradually decreases and the number of sub-class IDs of the second sub-series gradually increases. The at least one logic circuit may, in a partially filled state and while the component outputs print material, increase the sub-class ID associated with the relatively large difference. In one example, these outputs are generated without using a sensor. The print apparatus logic circuit may associate each single ID count shift of the sub-class ID associated with the step change with a certain decrease of print material weight, for example of 1 mg or less. The gradual shift may occur after a certain count of pages and/or print jobs to the extent the logic circuit can determine or derive this from communications with the print apparatus logic circuit. Hence, the logic circuit may be configured to gradually change/increase the sub-class ID(s) associated with the relatively large difference based on certain input parameters other than sensor signals, for example at least one of a print liquid level or status field, one or more power-ons of the logic circuit, a number of communications with the logic circuit by the print apparatus logic circuit, a count of print jobs, specific communications by the print apparatus logic circuit, and a time or date clock. For example, the logic circuit may store at least one look-up table and/or algorithm that associates input parameters with to-be-generated outputs for each sub-class ID.
In one example, determining, via the print apparatus logic circuit, the print material level based on the k−2 first derivative values is illustrated in
As illustrated in
For example, the logic circuitry package 1300 may include at least one sensor 1310, or multiple sensors of different types. In one example, the logic circuitry package 1300 may not be provided with sensors. The logic circuit may be configured to consult a respective sensor 1310, and/or LUT(s) (look-up table)/list(s) 1306 and/or algorithm(s) 1308, based on the class (i.e., sensor ID) and calibration parameters, to generate the digital output. In this disclosure, any list or table that is used to associated sensor IDs (i.e., classes) and sensor sub-IDs (i.e., sub-classes) with output values may be defined as a LUT. The at least one sensor 1310 may include a sensor to detect a pneumatic event such as a prime pressure, an ink level within a print material reservoir of a replaceable print component, a sensor to detect an approximate temperature, and/or other sensors. In one example, the sensor 1310 may be the temperature sensor 450 or 454 while a response indicating a presence of a pneumatic event or a print material level may be emulated based on the LUT and/or algorithm. In other examples, the logic circuitry package 1300 includes a plurality of sensors of different types, for example, at least two sensors of different types, wherein the logic circuit may be configured to select and consult one of the sensors based on the received class parameters, and output a digital value based on a signal of the selected sensor, while a LUT or algorithm may be used to determine the output digital value based on both the sensor signal and received class parameter (e.g., sensor ID). In another example, the logic circuit may be configured to select and consult a respective LUT listing or algorithm based on the received sensor ID to generate the digital value, for example, without using a sensor signal.
As already explained above, received parameters may include calibration parameters, address parameters, and sensor (sub) ID/class parameters. Different sets of all the parameters are related to the different output count values as already explained above, whereby the output count value associated with the parameters is one that is accepted by the print apparatus logic circuit. The output count values may be generated using the LUT(s) and or list(s) 1306 and/or algorithm(s) 1308 whereby the parameters may be used as input. In addition, a signal of at least one sensor 1310 may be consulted as input for the LUT. In this case, the output count values may be digitally generated, rather than obtained from analog sensor measurements. For example, logic circuitry package 1300 may implement method 1000 of
In one example, the logic circuitry packages described herein mainly include hardwired routings, connections, and interfaces between different components. In another example, the logic circuitry packages may also include at least one wireless connection, wireless communication path, or wireless interface, for internal and/or external signaling, whereby a wirelessly connected element may be considered as included in the logic circuitry package and/or replaceable component. For example, certain sensors may be wireless connected to communicate wirelessly to the logic circuit/sensor circuit. For example, sensors such as pressure sensors and/or print material level sensors may communicate wirelessly with other portions of the logic circuit. These elements, that communicate wirelessly with the rest of the logic circuit, may be considered part of the logic circuit or logic circuitry package. Also, the external interface of the logic circuitry package, to communicate with the print apparatus logic circuit, may include a wireless interface. Also, while reference may be made to power routings, power interfaces, or charging or powering certain cells, certain examples of this disclosure may include a power source such as a battery or a power harvesting source that may harvest power from data or clock signals.
Certain example circuits of this disclosure relate to outputs that vary in a certain way in response to certain commands, events and/or states. It is also explained that, unless calibrated in advance, responses to these same events and/or states may be “clipped”, for example so that they cannot be characterized or are not relatable to these commands, events and/or states. For these example circuits where the output needs to be calibrated to obtain the characterizable or relatable output, it should be understood that also before required calibration (or installation) occurred these circuits are in fact already “configured” to provide for the characterizable output, that is, all means are present to provide for the characterizable output, even where calibration is yet to occur. It may be a matter of choice to calibrate a logic circuit during manufacture and/or during customer installation and/or during printing, but this does not take away that the same circuit is already “configured” to function in the calibrated state. For example, when sensors are mounted to a reservoir wall, certain strains in that wall over the lifetime of the component may vary and may be difficult to predict while at the same time these unpredictable strains affect the output of the logic circuit. Different other circumstances such as conductivity of the print material, different packaging, in-assembly-line-mounting, etc. may also influence how the logic circuit responds to commands/events/states so that a choice may be made to calibrate at or after a first customer installation. In any of these and other examples, it is advantageous to determine (operational) calibration parameters in-situ, after first customer installation and/or between print jobs, whereby, again, these should be considered as already adapted to function in a calibrated state. Certain alternative (at least partly) “virtual” embodiments discussed in this disclosure may operate with LUTs or algorithms, which may similarly generate, before calibration or installation, clipped values, and after calibration or installation, characterizable values whereby such alternative embodiment, should also be considered as already configured or adapted to provide for the characterizable output, even before calibration/installation.
In one example, the logic circuitry package outputs count values in response to read requests. In many examples, the output of count values is discussed. In certain examples, each separate count value is output in response to each read request. In another example, a logic circuit is configured to output a series or plurality of count values in response to a single read request. In other examples, output may be generated without a read request.
Each of the logic circuitry packages 400a-400d, 1300 described herein may have any feature of any other logic circuitry packages 400a-400d, 1300 described herein or of the processing circuitry 424. Any logic circuitry packages 400a-400d, 1300 or the processing circuitry 424 may be configured to carry out at least one method block of the methods described herein. Any first logic circuit may have any attribute of any second logic circuit, and vice versa.
Examples in the present disclosure can be provided as methods, systems or machine readable instructions, such as any combination of software, hardware, firmware or the like. Such machine readable instructions may be included on a machine readable storage medium (including but not limited to EEPROM, PROM, flash memory, disc storage, CD-ROM, optical storage, etc.) having machine readable program codes therein or thereon.
The present disclosure is described with reference to flow charts and block diagrams of the method, devices and systems according to examples of the present disclosure. Although the flow diagrams described above show a specific order of execution, the order of execution may differ from that which is depicted. Blocks described in relation to one flow chart may be combined with those of another flow chart. It shall be understood that at least some blocks in the flow charts and block diagrams, as well as combinations thereof can be realized by machine readable instructions.
The machine readable instructions may, for example, be executed by a general purpose computer, a special purpose computer, an embedded processor or processors of other programmable data processing devices to realize the functions described in the description and diagrams. In particular, a processor or processing circuitry may execute the machine readable instructions. Thus, functional modules of the apparatus and devices (for example, logic circuitry and/or controllers) may be implemented by a processor executing machine readable instructions stored in a memory, or a processor operating in accordance with instructions embedded in logic circuitry. The term ‘processor’ is to be interpreted broadly to include a CPU, processing unit, ASIC, logic unit, or programmable gate array etc. The methods and functional modules may all be performed by a single processor or divided amongst several processors.
Such machine readable instructions may also be stored in a machine readable storage (e.g., a tangible machine readable medium) that can guide the computer or other programmable data processing devices to operate in a specific mode.
Such machine readable instructions may also be loaded onto a computer or other programmable data processing devices, so that the computer or other programmable data processing devices perform a series of operations to produce computer-implemented processing, thus the instructions executed on the computer or other programmable devices realize functions specified by block(s) in the flow charts and/or in the block diagrams.
Further, the teachings herein may be implemented in the form of a computer software product, the computer software product being stored in a storage medium and comprising a plurality of instructions for making a computer device implement the methods recited in the examples of the present disclosure.
The word “comprising” does not exclude the presence of elements other than those listed in a claim, “a” or “an” does not exclude a plurality, and a single processor or other unit may fulfill the functions of several units recited in the claims.
Although specific examples have been illustrated and described herein, a variety of alternate and/or equivalent implementations may be substituted for the specific examples shown and described without departing from the scope of the present disclosure. This application is intended to cover any adaptations or variations of the specific examples discussed herein. Therefore, it is intended that this disclosure be limited only by the claims and the equivalents thereof.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2019/064213 | 12/3/2019 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2020/117786 | 6/11/2020 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4074284 | Dexter et al. | Feb 1978 | A |
4506276 | Kyser et al. | Mar 1985 | A |
4639738 | Young et al. | Jan 1987 | A |
4734787 | Hayashi | Mar 1988 | A |
5001596 | Hart | Mar 1991 | A |
5045811 | Lewis | Sep 1991 | A |
5079570 | Mohr et al. | Jan 1992 | A |
5142909 | Baughman | Sep 1992 | A |
5329254 | Takano | Jul 1994 | A |
5438351 | Trenchard et al. | Aug 1995 | A |
5471176 | James et al. | Nov 1995 | A |
5583544 | Stamer et al. | Dec 1996 | A |
5680960 | Keyes et al. | Oct 1997 | A |
5682184 | Stephany et al. | Oct 1997 | A |
5699091 | Bullock et al. | Dec 1997 | A |
5731824 | Kneezel et al. | Mar 1998 | A |
5751323 | Swanson | May 1998 | A |
5757406 | Kaplinsky et al. | May 1998 | A |
5777646 | Barinaga et al. | Jul 1998 | A |
5788388 | Cowger et al. | Aug 1998 | A |
5861780 | Fukuda | Jan 1999 | A |
5975688 | Kanaya et al. | Nov 1999 | A |
6068363 | Saito | May 2000 | A |
6098457 | Poole | Aug 2000 | A |
6151039 | Hmelar et al. | Nov 2000 | A |
6164766 | Erickson | Dec 2000 | A |
6175929 | Hsu et al. | Jan 2001 | B1 |
6219933 | Taniguchi et al. | Apr 2001 | B1 |
6299273 | Anderson et al. | Oct 2001 | B1 |
6312074 | Walker | Nov 2001 | B1 |
6341853 | Scheffelin et al. | Jan 2002 | B1 |
6386693 | Michele | May 2002 | B1 |
6402299 | DeMeerleer | Jun 2002 | B1 |
6412901 | Su et al. | Jul 2002 | B2 |
6431670 | Schantz et al. | Aug 2002 | B1 |
6456802 | Phillips | Sep 2002 | B1 |
6457355 | Philipp | Oct 2002 | B1 |
6494553 | Donahue et al. | Dec 2002 | B1 |
6494568 | Hou et al. | Dec 2002 | B2 |
6598963 | Yamamoto et al. | Jul 2003 | B1 |
6641240 | Hsu et al. | Nov 2003 | B2 |
6641243 | Anderson et al. | Nov 2003 | B2 |
6648434 | Walker et al. | Nov 2003 | B2 |
6685290 | Farr et al. | Feb 2004 | B1 |
6736497 | Jung | May 2004 | B2 |
6796644 | Anderson, Jr. et al. | Sep 2004 | B1 |
6802581 | Hasseler et al. | Oct 2004 | B2 |
6802602 | Sakai et al. | Oct 2004 | B2 |
6811250 | Buchanan et al. | Nov 2004 | B2 |
6902256 | Anderson et al. | Jun 2005 | B2 |
6908179 | Pan et al. | Jun 2005 | B2 |
6959599 | Feldstein et al. | Nov 2005 | B2 |
6966222 | Carson et al. | Nov 2005 | B2 |
6969137 | Maeda | Nov 2005 | B2 |
7039734 | Sun et al. | May 2006 | B2 |
7077506 | Chen | Jul 2006 | B2 |
7171323 | Shipton et al. | Jan 2007 | B2 |
7240130 | Larson | Jul 2007 | B2 |
7260662 | Moriwaki et al. | Aug 2007 | B2 |
7328115 | Shipton et al. | Feb 2008 | B2 |
7380042 | Wang et al. | May 2008 | B2 |
7458656 | Smith | Dec 2008 | B2 |
7533960 | Yasuda et al. | May 2009 | B2 |
7547082 | Lee et al. | Jun 2009 | B2 |
7630304 | Larson et al. | Dec 2009 | B2 |
7686423 | Sato et al. | Mar 2010 | B2 |
7740347 | Silverbrook et al. | Jun 2010 | B2 |
7775638 | Hirosawa et al. | Aug 2010 | B2 |
7841712 | Muyskens et al. | Nov 2010 | B2 |
7886197 | Wegman | Feb 2011 | B2 |
7890690 | Naderi et al. | Feb 2011 | B2 |
7970042 | Hardin et al. | Jun 2011 | B2 |
8040215 | Zakriti | Oct 2011 | B2 |
8161224 | Laurencin et al. | Apr 2012 | B2 |
8215018 | Morita et al. | Jul 2012 | B2 |
8220910 | Wanibe | Jul 2012 | B2 |
8224602 | Lory et al. | Jul 2012 | B2 |
8289788 | Asauchi | Oct 2012 | B2 |
8331581 | Pennock | Dec 2012 | B2 |
8348377 | Asauchi | Jan 2013 | B2 |
8350628 | George et al. | Jan 2013 | B1 |
8364859 | Sato | Jan 2013 | B2 |
8386657 | Adkins et al. | Feb 2013 | B2 |
8393718 | Kida et al. | Mar 2013 | B2 |
8393721 | Katoh et al. | Mar 2013 | B2 |
8429437 | Asauchi | Apr 2013 | B2 |
8432421 | Muraki et al. | Apr 2013 | B2 |
8438919 | Phillips et al. | May 2013 | B2 |
8454137 | Price et al. | Jun 2013 | B2 |
8556394 | Chen | Oct 2013 | B2 |
8558577 | Soriano Fosas et al. | Oct 2013 | B1 |
8562091 | Sabanovic et al. | Oct 2013 | B2 |
8591012 | Yoshino et al. | Nov 2013 | B2 |
8608276 | Oohashi et al. | Dec 2013 | B2 |
8621116 | Fister et al. | Dec 2013 | B2 |
8651614 | Sakamoto et al. | Feb 2014 | B2 |
8651643 | Harvey et al. | Feb 2014 | B2 |
8721059 | Kodama et al. | May 2014 | B2 |
8721203 | Ehrhardt, Jr. | May 2014 | B2 |
8752943 | Hirano et al. | Jun 2014 | B2 |
8864277 | Rice et al. | Oct 2014 | B2 |
8876257 | Harada et al. | Nov 2014 | B2 |
8888207 | Furness, III et al. | Nov 2014 | B2 |
8892798 | Tailliet et al. | Nov 2014 | B2 |
8898358 | DeCesaris et al. | Nov 2014 | B2 |
8978487 | Fergusson et al. | Mar 2015 | B2 |
8990467 | Saito | Mar 2015 | B2 |
9079414 | Lester et al. | Jul 2015 | B2 |
9108448 | Bergstedt | Aug 2015 | B1 |
9132656 | Nicholson, III et al. | Sep 2015 | B2 |
9137093 | Abraham et al. | Sep 2015 | B1 |
9176921 | Fister et al. | Nov 2015 | B2 |
9194734 | Mehrer | Nov 2015 | B2 |
9213396 | Booth et al. | Dec 2015 | B1 |
9213927 | Ahne et al. | Dec 2015 | B1 |
9254661 | Otaka et al. | Feb 2016 | B2 |
9298908 | Booth et al. | Mar 2016 | B1 |
9370934 | Asauchi et al. | Jun 2016 | B2 |
9400204 | Schoenberg | Jul 2016 | B2 |
9413356 | McKinley | Aug 2016 | B1 |
9413359 | Stirk | Aug 2016 | B2 |
9454504 | Evans | Sep 2016 | B2 |
9483003 | Thacker, III | Nov 2016 | B2 |
9487017 | Ge et al. | Nov 2016 | B2 |
9496884 | Azenkot et al. | Nov 2016 | B1 |
9511596 | Anderson et al. | Dec 2016 | B2 |
9561662 | Ward et al. | Feb 2017 | B2 |
9582443 | Switzer et al. | Feb 2017 | B1 |
9599500 | Ge et al. | Mar 2017 | B2 |
9619663 | Refstrup | Apr 2017 | B2 |
9671820 | Maruyama et al. | Jun 2017 | B2 |
9734121 | Pitigoi-Aron et al. | Aug 2017 | B2 |
9738087 | Kato et al. | Aug 2017 | B2 |
9746799 | Jeran | Aug 2017 | B2 |
9770914 | Harvey et al. | Sep 2017 | B2 |
9776412 | Ge et al. | Oct 2017 | B2 |
9789697 | Knierim et al. | Oct 2017 | B1 |
9796178 | Maxfield | Oct 2017 | B2 |
9852282 | Jeran et al. | Dec 2017 | B2 |
9876794 | Adkins et al. | Jan 2018 | B2 |
9895917 | Corvese et al. | Feb 2018 | B2 |
9914306 | Jeran | Mar 2018 | B2 |
9922276 | Fister et al. | Mar 2018 | B2 |
9994036 | Angulo Navarro et al. | Jun 2018 | B2 |
10031882 | Srivastava et al. | Jul 2018 | B2 |
10052878 | Benneton | Aug 2018 | B2 |
10107667 | Cumbie | Oct 2018 | B2 |
10146608 | Giovannini et al. | Dec 2018 | B2 |
10155379 | Ng et al. | Dec 2018 | B2 |
10214018 | Nozawa et al. | Feb 2019 | B2 |
10214019 | Campbell-Brown et al. | Feb 2019 | B2 |
10259230 | Asauchi | Apr 2019 | B2 |
10279594 | Horade | May 2019 | B2 |
10338838 | Olarig | Jul 2019 | B2 |
10471725 | Esterberg et al. | Nov 2019 | B2 |
10875318 | Gardner et al. | Dec 2020 | B1 |
10894423 | Gardner et al. | Jan 2021 | B2 |
11034157 | Gardner et al. | Jun 2021 | B2 |
20010029554 | Namba | Oct 2001 | A1 |
20010033316 | Eida | Oct 2001 | A1 |
20020012016 | Wilson et al. | Jan 2002 | A1 |
20020012616 | Zhou et al. | Jan 2002 | A1 |
20020033855 | Kubota et al. | Mar 2002 | A1 |
20020109761 | Shimizu et al. | Aug 2002 | A1 |
20020129650 | Zimmermann | Sep 2002 | A1 |
20020154181 | Kubota et al. | Oct 2002 | A1 |
20030009595 | Collins | Jan 2003 | A1 |
20030018300 | Duchon et al. | Jan 2003 | A1 |
20030071862 | Tsukada et al. | Apr 2003 | A1 |
20030202024 | Corrigan | Oct 2003 | A1 |
20040021711 | Hasseler | Feb 2004 | A1 |
20040036733 | Kubota et al. | Feb 2004 | A1 |
20040085382 | Kosugi et al. | May 2004 | A1 |
20040155913 | Kosugi et al. | Aug 2004 | A1 |
20040252146 | Naka et al. | Dec 2004 | A1 |
20050010910 | Lindhorst et al. | Jan 2005 | A1 |
20050093910 | Im | May 2005 | A1 |
20050125105 | Halstead et al. | Jun 2005 | A1 |
20050126282 | Maatuk | Jun 2005 | A1 |
20050185595 | Lee | Aug 2005 | A1 |
20050229699 | Chai et al. | Oct 2005 | A1 |
20060007253 | Kosugi | Jan 2006 | A1 |
20060007295 | Ueda | Jan 2006 | A1 |
20060072952 | Walmsley | Apr 2006 | A1 |
20060110199 | Walmsley et al. | May 2006 | A1 |
20060181583 | Usuda | Aug 2006 | A1 |
20060181719 | Aoki et al. | Aug 2006 | A1 |
20060221386 | Brooks et al. | Oct 2006 | A1 |
20060244795 | Hayasaki et al. | Nov 2006 | A1 |
20060268030 | Walmsley et al. | Nov 2006 | A1 |
20060274103 | Kim | Dec 2006 | A1 |
20060290723 | Jeong et al. | Dec 2006 | A1 |
20070024650 | Reinten et al. | Feb 2007 | A1 |
20070068249 | Eguchi et al. | Mar 2007 | A1 |
20070088816 | Hrustemovic et al. | Apr 2007 | A1 |
20070115307 | Smith | May 2007 | A1 |
20070146409 | Kubota et al. | Jun 2007 | A1 |
20070247497 | Buchanan et al. | Oct 2007 | A1 |
20080024555 | Kimura | Jan 2008 | A1 |
20080041152 | Schoenberg | Feb 2008 | A1 |
20080107151 | Khadkikar et al. | May 2008 | A1 |
20080129779 | Walmsley et al. | Jun 2008 | A1 |
20080143476 | Cheung et al. | Jun 2008 | A1 |
20080165232 | Yuen | Jul 2008 | A1 |
20080192074 | Dubois et al. | Aug 2008 | A1 |
20080211838 | Zhang | Sep 2008 | A1 |
20080246626 | Sheafor et al. | Oct 2008 | A1 |
20080298455 | Ilia et al. | Dec 2008 | A1 |
20080307134 | Geissler et al. | Dec 2008 | A1 |
20090013779 | Usui | Jan 2009 | A1 |
20090021766 | Yamazaki | Jan 2009 | A1 |
20090177823 | Chao | Jul 2009 | A1 |
20090179678 | Hardin | Jul 2009 | A1 |
20090290005 | Wanibe | Nov 2009 | A1 |
20090309941 | Price | Dec 2009 | A1 |
20100082271 | McCann et al. | Apr 2010 | A1 |
20100138745 | McNamara | Jun 2010 | A1 |
20100205350 | Bryant-Rich | Aug 2010 | A1 |
20100220128 | Zaba | Sep 2010 | A1 |
20100248208 | Okubo et al. | Sep 2010 | A1 |
20100254202 | Asauchi | Oct 2010 | A1 |
20100257327 | Kosugi | Oct 2010 | A1 |
20100306431 | Adkins et al. | Dec 2010 | A1 |
20110009938 | Dowling | Jan 2011 | A1 |
20110029705 | Evans | Feb 2011 | A1 |
20110050793 | Kumagai et al. | Mar 2011 | A1 |
20110087914 | Files et al. | Apr 2011 | A1 |
20110113171 | Radhakrishnan et al. | May 2011 | A1 |
20110131441 | Asauchi | Jun 2011 | A1 |
20110279530 | Love | Nov 2011 | A1 |
20110285027 | Lee | Nov 2011 | A1 |
20120128379 | Takeda | May 2012 | A1 |
20120243559 | Pan et al. | Sep 2012 | A1 |
20120284429 | Adkins et al. | Nov 2012 | A1 |
20120299989 | Prothon | Nov 2012 | A1 |
20130018513 | Ecobee | Jan 2013 | A1 |
20130054933 | Fister | Feb 2013 | A1 |
20130067015 | Vasters | Mar 2013 | A1 |
20130067016 | Adkins | Mar 2013 | A1 |
20130155142 | Browning et al. | Jun 2013 | A1 |
20130250024 | Kakishima | Sep 2013 | A1 |
20130295245 | Gardner | Nov 2013 | A1 |
20140040517 | Fister et al. | Feb 2014 | A1 |
20140095750 | Tailliet | Apr 2014 | A1 |
20140164660 | DeCesaris et al. | Jun 2014 | A1 |
20140211241 | Rice et al. | Jul 2014 | A1 |
20140260520 | Schoenberg | Sep 2014 | A1 |
20140265049 | Burris et al. | Sep 2014 | A1 |
20140337553 | Du et al. | Nov 2014 | A1 |
20140351469 | Fister et al. | Nov 2014 | A1 |
20140354729 | Vanbrocklin et al. | Dec 2014 | A1 |
20140372652 | Shu | Dec 2014 | A1 |
20140375321 | Ikeya | Dec 2014 | A1 |
20140375730 | Campbell-Brown | Dec 2014 | A1 |
20150028671 | Ragaini et al. | Jan 2015 | A1 |
20150052996 | Niemann | Feb 2015 | A1 |
20150074304 | Adkins et al. | Mar 2015 | A1 |
20150089630 | Lee | Mar 2015 | A1 |
20150239254 | Muyskens et al. | Aug 2015 | A1 |
20150285526 | Smith et al. | Oct 2015 | A1 |
20150343792 | Refstrup | Dec 2015 | A1 |
20160055402 | Fister et al. | Feb 2016 | A1 |
20160098359 | Adkins et al. | Apr 2016 | A1 |
20160110535 | Booth et al. | Apr 2016 | A1 |
20160114590 | Arpin | Apr 2016 | A1 |
20160279962 | Ishida et al. | Sep 2016 | A1 |
20160357691 | Ahne | Dec 2016 | A1 |
20160364305 | Pitigou-Aron | Dec 2016 | A1 |
20160368273 | Ishikawa | Dec 2016 | A1 |
20170032135 | Refstrup | Feb 2017 | A1 |
20170050383 | Bell et al. | Feb 2017 | A1 |
20170100941 | Kuribayashi | Apr 2017 | A1 |
20170144448 | Smith | May 2017 | A1 |
20170157929 | Yokoo et al. | Jun 2017 | A1 |
20170168976 | Yost et al. | Jun 2017 | A1 |
20170169623 | Chen et al. | Jun 2017 | A1 |
20170182786 | Angulo Navarro | Jun 2017 | A1 |
20170189011 | Stone et al. | Jul 2017 | A1 |
20170194913 | Wilson et al. | Jul 2017 | A1 |
20170230540 | Sasaki | Aug 2017 | A1 |
20170330449 | Lunardhi | Nov 2017 | A1 |
20180050537 | Bakker et al. | Feb 2018 | A1 |
20180100753 | Cumbie et al. | Apr 2018 | A1 |
20180143935 | Cox | May 2018 | A1 |
20180157943 | Fister et al. | Jun 2018 | A1 |
20180162137 | Van Brocklin et al. | Jun 2018 | A1 |
20180212593 | Usuda | Jul 2018 | A1 |
20180264808 | Bakker et al. | Sep 2018 | A1 |
20180281394 | Horade et al. | Oct 2018 | A1 |
20180281438 | Horade | Oct 2018 | A1 |
20180290457 | Ge et al. | Oct 2018 | A1 |
20180302110 | Solan | Oct 2018 | A1 |
20180304640 | Horne | Oct 2018 | A1 |
20190004991 | Foust | Jan 2019 | A1 |
20190011306 | Cumbie et al. | Jan 2019 | A1 |
20190012663 | Masters | Jan 2019 | A1 |
20190013731 | Gritti | Jan 2019 | A1 |
20190023020 | Anderson | Jan 2019 | A1 |
20190061347 | Bakker et al. | Feb 2019 | A1 |
20190064408 | Smit | Feb 2019 | A1 |
20190097785 | Elenes | Mar 2019 | A1 |
20190111694 | Cumbie et al. | Apr 2019 | A1 |
20190111695 | Anderson et al. | Apr 2019 | A1 |
20190111696 | Anderson et al. | Apr 2019 | A1 |
20190118527 | Anderson et al. | Apr 2019 | A1 |
20190126631 | Anderson et al. | May 2019 | A1 |
20190137316 | Anderson et al. | May 2019 | A1 |
20190138484 | De Santiago Dominguez et al. | May 2019 | A1 |
20190217628 | Horade et al. | Jul 2019 | A1 |
20190226930 | Cumbie et al. | Jul 2019 | A1 |
20190240985 | Ge et al. | Aug 2019 | A1 |
20200159689 | Koshisaka et al. | May 2020 | A1 |
20210334392 | Panshin et al. | Oct 2021 | A1 |
Number | Date | Country |
---|---|---|
2014202104 | May 2014 | AU |
2507422 | Jan 2002 | CA |
2603934 | Feb 2004 | CN |
2734479 | Oct 2005 | CN |
201761148 | Mar 2011 | CN |
102231054 | Nov 2011 | CN |
203651218 | Jun 2014 | CN |
102736627 | Dec 2014 | CN |
103879149 | Jun 2015 | CN |
105760318 | Jul 2016 | CN |
107209743 | Sep 2017 | CN |
108819486 | Nov 2018 | CN |
209014461 | Jun 2019 | CN |
3712699 | Nov 1988 | DE |
0015954 | Jun 1984 | EP |
0720916 | Jul 1996 | EP |
0994779 | Apr 2000 | EP |
1164022 | Dec 2001 | EP |
1238811 | Sep 2002 | EP |
1285764 | Feb 2003 | EP |
1314565 | May 2003 | EP |
1389531 | Feb 2004 | EP |
1524120 | Apr 2005 | EP |
1800872 | Jun 2007 | EP |
1839872 | Oct 2007 | EP |
2237163 | Oct 2010 | EP |
2385468 | Nov 2011 | EP |
2854063 | Apr 2015 | EP |
3208736 | Aug 2017 | EP |
2519181 | Apr 2015 | GB |
H04220353 | Aug 1992 | JP |
2001292133 | Oct 2001 | JP |
2002026471 | Jan 2002 | JP |
2003326726 | Nov 2003 | JP |
2005262458 | Sep 2005 | JP |
2009258604 | Nov 2009 | JP |
2010079199 | Apr 2010 | JP |
2011113336 | Jun 2011 | JP |
2012063770 | Mar 2012 | JP |
2013197677 | Sep 2013 | JP |
5644052 | Dec 2014 | JP |
2014534917 | Dec 2014 | JP |
2016185664 | Oct 2016 | JP |
2017196842 | Nov 2017 | JP |
2018049141 | Mar 2018 | JP |
2018136774 | Aug 2018 | JP |
2018161785 | Oct 2018 | JP |
2018531394 | Oct 2018 | JP |
20080003539 | Jan 2008 | KR |
101785051 | Oct 2017 | KR |
200707209 | Feb 2007 | TW |
201202948 | Jan 2012 | TW |
201546620 | Dec 2015 | TW |
WO-2007107957 | Sep 2007 | WO |
WO-2008117194 | Oct 2008 | WO |
WO-2009145774 | Dec 2009 | WO |
WO-2012020443 | Feb 2012 | WO |
WO-2012054050 | Apr 2012 | WO |
WO-2012057755 | May 2012 | WO |
WO-2013048430 | Apr 2013 | WO |
WO-2015116092 | Aug 2015 | WO |
WO-2016061480 | Apr 2016 | WO |
WO-2016114759 | Jul 2016 | WO |
WO-2016130157 | Aug 2016 | WO |
WO-2017074334 | May 2017 | WO |
WO-2017074342 | May 2017 | WO |
WO-2017174363 | Oct 2017 | WO |
WO-2017184147 | Oct 2017 | WO |
WO-2017189009 | Nov 2017 | WO |
WO-2017189010 | Nov 2017 | WO |
WO-2017189011 | Nov 2017 | WO |
WO-2017189013 | Nov 2017 | WO |
WO-2018017066 | Jan 2018 | WO |
WO-2018022038 | Feb 2018 | WO |
WO-2018186847 | Oct 2018 | WO |
WO-2018199886 | Nov 2018 | WO |
WO-2018199891 | Nov 2018 | WO |
WO-2018199895 | Nov 2018 | WO |
WO-2018217185 | Nov 2018 | WO |
WO-2019017963 | Jan 2019 | WO |
WO-2019078834 | Apr 2019 | WO |
WO-2019078835 | Apr 2019 | WO |
WO-2019078839 | Apr 2019 | WO |
WO-2019078840 | Apr 2019 | WO |
WO-2019078843 | Apr 2019 | WO |
WO-2019078844 | Apr 2019 | WO |
WO-2019078845 | Apr 2019 | WO |
Entry |
---|
Arnostech, “Thermal Inkjet Printers,” http://www.arnostech.com/machines/coding-systems/thermal-inkjet-printers/, retrieved Jul. 1, 2019, 3 pgs. |
Epson, “Epson Provides the Best Inks for the Job,” https://www.epson.co.nz/microsite/excellence/inks_why.asp, retrieved Jul. 1, 2019, 3 pgs. |
Platform Development Team, “Development of the HP DeskJet 1200C Print Cartridge Platform,” Hewlett-Packard Journal, Feb. 1994, pp. 46-54. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2019/026159, dated Aug. 13, 2019, 15 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2018/063624, dated Aug. 23, 2019, 13 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2018/063630, dated Aug. 22, 2019, 15 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2018/063633, dated Jul. 23, 2019, 12 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2018/063638, dated Aug. 26, 2019, 13 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2018/063643, dated Aug. 20, 2019, 13 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2019/017511, dated Jul. 25, 2019, 12 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2019/026124, dated Aug. 26, 2019, 15 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2019/026133, dated Aug. 26, 2019, 18 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2019/026145, dated Sep. 5, 2019, 16 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2019/026161, dated Aug. 26, 2019, 20 pgs. |
International Searching Authority, “International Search Report and Written Opinion,” issued in connection with PCT/US2018/063631, dated Aug. 23, 2019, 13 pgs. |
Maxim Integrated Products, “1-to-8 I2C Bus Switches/Multiplexers with Bus Lock-Up Detection, Isolation, and Notification,” Sep. 2008, 22 pgs. |
NXP, “Introducing A10006 Secure Authenticator Tamper-Resistant Anti Counterfeit Solution”, retreived Jul. 3, 2019, 29 pgs. |
NXP B.V., “NXP 2-, 4-, and 8-Channel I2C/SMBus Muxes and Switches PCA954x,” Jul. 2008, 4 pgs. |
NXP Semiconductors N.V., “PCA9641: 2-Channel I2C-Bus Master Arbiter,” Oct. 27, 2015, 55 pgs. |
Laureto, John et al., “Open Source Multi-Head 3D Printer for Polymer-Metal Composite Component Manufacturing,” Technologies, MDPI, 2017, 5 (2), pp. 36, 23 pgs. |
NXP Semiconductors N.V., “PCA9547: 8-Channel I2C-Bus Multiplexer with Reset,” Apr. 1, 2014, 34 pgs. |
NXP Semiconductors N.V., “An 11593: How to Design in and Program the PCA9641 I2C Arbiter,” Oct. 23, 2014, 22 pgs. |
Reddit, “Use an Accelerometer to Measure Z wobble”, retrieved Jul. 1, 2019, 3 pgs, https://www.reddit.com/r/Reprap/comments/6qsoyd/use_an_accelerometer_to_measure_z_wobble/. |
Phillips Semiconductors, “The I2C-Bus Specification”, Version 2.1, Jan. 2000, 46 pgs. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 16/502,479, dated Dec. 11, 2019, 13 pgs. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 16/460,016, dated Sep. 12, 2019, 12 pgs. |
United States Patent and Trademark Office, “Non-Final Office Action,” issued in connection with U.S. Appl. No. 16/505,090, dated Sep. 10, 2019, 20 pgs. |
United States Patent and Trademark Office, “Notice of Allowance,” issued in connection with U.S. Appl. No. 16/502,479, dated Apr. 9, 2020, 9 pgs. |
United States Patent and Trademark Office, “Notice of Allowance,” issued in connection with U.S. Appl. No. 16/460,016, dated Mar. 25, 2020, 10 pgs. |
United States Patent and Trademark Office, “Notice of Allowance,” issued in connection with U.S. Appl. No. 16/505,090, dated Feb. 12, 2020, 9 pgs. |
United States Patent and Trademark Office, “Notice of Allowance,” issued in connection with U.S. Appl. No. 16/505,090, dated Oct. 22, 2019, 5 pgs. |
United States Patent and Trademark Office, “Notice of Allowance,” issued in connection with U.S. Appl. No. 16/728,207, dated Feb. 19, 2020, 19 pgs. |
United States Patent and Trademark Office, “Restriction Requirement,” issued in connection with U.S. Appl. No. 16/502,479, dated Aug. 15, 2019, 7 pgs. |
Number | Date | Country | |
---|---|---|---|
20210237435 A1 | Aug 2021 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/US2019/026152 | Apr 2019 | US |
Child | 16768651 | US | |
Parent | PCT/US2019/026133 | Apr 2019 | US |
Child | PCT/US2019/026152 | US | |
Parent | PCT/US2019/026161 | Apr 2019 | US |
Child | PCT/US2019/026133 | US | |
Parent | PCT/US2018/063631 | Dec 2018 | US |
Child | PCT/US2019/026161 | US |