Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
MEDIA SIZE DETERMINATIONS IN MEDIA TRAYS
Document Type and Number:
WIPO Patent Application WO/2022/075986
Kind Code:
A1
Abstract:
According to examples, an apparatus may include a processor and a memory on which are stored computer-readable instructions that, when executed by the processor, may cause the processor to access a signal received from a sensor. The signal may indicate a presence of a media between the sensor and a reflector. The reflector may be positioned in a media tray to detect a size of the media placed in the media tray. In some examples, the processor may extract a section of the signal that corresponds to a predetermined region of the reflector. The predetermined region of the reflector may exclude an edge of the reflector and the extracted section of the signal may exclude glitches corresponding to the edge of the reflector. In some examples, the processor may determine the size of the media in the media tray based on the extracted section of the signal.

Inventors:
LOW TONG NAM SAMUEL (SG)
NURSALIM JEFFREY (SG)
RAVI SURESH KUMAR (SG)
Application Number:
PCT/US2020/054597
Publication Date:
April 14, 2022
Filing Date:
October 07, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HEWLETT PACKARD DEVELOPMENT CO (US)
International Classes:
B65H7/00; B41J13/10; B65H7/02
Domestic Patent References:
WO2016163997A12016-10-13
Foreign References:
US20040056413A12004-03-25
US20140167344A12014-06-19
US20070063425A12007-03-22
Attorney, Agent or Firm:
SORENSEN, C. Blake et al. (US)
Download PDF:
Claims:
What is claimed is:

1. An apparatus comprising: a processor; and a memory on which are stored computer-readable instructions that when executed by the processor, cause the processor to: access a signal received from a sensor, the signal to indicate a presence of a media between the sensor and a reflector, wherein the reflector is positioned in a media tray to detect a size of the media placed in the media tray; extract a section of the signal that corresponds to a predetermined region of the reflector, wherein the predetermined region of the reflector excludes an edge of the reflector and wherein the extracted section of the signal excludes glitches corresponding to the edge of the reflector; and determine the size of the media in the media tray based on the extracted section of the signal.

2. The apparatus of claim 1 , wherein the instructions cause the processor to: extract the section of the signal to include a center of the reflector; determine whether a glitch is present in the extracted section of the signal; and based on a determination that the glitch is not present in the extracted section of the signal, use the extracted section of the signal to determine the size of the media.

3. The apparatus of claim 1, wherein a width of the extracted section of the signal is less than a width of the reflector.

4. The apparatus of claim 1 , wherein the instructions cause the processor to: extract the section of the signal to include a center of the reflector; determine whether a number of glitches in the extracted section is less than a predetermined number of glitches; and based on the number of glitches in the extracted section of the signal being less than the predetermined number of glitches, use the extracted section of the signal to determine the size of the media.

5. The apparatus of claim 4, wherein the instructions cause the processor to: determine a signal to noise ratio based on the number of glitches in the extracted section of the signal; and based on a determination that the signal to noise ratio is less than a predetermined level, access a second signal from the sensor indicative of the presence of the media between the sensor and the reflector, the second signal being based on a predetermined number of reads from the sensor.

6. The apparatus of claim 1 , wherein the instructions cause the processor to: position the reflector at a calibrated position to center the reflector relative to the sensor; reconfigure an input/output (I/O) pin from a general purpose input output (GPIO) mode to an analog to digital converter (ADC) mode; receive a second signal from the sensor at the I/O pin, the second signal being based on a predetermined number of reads from the reflector at the calibrated position; estimate a level of sensor health based on a voltage level of the second signal at the I/O pin; and based on the estimated level of sensor health, determine the size of the media based on the analog signal from the sensor or disable the sensor.

7. The apparatus of claim 1 , wherein the instructions cause the processor to: access a default center position of the reflector from a storage device; collect a set of data from the sensor, the set of data from the sensor being collected across the media tray to detect a positon of the reflector; compare the detected position of the reflector based on the collected set of data to the default center position; and based on a determination that the detected position of the reflector is within a predetermined range of the default center position, save the detected position of the reflector; and use the saved detected position of the reflector to move the reflector relative to the sensor for media size detection.

8. A method comprising: receiving, by a processor, a signal from a sensor indicating a presence of media in a media tray between a reflector and the sensor; extracting, by the processor, a first section of the signal, the first section of the signal corresponding to a first region of the reflector, the first region of the reflector including a center of the reflector and excluding an edge of the reflector; and determining, by the processor, a size of the media in the media tray based on the first section of the signal.

9. The method of claim 8, further comprising: extracting a second section of the signal, the second section corresponding to a second region of the reflector including the center of the reflector, the second section being wider than the first section; determining a signal to noise ratio of the signal based on a number of glitches in the second section of the signal; and determining the size of the media based on the second section of the signal.

10. The method of claim 8, further comprising: determining that a signal to noise ratio of the signal is greater than a predetermined level; and estimating a level of sensor health based on the signal to noise ratio relative to the predetermined level.

11. The method of claim 8, further comprising: reconfiguring an input/output (I/O) pin from a general purpose input output (GPIO) mode to an analog to digital converter (ADC) mode; estimating a level of sensor health based on a voltage level of a second signal at the I/O pin, the second signal being based on a predetermined number of reads from the reflector; and based on the estimated level of sensor health, determine the size of the media based on the second signal from the sensor or determine the size of the media based on user input.

12. The method of claim 8, further comprising: accessing a default center position of the reflector from a storage device; detecting an actual positon of the reflector based on data from the sensor, the data from the sensor being collected across the media tray; comparing the actual position of the reflector to the default center position of the reflector; and storing the actual position of the reflector as a calibrated position based on a determination that the actual position is within a predetermined range of the default center position, or recalibrating a position of the reflector with respect to the sensor based on a determination that the actual position is outside the predetermined range of the default center position.

13. The method of claim 8, further comprising: calibrating a position of the reflector with respect to the sensor; controlling a motor to move a movable media tray to align the reflector to the calibrated position; receiving the signal from the sensor at the calibrated position, the signal being a digital signal generated based on an analog signal output from the sensor; and extracting the first section from the digital signal, the first section excluding a section of the digital signal corresponding to an edge of the reflector.

14. A non-transitory computer readable medium on which is stored computer- readable instructions that, when executed by a processor, cause the processor to: access a signal from a sensor, the sensor being positioned relative to a reflector for detection of a size of media placed in a media tray; process the signal to filter glitches corresponding to an edge of the reflector; based on a determination that the signal includes glitches corresponding to a center of the reflector, process the signal to determine a signal to noise ratio for the glitches in the signal; and based on a determination that the signal to noise ratio is greater than a predetermined level, determine a level of sensor health based on a voltage level of the signal from the sensor.

15. The non-transitory computer readable medium of claim 14, wherein the instructions cause the processor to: extract a first section of the signal to filter glitches corresponding to the edge of the reflector, the first section corresponding to a first subsection of the reflector including a center of the reflector and the first subsection excluding the edge of the reflector; and extract a second section of the signal to determine the signal to noise ratio for glitches in the second section of the signal, the second section corresponding to a second subsection of the reflector including the center of the reflector, a width of the second subsection being greater than a width of the first subsection and less than a width of the reflector.

Description:
MEDIA SIZE DETERMINATIONS IN MEDIA TRAYS

BACKGROUND

[0001] Printers, such as inkjet printers, laser printers, photo printers, and/or the like, may include a media tray. The media tray may accommodate a plurality of different sizes of media.

BRIEF DESCRIPTION OF THE DRAWINGS

[0002] Features of the present disclosure are illustrated by way of example and not limited in the following figure(s), in which like numerals indicate like elements, in which:

[0003] FIG. 1 depicts a block diagram of an example apparatus that may determine a size of a media in a media tray based on an extracted section of a signal from a sensor;

[0004] FIG. 2 shows a block diagram of an example system within which the example apparatus depicted in FIG. 1 may be implemented;

[0005] FIG. 3A shows a diagram of example waveforms of a signal received from a sensor, which may indicate a presence of a media between the sensor and a reflector;

[0006] FIG. 3B shows a diagram of example waveforms including extracted sections of a signal received from a sensor, which may indicate a presence of a media between the sensor and a reflector;

[0007] FIG. 4 shows a flow diagram of an example method for extracting a section of a signal from a sensor, in which the extracted section may correspond to a center of a reflector and may exclude an edge of the reflector; and

[0008] FIG. 5 depicts a block diagram of an example non-transitory computer-readable medium that may have stored thereon computer-readable instructions to access a signal from a sensor for detection of a size of media and, based on a signal to noise ratio for glitches in the signal, determine sensor health based on the signal from the sensor.

DETAILED DESCRIPTION

[0009] For simplicity and illustrative purposes, the present disclosure is described by referring mainly to examples. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be readily apparent however, that the present disclosure may be practiced without limitation to these specific details. In other instances, some methods and structures have not been described in detail so as not to unnecessarily obscure the present disclosure.

[0010] Throughout the present disclosure, the terms “a” and “an” are intended to denote at least one of a particular element. As used herein, the term “includes” means includes but not limited to, the term “including” means including but not limited to. The term “based on” means based at least in part on.

[0011] In some example printers, sensors may sense a size of media placed in a media tray based on detection of reflectors mounted on the media tray. In some instances, the sensors used for media size detection may be sensitive to conditions and positions of the sensor and/or the reflectors mounted in the media tray, which may cause glitches in the sensor signals. The term glitch as used herein may be defined as a sudden, temporary change or irregularity in a level of a signal. For instance, a glitch in a digital signal may include a false, low logic level portion in a high logic level portion of the digital signal.

[0012] By way of particular example and for purposes of illustration, a sensitivity of the sensor may be affected by an angle (or flatness) at which the reflector is mounted relative to the sensor, variations in the relative positioning of the reflector to the sensor caused by movement of the media tray, degradation of components due to prolonged usage, deposits on the sensor/reflector such as dust, fibers, and/or aerosols, and/or the like. In some instances, glitches may be seen in the digital output of the sensor, which may cause the printer to misinterpret the glitches as detection of additional reflectors.

[0013] Disclosed herein are apparatuses, systems, methods, and computer-readable media in which a processor may perform a top level calibration to obtain an accurate center location of the reflectors. Using the calibrated center locations, the processor may obtain a signal from the sensor and may perform post-processing on the signal to improve an accuracy and reliability of the signal.

[0014] In some examples, the processor may process the signal for glitches to improve the accuracy of the sensor, for instance, by extracting a first section of the signal about a center of the reflector, which may exclude the edges of the reflectors. In this regard, the processor may filter out glitches that may be common at the edges of the reflectors.

[0015] In some examples, when glitches exist in the first section of the signal, the processor may extract a second section of the signal to determine a signal to noise (S/N) ratio associated with the glitches. In case the S/N ratio is greater than a predetermined level (e.g., 80%), the processor may determine that the signal based on the second section is accurate and may use the second section of the signal for reflector detection.

[0016] In some examples, for instance when the S/N ratio is less than the predetermined level, the processor may use signal voltage levels of the signal from the sensor to determine a health of the sensor. In this instance, the processor may reprogram a GPIO pin to an analog to digital converter (ADC) pin to sense a voltage of the signal from the sensor and may use the sensed voltage to determine the health of the sensor.

[0017] By enabling post-processing of sensor signals as discussed in the present disclosure, an accuracy of the reflector detection may be improved by reducing the effect of glitches that cause false readings. By improving the accuracy of the sensors, the apparatus may reduce print media and energy consumption by reducing the number of defective print jobs that may result from inaccurate media size detection. In some instances, the user experience may be enhanced through fewer defective print jobs. In some examples, the algorithm to improve the accuracy of the sensor may also be used to prolong the life of the media size sensor system.

[0018] Reference is first made to FIGS. 1, 2, 3A, and 3B. FIG. 1 shows a block diagram of an example apparatus 100 that may determine a size of a media in a media tray based on an extracted section of a signal from a sensor. FIG. 2 shows a block diagram of an example system 200 within which the example apparatus 100 depicted in FIG. 1 may be implemented. FIG. 3A shows a diagram of example waveforms 300 of a signal received from a sensor, which may indicate a presence of a media between the sensor and a reflector, and FIG. 3B shows a diagram of example waveforms 300 including extracted sections of a signal received from a sensor, which may indicate a presence of a media between the sensor and a reflector. It should be understood that the apparatus 100 depicted in FIG. 1 , the system 200 depicted in FIG. 2, and/or the waveforms 300 depicted in FIGS. 3A and 3B may include additional features and that some of the features described herein may be removed and/or modified without departing from the scopes of the apparatus 100, the system 200, and/or the waveforms 300.

[0019] In some examples, the apparatus 100 may be implemented in a printer, such as an inkjet printer, a laser printer, a photo printer, or the like. As shown, the apparatus 100 may include a processor 102 and a non-transitory computer-readable medium, e.g., a memory 110. The processor 102 may be a semiconductor-based microprocessor, a central processing unit (CPU), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), and/or other hardware device. Although the apparatus 100 is depicted as having a single processor 102, it should be understood that the apparatus 100 may include additional processors and/or cores without departing from a scope of the apparatus 100 and/or system 200. In this regard, references to a single processor 102 as well as to a single memory 110 may be understood to additionally or alternatively pertain to multiple processors 102 and/or multiple memories 110.

[0020] The memory 110 may be an electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. The memory 110 may be, for example, Read Only Memory (ROM), flash memory, solid state drive, Random Access memory (RAM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a storage device, an optical disc, or the like. The memory 110 may be a non-transitory computer-readable medium. The term “non-transitory” does not encompass transitory propagating signals.

[0021] As shown in FIG. 1 , the processor 102 may execute instructions 112-116 to determine a size of a media in a media tray based on an extracted section of a signal from a sensor. The instructions 112-116 may be computer- readable instructions, e.g., non-transitory computer-readable instructions. In other examples, the apparatus 100 may include hardware logic blocks or a combination of instructions and hardware logic blocks to implement or execute functions corresponding to the instructions 112-116.

[0022] The processor 102 may fetch, decode, and execute the instructions 112 to access a signal 302 received from a sensor 202 to detect a size of a media 204 placed in a media tray 206. The signal 302 from the sensor 202 may indicate a presence of the media 204 between the sensor 202 and a reflector 208. In some examples, the reflector 208 may be positioned at a predetermined position in the media tray 206 to detect a size of the media 204 placed in the media tray 206. In some instances, a plurality of reflectors 208 may be mounted in the media tray 206, in which each of the plurality of reflectors 208 may correspond to a different media size.

[0023] In some examples, the sensor 202 and the reflectors 208 may be mounted to face each other. For instance, the sensor 202 may be mounted on a surface of the printer above the media tray 206 and the reflectors 208 may be mounted on a surface of the media tray 206 to face the sensor 202. In some examples, the media tray 206 may be mounted on an input tray (not shown) of the printer. In some instances, a plurality of sensors 202 and corresponding reflectors 208 may be installed for detecting different media sizes. In some examples, when the media tray 206 is inserted in a seated positon, each of the sensors 202 and corresponding reflectors 208 may be aligned relative to each other. [0024] In some examples, the media tray 206 may be movable via a motor 210 under processor 102 control. In this regard, the media tray 206 may be coupled to the motor 210 via gears (not shown), and the processor 102 may control the motor 210 to drive the gears to move the media tray 206. In some examples, a single sensor 202 and a plurality of reflectors 208 may be installed, and the processor 102 may move the media tray 206 to align each of the reflectors 208 to the sensor 202. In some examples, the sensor 202 may be movable and the reflectors 208 may be fixed in position. In this instance, the processor 102 may control movement of the sensor 202 to be aligned with each of the reflectors 208.

[0025] In some examples, the processor 102 may move each of the reflectors 208 relative to the sensor 202 based on a calibrated positions 214 of the reflectors 208. The calibrated positions 214 may be stored on the memory 110. As depicted in FIG. 2, the system 200 may include a server 216 with which the apparatus 100 may be in communication via a network 217, and in some examples, the calibrated positions 214 may be stored on the server 216.

[0026] In some examples, the processor 102 may calibrate a position of each of the reflectors 208 in the media tray 206. In this regard, the processor 102 may access default center positions 212 of the reflectors 208 from a storage device, such as the memory 110, the server 216, and/or the like. In some examples, the processor 102 may cause the media tray 206 to be moved relative to the sensor 202. For instance, the processor 102 may move the media tray 206 to position the sensor 202 from an initial position to a final position to traverse a path over all of the reflectors 208 mounted on the media tray 206. The processor 102 may collect a set of data from the sensor 202 to detect a position of each of the reflectors 208 across the media tray 206.

[0027] In some examples, the processor 102 may compare the detected positions of the reflectors 208 based on the collected set of data to the default center positions 212. Based on a determination that the detected positions of the reflectors 208 are within a predetermined range of the default center positions 212, the processor 102 may save the detected positions of the reflectors 208 in the storage device. In some examples, the processor 102 may store the detected positions of the reflectors 208 as the calibrated positions 214. The processor 102 may move the reflectors 208 relative to the sensor 202 during media size detection based on the saved calibrated positions 214 of the reflectors 208.

[0028] In some examples, the processor 102 may access the signal 302 from the sensor 202 for each of the reflectors 208 at their respective calibrated positions 214 across the media tray 206. The processor 102 may move each of the reflectors 208 to be aligned with the sensor 202. The processor 102 may determine presence of media 204 at the locations of each of the reflectors 208 based on the signal 302 from the sensor 202. For instance, in a case where the media 204 is present, where the media 204 is covering the reflector 208, the processor 102 may determine that the media 204 is present based on a low logic level in the signal 302 for the reflector 208. In this instance, when the reflector 208 is associated with a particular size of media, the processor 102 may determine the size of the media 204 in the media tray 206 based on the signal 302.

[0029] As depicted in FIG. 3A, the processor 102 may receive the example waveforms 300 from the sensor 202. The waveforms 300 may include an analog signal 304 that may be directly output from the sensor 202 and the signal 302, which may be a digital signal generated based on the analog signal 304. In this regard, the analog signal 304 may be based on a level of photocurrent output from the sensor 202.

[0030] In some examples, the apparatus 100 may include an analog-to- digital-converter (ADC) circuit that may convert the analog signal 304 to a digital signal, such as the signal 302 as depicted in FIG. 3A. The analog signal 304 may be a raw signal output from the sensor 202 and a level or an amplitude of the analog signal 304 may correspond to a position of the sensor 202 relative to the reflector 208. By way of particular example and for purposes of illustration, the level of the analog signal 304 may fall based on detection of a leading edge of the reflector 208 and may rise based on detection of a trailing edge of the reflector 208, as illustrated in FIG. 3A. [0031] In some examples, the ADC circuit may convert the analog signal 304 into a digital signal. In this case, the ADC circuit may generate the signal 302 such that a voltage level of the signal 302 may rise to a high logic level corresponding to the leading edge of the reflector 208 and may fall to a low logic level corresponding to the trailing edge of the reflector 208. In this regard, a high logic level may indicate detection of the reflector 208, and thus a state in which the reflector 208 is not covered by the media 204. A low logic level of the signal 302 may indicate non-detection of reflector 208 at the calibrated position 214, and may correspond to a state in which the reflector 208 is covered by the media 204. While particular levels of the analog signal 304 and the signal 302 have been described relative to specific sensor conditions, it should be understood that the levels of the analog signal 304 and/or the signal 302 may be changed based on different implementations of the sensor 202 and the ADC circuit. For instance, a low logic level of the signal 302 may indicate detection of the reflector 208.

[0032] The processor 102 may fetch, decode, and execute the instructions 114 to extract a section 306 of the signal 302 that may correspond to a predetermined region of the reflector 208. In some examples, the predetermined region of the reflector 208 may exclude an edge 308 of the reflector 208. In this regard, the extracted section 306 of the signal 302 may exclude a section 310 of the signal 302 corresponding to the edge 308 of the reflector 208, and thus may exclude glitches 312 corresponding to the edge 308 of the reflector 208.

[0033] By way of particular example and for purposes of illustration, as illustrated in FIG. 3B, the glitches 312 may be a sudden spike in the signal 302, for instance, from a high logic level to a low logic level, or vice versa. As depicted in FIG. 3A, the signal 302 may include a signal 302A that may include a glitch 312 in a section 310 of the signal corresponding to an edge 308 of the reflector 208. In some examples, a number of glitches 312 may be greater at the section 310 of the signal 302 corresponding to the edge 308 of the reflector 208 than in other sections of the reflector 208. For instance, at the edge 308 of the reflector 208, the analog signal 304 may transition from a high voltage to a low voltage. In this instance, transistors in the ADC circuit may switch logic states, and reflector tilt angle variations, unevenness of the reflector 208, and/or the like during switching may cause glitches 312 at the section 310, particularly during a period in which the analog signal 304 is in transition and not yet stable. In some examples, decreased sensitivity of the sensors 202 due to prolonged use, foreign deposits, and/or the like may result in an increased number of glitches 312.

[0034] In some examples, the processor 102 may extract the section 306 of the signal 302, in which the extracted section 306 includes a portion of the signal 302 that corresponds to a center 314 of the reflector 208. In this regard, the processor 102 may position the sensor 202 at the center 314 of the reflector 208 using the calibrated position 214, and may access the signal 302 based on this positioning of the reflector 208.

[0035] In some examples, the extracted section 306 of the signal 302 may have a width that is less than a width of the reflector 208. By way of particular example and for purposes of illustration, a width of the extracted section 306 may be about 30% of the width of the reflector 208, for instance to exclude glitches 312 in the section 310 of the signal 302 corresponding to the edge 308 of the reflector 208. The width of the extracted section 306 may be determined through experimentation, testing, modeling, prior knowledge, and/or the like.

[0036] The processor 102 may fetch, decode, and execute the instructions 116 to determine a size of the media 204 in the media tray 206 based on the extracted section 306 of the media 204. In some examples, the processor 102 may determine whether a glitch 312 is present in the extracted section 306 of the signal 302 and, based on a determination that a glitch 312 is not present in the extracted section 306 of the signal 302, the processor 102 may use the extracted section 306 of the signal 302 to determine the size of the media 204. In some examples, when a glitch 312 is found in the extracted section 306 of the signal 302, for instance as in signal 302B as depicted in FIG. 3A, the processor 102 may apply a different post-processing method on the signal 302 to increase the reliability of the signal 302.

[0037] In some examples, the processor 102 may extract a section 316 of the signal 302 to include the center 314 of the reflector 208. The processor 102 may determine whether a number of glitches in the extracted section is less than a predetermined number of glitches. In some examples, the processor 102 may determine a S/N ratio of the extracted section 316 based on the number of glitches 312 found in the extracted section 316 of the signal 302.

[0038] In some examples, the extracted section 316 of the signal 302 may have a width that is less than a width of the reflector 208, and in some examples, the width of the extracted section 316 may be greater than the width of the extracted section 306. By way of particular example and for purposes of illustration, a width of the extracted section 316 may be about 70% of the width of the reflector 208 in order to exclude glitches 312 at the edges 308 of the reflector 208 while increasing a sample size of the signal 302 for a S/N ratio calculation. The width of the extracted section 305 may be determined through experimentation, testing, modeling, prior knowledge, and/or the like.

[0039] Based on a determination that the number of glitches 312 in the extracted section 316 of the signal 302 is less than the predetermined number of glitches, or based on a determination that the S/N ratio is greater than a predetermined level, the processor 102 may use the extracted section 316 of the signal 302 to determine the size of the media 204.

[0040] In some examples, based on a determination that the S/N ratio is less than the predetermined level, the processor 102 may access a second signal from the sensor 202 indicative of the presence of the media 204 between the sensor 202 and the reflector 208. In some examples, the predetermined level of the S/N ratio may be about 80%. The predetermined level of the S/N ratio for the signal 302 may be determined through experimentation, testing, modeling, prior knowledge, and/or the like.

[0041] In this regard, the second signal may include a different anomaly, such as a degraded voltage level, as in signal 302C as depicted in FIG. 3A. In some examples, the processor 102 may use the second signal to apply a different post-processing method to increase the reliability of the signal 302.

[0042] In some examples, the signal 302C may have a voltage level that is lower than during normal operation. In some examples, the processor 102 may use the voltage level of the signal 302C to estimate a level of sensor health. In some instances, a level of sensor health below a predetermined level may indicate that the signal 302 from the sensor 202 includes noise, such as ringing or oscillations, which may reduce the reliability of the digital signal. For instance, a degraded sensor may output a lower level of photocurrent, such as in an analog signal 304A depicted in FIG. 3A, which in turn may cause the ADC circuit to output signals having lower voltage levels, such as the signal 302C. In this instance, the processor 102 may use the detected voltage level of the signal 302C to determine the level of sensor health, to remove the unwanted ringing, and/or to turn off the sensor 202.

[0043] In this regard, the processor 102 may position the reflectors 208 at the calibrated positions 214 to center the reflectors 208 relative to the sensor 202. In some examples, the processor 102 may reconfigure a controller 218 to accommodate the signal 302C having lower voltage levels. In this instance, the controller 218 may have an input/output (I/O) pin 220 that may be reprogrammable. During normal operation, the I/O pin 220 may operate in a general purpose input output (GPIO) mode when the controller 218 is implemented to process the signal 302 having normal voltage levels, such as when processing the signal 302A and the signal 302B. In order to process the signal 302C from the sensor 202 having lower voltage levels, the processor 102 may reconfigure the I/O pin 220 from the GPIO mode to an analog-to-digital converter (ADC) mode. In some examples, the controller 218 may be a part of the processor 102, or alternatively or additionally, the controller 218 may be implemented as a separate device from the processor 102.

[0044] In some examples, the signal 302C may be based on a predetermined number of reads from each of the reflectors 208. In some examples, the processor 102 may align each reflector 208 to the sensor 202 based on the calibrated positions 214, and may obtain at each of the calibrated positions 214 the predetermined number of reads from the sensor 202.

[0045] The processor 102 may estimate a level of sensor health based on a voltage level of the signal 302C at the I/O pin 220. By way of particular example and for purposes of illustration, based on a determination that the voltage level of the signal 302C is greater than a first level, for instance above 3.1V, the processor 102 may determine the size of the media 204 based on the signal 302C from the sensor 202. In some examples, when the voltage level of the signal 302C is at a second level, for instance between 1.5V-2.7V, the processor 102 may display a notification to the user indicating the status of the sensor 202 and receive an input to continue using the sensor 202. In some examples, when the voltage level of the signal 302C is at a third level, for instance below 1.5V, the processor 102 may disable the sensor 202, in which case media size information may be manually input to the printer. The different voltage levels corresponding to the levels of sensor health may be determined through experimentation, testing, modeling, prior knowledge, and/or the like.

[0046] Various manners in which the processor 102 may operate are discussed in greater detail with respect to the method 400 depicted in FIG. 4. FIG. 4 depicts a flow diagram of an example method for extracting a section 306, 316 of a signal 302 from a sensor 202, in which the extracted section 306, 316 may correspond to a center 314 of a reflector 208 and may exclude an edge 308 of the reflector 208. It should be understood that the method 400 depicted in FIG. 4 may include additional operations and that some of the operations described therein may be removed and/or modified without departing from the scope of the method 400. The description of the method 400 is made with reference to the features depicted in FIGS. 1 , 2, 3A, and 3B for purposes of illustration.

[0047] At block 402, the processor 102 may receive a signal 302 from a sensor 202 indicating a presence of a media 204 in a media tray 206 between a reflector 208 and the sensor 202. The signal 302 may be a digital signal generated in an ADC circuit based on an analog signal 304 from the sensor 202. In some examples, the signal 302 may have a high logic state corresponding to detection of a reflector 208, which may correspond to a state in which the media 204 is not covering the reflector 208.

[0048] At block 404, the processor 102 may extract a first section of the signal 302, such as the section 306 depicted in FIG. 3B. In some examples, the first section of the signal 302 may correspond to a first region of the reflector 208, which may include a center 314 of the reflector 208 and which may exclude an edge 308 of the reflector 208.

[0049] At block 406, the processor 102 may determine a size of the media 204 in the media tray 206 based on the first section of the signal 302. In some examples, based on a determination that the first section of the signal 302 does not include a glitch 312 or does not include more than a predetermined number of glitches 312, the processor 102 may use the first section of the signal 302 to determine the size of the media 204.

[0050] In some examples, based on a determination that the first section of the signal 302 includes a glitch 312 or that the first section of the signal includes more than the predetermined number of glitches 312, the processor 102 may extract a second section of the signal 302, such as the section 316 depicted in FIG. 3B. In this regard, the second section may correspond to a second region of the reflector 208 including the center 314 of the reflector 208. In some examples, the second section may be wider than the first section. Both the first section and the second section may exclude the section 310 of the signal 302 corresponding to an edge 308 of the reflector 208, and as such, the glitches 312 that may be present in the section 310 of the signal 302 corresponding to the edge 308 of the reflector 208 may be filtered out.

[0051] In some examples, the processor 102 may determine a S/N ratio of the signal 302 based on a number of glitches 312 in the second section of the signal 302. Based on the determined S/N ratio, the processor 102 may determine the size of the media 204 based on the second section of the signal 302.

[0052] In some examples, the processor 102 may determine that the S/N ratio of the signal 302 is greater than a predetermined level. In this regard, the processor 102 may estimate a level of sensor health based on the S/N ratio relative to the predetermined level.

[0053] In some examples, the processor 102 may reconfigure an I/O pin 220 from a GPIO mode to an ADC mode. The processor 102 may estimate a level of sensor health based on a voltage level of the signal 302 at the I/O pin 220. In some examples, based on the estimated level of sensor health, the processor 102 may determine the size of the media 204 based on the signal 302 from the sensor 202 or the processor 102 may determine the size of the media 204 based on user input.

[0054] In some examples, the processor 102 may calibrate positions of the reflectors 208. The processor 102 may access a default center position 212 of the reflector 208 from a storage device, such as the memory 110 at the apparatus 100, a memory at the server 216, and/or the like. The processor 102 may detect an actual position of the reflector 208 based on data from the sensor 202. In some instances, the processor 102 may collect data from the sensor 202 across a width of the media tray 206 and may compare the actual position of the reflector 208 to the default center position 212 of the reflector 208. In some examples, the processor 102 may store the actual position of the reflector 208 as a calibrated position 214 based on a determination that the actual position is within a predetermined range of the default center position 212. In some examples, the processor 102 may recalibrate a position of the reflector 208 with respect to the sensor 202 based on a determination that the actual position is outside of the predetermined range of the default center position 212.

[0055] In some examples, the processor 102 may control a motor 210 to move a movable media tray, such as the media tray 206 depicted in FIG. 2, to align the reflector 208 to the calibrated position 214. The processor 102 may receive the signal 302 from the sensor 202 at the calibrated position 214. In some examples, the signal 302 may be a digital signal generated based on an analog signal 304 output from the sensor 202. The processor 102 may extract the first section from the digital signal. In some examples, the first section may exclude a section 310 of the digital signal corresponding to an edge 308 of the reflector 208.

[0056] Some or all of the operations set forth in the method 400 may be included as utilities, programs, or subprograms, in any desired computer accessible medium. In addition, the method 400 may be embodied by computer programs, which may exist in a variety of forms both active and inactive. For example, they may exist as computer-readable instructions, including source code, object code, executable code or other formats. Any of the above may be embodied on a non-transitory computer-readable storage medium.

[0057] Examples of non-transitory computer-readable storage media include computer system RAM, ROM, EPROM, EEPROM, and magnetic or optical disks or tapes. It is therefore to be understood that any electronic device capable of executing the above-described functions may perform those functions enumerated above.

[0058] Turning now to FIG. 5, there is shown a block diagram of a non- transitory computer-readable medium 500 that may have stored thereon computer-readable instructions to access a signal from a sensor for detection of a size of media and, based on a signal to noise ratio for glitches in the signal, determine sensor health based on the signal from the sensor. It should be understood that the computer-readable medium 500 depicted in FIG. 5 may include additional instructions and that some of the instructions described herein may be removed and/or modified without departing from the scope of the computer-readable medium 500 disclosed herein. The computer-readable medium 500 may be a non-transitory computer-readable medium. The term “non- transitory” does not encompass transitory propagating signals.

[0059] The computer-readable medium 500 may have stored thereon computer-readable instructions 502-508 that a processor, such as the processor 102 depicted in FIGS. 1-2, may execute. The computer-readable medium 500 may be an electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. The computer-readable medium 500 may be, for example, Random-Access memory (RAM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a storage device, an optical disc, or the like.

[0060] The processor may fetch, decode, and execute the instructions 502 to access a signal 302 from a sensor 202. The sensor 202 may be positioned relative to a reflector 208 for detection of a size of media 204 placed in a media tray 206.

[0061] The processor may fetch, decode, and execute the instructions 504 to process the signal 302 to filter glitches 312 corresponding to an edge 308 of the reflector 208. In some examples, the processor may extract a first section of the signal 302, such as the section 306 depicted in FIG. 3B, to filter glitches 312 corresponding to the edge 308 of the reflector 208. In this regard, the first section may correspond to a first subsection of the reflector 208 including a center 314 of the reflector 208 and the first subsection may exclude the edge 308 of the reflector 208.

[0062] The processor may fetch, decode, and execute the instructions 506 to process the signal 302 to determine a S/N ratio for the glitches 312 in the signal 302 based on a determination that the signal 302 includes glitches 312 corresponding to a center 314 of the reflector 208. In some examples, the processor may extract a second section of the signal 302 to determine the S/N ratio for glitches 312 in the second section of the signal 302. In this regard, the second section may correspond to a second subsection of the reflector 208 including the center 314 of the reflector 208. In some examples, a width of the second subsection may be greater than a width of the first subsection and may be less than a width of the reflector 208.

[0063] The processor may fetch, decode, and execute the instructions 508 to determine a level of sensor health based on a voltage level of the signal 302 from the sensor 202 based on a determination that the S/N ratio is greater than a predetermined level.

[0064] Although described specifically throughout the entirety of the instant disclosure, representative examples of the present disclosure have utility over a wide range of applications, and the above discussion is not intended and should not be construed to be limiting, but is offered as an illustrative discussion of aspects of the disclosure.

[0065] What has been described and illustrated herein is an example of the disclosure along with some of its variations. The terms, descriptions and figures used herein are set forth by way of illustration and are not meant as limitations. Many variations are possible within the scope of the disclosure, which is intended to be defined by the following claims - and their equivalents - in which all terms are meant in their broadest reasonable sense unless otherwise indicated.