Patent Description:
The present invention is disclosed in the appended claims.

Advantageous embodiments are disclosed in the dependent claims.

The present invention further provides a non-transitory machine-readable medium disclosed in the appended claim <NUM>.

One or more fans can be utilized in a computing system to provide fluid flow management to computing components in the computing system. Such fans can include a plurality of pins that can receive various signals in the course of operating the fan. The signals may be provided to the fan from an external controller such as a fan control component. In the course of operation, the fan or fans of the computing system may encounter issues such as degraded performance, failures, or other issues that can give rise to sub-optimal fan performance.

In order to remedy these and other issues, troubleshooting measures may be taken to determine a cause of the issues encountered by the fan or fans. Once the cause of the issue(s) is determined, the fan may be repaired, or the faulty fan may be removed, and a new fan may be installed. However, determining the cause of the issues can, in some approaches, include physical inspection of the fan(s) to determine information corresponding to the fan(s).

Physical inspection of the fan(s) can be undesirable, however, because in some approaches, physical inspection of the fan(s) can include a user or technician traveling to the location of the computing system in which the fan(s) is deployed. This can further include shutting down the computing system in which the fan(s) is deployed while the physical inspection takes place, which can incur system downtime and/or loss of computing resources to users of the computing system. These undesirable outcomes can incur costs in the form of technician compensation for time in physically inspecting the fans, as well as costs in the form of computing downtime, which can affect users of the computing system in a negative manner.

In contrast, examples described herein can provide apparatuses, methods, and/or machine-readable media that can allow for remote determination of information corresponding to the fan(s) in a computing system. For example, examples herein can allow for a communication sequence to be carried out between a fan and a fan control component in which information corresponding to the fan is transferred from the fan. The information can be used to track and/or analyze fan failures, among other things.

In some examples, the information corresponding to the fan can be utilized to predict fan errors or faults and/or may be used to determine pre-failure information for the fan. For example, if it becomes known that a particular lot of fans from a particular vendor are experiencing problems or issues, the information corresponding to the fan could be polled to take preemptive action to remedy potential faults in the fans before they actually occur. Such preemptive action could be taken, for example in response to a recall notice from the vendor, or could be based on knowledge that fans that were made at certain times or by certain vendors are more prone to certain faults or issues.

In some examples, as described herein, a specific duty cycle value or range of duty cycle values for a pulse width modulation (PWM) signal may be reserved for use in communicating an instruction to the fan to transfer information about the fan to an external location such as a fan control component. For example, the fan may be configured to interpret the duty cycle of the PWM signal exceeding a threshold value of the total PWM range that the fan is capable of receiving as such an instruction. Responsive to receipt of PWM signals whose duty cycle exceeds this threshold value (which may be a percentage of the total PWM range corresponding to the fan and/or a PWM value that corresponds to a particular revolutions per minute (RPM) value the fan(s) is to operate at), the fan may transfer information corresponding to the fan to an external location such as a fan control component. As used herein, a "PWM signal" refers to a pulse width modulated signal that is asserted on a pin of a fan to control a speed at which the fan operates in some instances and is asserted on a pin of a fan to initiate a transfer of data from the fan in other instances.

This can allow for information corresponding to the fan to be accessed remotely without the assistance of a technician, for example. Further, by utilizing existing pins of the fan to perform various aspects of the present disclosure, costly increases in connector size and/or redesign of the fan(s) to add additional pins or other communications channels may be avoided, for example. In addition, by selecting the threshold value at which a PWM signal can initiate the transfer of information corresponding to the fan(s), the chance that the fan will misinterpret the signal as a signal to perform a different operation can be minimized or eliminated. For example, by reserving a particular range of PWM signal values to initiate the transfer of information that is different from a range of PWM signal values that are utilized to operate the fan, it may be possible to ensure a dichotomy between operation of the fan and transfer of information from the fan.

Examples of the disclosure include apparatuses, machine-readable media, methods, and systems related to a pulse width modulation fan. In some examples, an apparatus can include a fan including a control pin. The fan may receive a pulse width modulated (PWM) signal at the control pin. The fan may further control a speed of the fan based on a duty cycle of the PWM signal when the PWM signal is in a first range and, responsive to the duty cycle of the PWM signal being in a second range, transmit information corresponding to the fan to an external controller.

<FIG> illustrates a block diagram in the form of an example apparatus <NUM> including a fan <NUM> consistent with the disclosure. The fan <NUM> can include a plurality of pins <NUM>, <NUM>, <NUM>, and <NUM> to receive and/or transmit various signals in the course of operation. The fan <NUM> can include control circuitry <NUM> to control operation of the fan <NUM>. The control circuitry can include logic, for example in the form of a field programmable gate array or application specific integrated circuit that can monitor the pins <NUM>, <NUM>, <NUM>, and <NUM> of the fan <NUM> to determine characteristics of signals asserted to the pins <NUM>, <NUM>, <NUM>, and/or <NUM> to control operation of the fan.

In some examples, a first pin <NUM> can be a PWM pin to receive PWM signals from an external source such as the fan control component <NUM> illustrated in <FIG>, herein. As used herein, a "PWM pin" is a pin of the fan <NUM> that is configured to receive PWM signals asserted thereto from an external source. For example, a PWM pin (e.g., the first pin <NUM>) can receive a pulse width modulated signal that is asserted on PWM pin of the fan <NUM> to control a speed at which the fan <NUM> operates in some instances and is asserted on a pin of the fan <NUM> to initiate a transfer of data from the fan <NUM> in other instances. In general, the fan <NUM> may control its speed based on the current duty cycle of PWM signal received at the first pin <NUM>. However, a specific range of duty cycles (called the "second PWM range" or "second range of duty cycles of the PWM signal" below) may be reserved for requesting fan information rather than for controlling fan speed. For example, the first pin <NUM> can receive a signal in a first PWM range (e.g., a duty cycle of the PWM signal being in a first range) to cause the fan to operate in a normal mode of operation (e.g., a mode of operation in which the fan is on or off to provide fluid flow management to a computing component or computing system), and the first pin <NUM> can receive a signal in a second PWM range (e.g., a duty cycle of the PWM signal being in a second range) to initiate a data transfer operation using a different pin (e.g., the second pin <NUM>). The first pin <NUM> can be referred to herein as a "control pin.

In general, PWM signals contain a train of pulses in repeating pulse periods, and convey information by controlling the durations (widths) of the pulses. The "duty cycle" of a given pulse is the proportion of the total pulse period during which the pulse is asserted. For example, <FIG> illustrates an example PWM signal <NUM> (or pulse <NUM>) that has a duty cycle of around <NUM>%, meaning that the pulse is asserted for around <NUM>% of the period. Since the PWM signal is made up of these pulses, the PWM signal may also be referred to as having a duty cycle, which at any given moment is equal to the duty cycle of the most recently received pulse (or collection of pulses).

In some examples, the first PWM range and the second PWM range can correspond to different ranges of duty cycles. For example, the first PWM range can correspond to fan duty cycles of <NUM>% or less, while the second PWM range can correspond to fan duty cycles between <NUM>% and <NUM>%, as described in more detail in connection with <FIG>, herein. Examples are not so limited, however, and the first PWM range and the second PWM range can correspond to different ranges of fan duty cycles than those explicitly enumerated above.

The second pin <NUM> can be a fault signal pin, which can be used in some modes of operation to transmit a fault signal from the fan <NUM> and in other modes of operation to transmit information corresponding to the fan <NUM>, as described in more detail, herein. For example, responsive to receipt, by the first pin <NUM>, of a PWM signal within a first PWM range, the second pin <NUM> can either remain dormant (e.g., may not carry a signal to circuitry external to the fan), or may carry a fault signal from the fan <NUM> to external circuitry such as the fan control component <NUM> illustrated in <FIG>, herein. In contrast, responsive to receipt, by the first pin <NUM>, of a PWM signal within a second PWM range, the second pin <NUM> can carry information corresponding to the fan <NUM> to external circuitry.

The information corresponding to the fan <NUM> that may be carried by the second pin <NUM> in response to receipt of the PWM signal within the second PWM range by the first pin <NUM> can include, but is not limited to static data and/or telemetry data. As used herein, "static data" refers to data that could be provided as part of a manufacturer's data sheet and/or could be preprogrammed into the fan <NUM> prior to sale of the fan. Non-limiting examples of static data include an identification of the manufacturer or vendor, a revision number, a manufacturing date code, a barcode, a serial number, a nominal fan operation voltage, maximum current rating data for the fan, maximum RPM data for the fan, and/or other information that may be used to identify or otherwise characterize the fan <NUM>.

As used herein, "telemetry data" refers to data that may be sensed or aggregated by the fan over time, such as environmental data and/or aggregated performance data. Non-limiting examples of telemetry data include fan bearing lifetime data, airflow data (e.g., cubic feet per minute data), pressure data, humidity data, temperature data, a number of faults experienced by the fan <NUM>, how many hours the fan <NUM> has been in operation, an amount of power consumed by the fan over time and/or instantaneously, and/or other information that can be aggregated over time by the fan <NUM>. In some examples, the telemetry data can be used to optimize performance of the fan <NUM>. The telemetry data can be collected by a sensor associated with the fan, such as the sensor <NUM> illustrated in <FIG>, herein.

A third pin <NUM> can be a voltage pin to receive a power signal (e.g., +<NUM> volts, +<NUM> Volts, +<NUM> Volts, etc.) to provide power to the fan <NUM>. In some examples, a fourth pin <NUM> can be a ground pin to provide a ground reference potential to the fan <NUM>.

As noted above, in some examples the fan <NUM> may have one or more sensors <NUM> associated therewith. Such an example is illustrated in <FIG>. The apparatus <NUM> illustrated in <FIG> may be the same as the apparatus <NUM> illustrated in <FIG>, except for the addition of the sensor(s) <NUM>, and thus the same reference numbers are used herein to refer to their similar components. The components of the apparatus <NUM>' that are the same as the components of the apparatus <NUM> will not be described again, to avoid duplicative description. The fan <NUM> and/or the sensor(s) <NUM> can be separately considered an "apparatus.

The sensor <NUM> can be a device and/or sub-system that can detect events or changes in its environment or environmental parameters (such as temperature, pressure, etc.) and store and/or transfer the information to another component. Specifically, the sensor(s) <NUM> may collect some or all of the telemetry data described above (or raw data from which the telemetry data may be deduced). The sensor(s) <NUM> may store data sensed thereby, send the sensed data to the control circuitry <NUM> to be stored, send the sensed data to an external controller, or some combination thereof. As discussed above, the telemetry data collected by the sensor <NUM> can include data that may be sensed or aggregated by the fan <NUM> over time, such as environmental data and/or aggregated performance data. In some examples, the sensor <NUM> can send information such as telemetry information collected thereby to a fan control component such as fan control component <NUM> illustrated in <FIG>, herein.

<FIG> illustrates a block diagram in the form of an example apparatus <NUM> including a fan control component <NUM> consistent with the disclosure. The fan control component <NUM> may be a fan controller that is external to the fan <NUM> and that controls the fan <NUM> by providing power to and/or sending signals to the fan <NUM>, for example via the pins <NUM>, <NUM>, and <NUM>. The fan control component <NUM> may also receive information from the fan <NUM>, for example, via the pin <NUM>. For example, the fan control component <NUM> may be a fan controller and/or baseboard monument controller (BMC) of a computing device, such as a server.

The fan control component <NUM> may include control logic <NUM> that is configured to perform (or cause performance of) the operations described herein in relation of the fan control component <NUM>, including transmission of signals to a fan to initiate transfer of information from the fan and receipt and/or processing of the information received in response to the transmitted signals. For example, the fan control component <NUM> can be configured to perform tasks and/or functions to control operation a fan (e.g., fan <NUM> illustrated in <FIG>, herein), receive information corresponding to a fan, process the received information, analyze the received information, and/or cause the received information to be tabulated and/or displayed (e.g., by a graphical user interface), as described in more detail, herein. In some examples, the information corresponding to the fan <NUM> can be processed to determine statistical, analytical, or big data information corresponding to the fan <NUM>.

The control logic <NUM> may include a processing resource and instructions executable thereby (e.g., computer code, firmware, software, machine code, etc.), or dedicated hardware/circuitry, or any combination thereof. A "processing resource" may include any circuitry that is capable of executing machine readable instructions, such as a processor, baseboard management controller (BMC), CPU, system-on-chip (SoC), digital signal processer, etc. "Dedicated hardware/circuitry" may include any hardware and/or circuitry that is configured to perform specific functions, such as an application specific integrated circuit (ASIC), field-programmable gate array (FPGA), complex programmable logic device (CPLD), etc..

In some examples, the fan control component <NUM> can be operable to transmit a pulse width modulated signal having a particular duty cycle to a particular signal pin of a fan, such as the fan <NUM> illustrated in <FIG>, herein. The particular signal pin of the fan can be a PWM signal pin of the fan such as the first pin <NUM> illustrated in <FIG>, herein. The PWM signal having the particular duty cycle can comprise a fan information request signal such as the fan information request signal <NUM> illustrated in <FIG>, herein, which can operate as a request and/or instruction to the fan for information corresponding to the fan.

The particular (e.g., second) PWM range can correspond to an upper PWM range receivable by the fan. For example, the particular PWM range can correspond to an upper <NUM>% of the total PWM signal range receivable by the fan, as discussed in more detail in connection with <FIG>, herein. Examples are not so limited, however, and in some examples, the particular PWM range can correspond to a particular PWM digital encoding values such as <NUM> - <NUM> PWM. Further, in some examples, the particular PWM range can correspond to greater than (or less than) the upper <NUM>% of the total PWM signal range receivable by the fan. For example, the particular PWM range can correspond to <NUM>% of the upper range, <NUM>% of the upper range, etc..

The fan control component <NUM> can be operable to receive information corresponding to the fan in response to transmission of the signal. For example, the fan control component <NUM> can be operable to receive information corresponding to the fan in response to transmission of the signal having a PWM range corresponding to the particular duty cycle to a particular signal pin of a fan. As described above, the information corresponding to the fan can include information regarding the fan's vendor, manufacture date, serial number, bar code, revision number, and/or other information that may be used to identify or otherwise characterize the fan.

The fan control component <NUM> can, in some examples, cause a diagnostic operation to be performed on the fan based on the information corresponding to the fan. For example, the fan control component <NUM> can process the information corresponding to the fan to analyze the fan's performance to track, analyze, troubleshoot, or otherwise tally and/or remedy faults or performance issues of the fan.

In some examples, the fan control component <NUM> can transmit a signal having a duty cycle that is in a particular range that corresponds to a duty cycle that is different than the particular duty cycle described above. For example, the fan control component <NUM> can transmit a signal that has a duty cycle that is within a lower PWM range than the particular PWM range. The lower PWM range can, in some examples, be a PWM range that is lower than <NUM>% of the total PWM range receivable by the fan. In some examples, receipt of the signal that has the duty cycle within the lower PWM range than the particular PWM range can cause the fan to operate in a normal cooling mode of operation. In some examples, in the normal cooling mode of operation, the fan controls its speed based on the duty cycle of the PWM signal. Thus, the PWM signal may be considered to be a fan speed control signal when its duty cycle is outside the particular PWM range, and may be considered to be a request or instruction to transmit information about the fan when its duty cycle is inside the particular PWM range.

<FIG> illustrates a block diagram in the form of an example system <NUM> including the fan <NUM> and the fan control component <NUM>. The fan <NUM> is an instance of the fan <NUM> illustrated and described in connection with <FIG>, while the fan control component <NUM> is an instance of the fan control component <NUM> illustrated and described in connection with <FIG>. In some examples, the fan <NUM> or the fan control component <NUM> can separately be considered an "apparatus.

The fan <NUM> and the fan control component <NUM> can be communicatively coupled via a communication link <NUM>. The communication link <NUM> can be a physical communication link, such an interface, wire, or other physical communication path to provide communication between the fan <NUM> and the fan control component <NUM>. Although shown as a single entity, the communication link <NUM> can comprise multiple communication links to, for example, facilitate transmission and receipt of signals to the pins <NUM>, <NUM>, <NUM>, and <NUM> of the fan <NUM> illustrated in <FIG>, herein.

Although shown as discrete components in <FIG>, the fan <NUM> and the fan control component <NUM> need not be discrete and can, for example, be disposed or deployed on a single component such as an integrated circuit or contiguous printed circuit board.

<FIG> illustrates a curve <NUM> depicting an example of revolutions per minute (RPM) versus duty cycle of a PWM signal consistent with the disclosure. Specifically, the fan <NUM> may be configured to control its speed (i.e., RPM) based on the duty cycle of the PWM signal received at the first pin <NUM>, and the curve in <FIG> illustrates one possible relationship between RPM and duty cycle that the fan <NUM> may be configured to use. As shown in <FIG>, a range of RPMs for a fan (e.g., the fan <NUM> illustrated in <FIG>) are shown on the y-axis of the curve <NUM>, while the total range of possible duty cycles for the PWM signal that can be provided to the fan are is shown on the x-axis of the curve <NUM>.

As shown in <FIG>, in some examples, a first PWM range <NUM> corresponds to duty cycles between around <NUM>% and <NUM>% of a total PWM range receivable by the fan. A second PWM range <NUM> corresponds to PWM signals between around <NUM>% and <NUM>% of the total PWM range receivable by the fan. A Max RPM (e.g., a maximum RPM at which the fan can operate) corresponds to the highest duty cycle value of the second PWM range <NUM> (e.g. about <NUM>%), but not the highest possible duty cycle value (e.g., <NUM>%). This is in contrast to many other approaches, in which the MAX RPM corresponds to the highest possible duty cycle value. A Min PRM (e.g., a minimum RPM at which the fan can operate, which may be greater than zero RPM) corresponds to a lowest duty cycle value of the second PWM range <NUM> (e.g., about <NUM>%), which is not necessarily the lowest possible duty cycle value (<NUM>%). Thus, various RPMs at which the fan can operate correspond to duty cycle values that fall within the first PWM range <NUM>.

In some examples, the lowest PWM ranges shown in the curve (e.g., between <NUM>% PWM and around <NUM>% PWM) can correspond to a grace period during which a PWM signal is asserted to the fan, but the fan has not yet began operating. Some approaches have proposed utilizing this lowest range to initiate a transfer of information corresponding to the fan, however, such approaches could eliminate the grace period, which can lead to an increased chance that the fan misinterprets a fan information request signal. This can lead to inaccuracies or other problems in reliably initiating a transfer of information from the fan.

In some examples, the second PWM range <NUM> can correspond to the particular PWM range described in connection with <FIG>, herein. For example, the second PWM range <NUM> can correspond to a duty cycle of a PWM signal being in a range that, when asserted to a PWM signal pin (e.g., pin <NUM> illustrated in <FIG>, herein), can cause the fan to transmit information corresponding to the fan via a fault signal pin (e.g., pin <NUM> illustrated in <FIG>, herein).

By reserving the second PWM range <NUM> for initiation of an operation to transfer information corresponding to the fan, it may be possible to reduce or eliminate a chance that the fan either continues normal operation instead of initiating the transfer of information, or it may be possible to reduce or eliminate transmission of a fault (e.g., an error) signal being transmitted from the fan.

<FIG> illustrates an example timing diagram <NUM> including a fan information request signal <NUM> consistent with the disclosure. As shown in <FIG>, a PWM signal having a first duty cycle <NUM> is being applied to a fan (e.g., fan <NUM> illustrated in <FIG>, herein). In the example of <FIG>, the first duty cycle of the PWM signal <NUM> is about <NUM>%, but this is just one example. In some examples, the signal is asserted to a PWM pin of the fan such as the first pin <NUM> illustrated in <FIG>, herein. The duty cycle of the PWM signal <NUM> falls within a first PWM range (e.g., the first PWM range <NUM> illustrated in <FIG>, herein) and therefore in response to receipt of the PWM signal <NUM>, the fan may operate in a normal mode of operation. Stated alternatively, in response to receipt of the PWM signal <NUM>, the fan may operate to provide fluid flow to a computing component and/or a computing system. For example, the fan may operate at a speed that is based on the duty cycle of the PWM signal <NUM>.

At some point in time, a fan information request signal <NUM> can be asserted to the PWM pin of the fan. The fan information request signal <NUM> can have a different duty cycle than the first duty cycle <NUM> of the PWN signal <NUM> - specifically, the duty cycle of the fan information request signal <NUM> falls within a second PWM range (e.g., the second PWM range <NUM>). In the example, of <FIG>, the duty cycle of the fan information request signal <NUM> is shown as a <NUM>% duty cycle, but this is merely one example. In some examples, the PWM signal <NUM> that has the first duty cycle and/or the PWM signal that corresponds to the fan information request signal <NUM> can be asserted by a fan control component such as the fan control component <NUM> illustrated in <FIG>, herein.

As noted above, the fan information request signal <NUM> is a PWM signal whose duty cycle falls within a second PWM range (e.g., the second PWM range <NUM> illustrated in <FIG>, herein), and therefore, the fan information request signal <NUM> may cause the fan to initiate a transfer of information corresponding to the fan as described in connection with <FIG>, herein. The fan information request signal <NUM> may be asserted for a threshold period of time, which may span multiple PWM pulse periods. In a non-limiting example, the fan information request signal <NUM> may be asserted for around <NUM> milliseconds (ms). Asserting the fan information request signal <NUM> for multiple PWM periods may assist in distinguishing between signals that cause the fan to operate in the normal mode of operation and signals that cause the fan to transfer information corresponding thereto. In <FIG>, because the fan information request signal <NUM> has a duty cycle of <NUM>% and is asserted for multiple periods, it appears as one pulse spanning those multiple periods. However, in examples in which the fan information request signal <NUM> has a duty cycle less than <NUM>% and spans multiple PWM periods, it may appear as a string of multiple pulses.

In some examples, during assertion of the fan information request signal <NUM>, the fan may continue to operate in the normal mode of operation so as to continue to provide fluid flow to the computing components and/or computing system in which the fan is deployed. For example, the fan may continue to operate at a same speed prior to, during, and/or after assertion of the fan information request signal <NUM>. For example, the fan may remember the duty cycle of the PWM signal that was received immediately prior to the fan information request signal <NUM>, and may control its speed based on that duty cycle until a new PWM signal having a duty cycle in the first range is received. In addition to, or in the alternative, the fan can lock its operation at a current RPM as soon as it recognizes the fan information request signal <NUM> (e.g., prior to initiation of the data transfer). This can allow for the fan to continue operating normally during the data transfer operation(s) as opposed to operating with varying speed, which may result in sub-optimal performance.

<FIG> illustrates an example timing diagram <NUM> including a fan information request signal <NUM> and information transfer sequence <NUM> consistent with the disclosure. As shown in <FIG>, a PWM signal that has a first duty cycle <NUM> can be asserted to a PWM pin of a fan (e.g., the first pin <NUM> of the fan <NUM> illustrated in <FIG>, herein). The PWM signal that has the first duty cycle <NUM> can cause the fan to operate at a particular speed (e.g., at a particular RPM). The first duty cycle <NUM> may falls within a first PWM range (e.g., the first PWM range <NUM> illustrated in <FIG>, herein). In response to receipt of the PWM signal corresponding to the first duty cycle <NUM>, the fan may operate in a normal mode of operation.

At some point in time, a fan information request signal <NUM> can be asserted to the PWM pin of the fan. The fan information request signal <NUM> can be characterized as having a different duty cycle than the first duty cycle <NUM> associated therewith, as indicated by the difference in width along the x-axis of the fan information request signal <NUM> versus the first duty cycle <NUM>. Responsive to assertion of the fan information request signal <NUM>, a pre-amble signal <NUM> having a particular time (e.g., a PA time <NUM>) associated therewith may be asserted on a fault signal pin of the fan. It is however noted that, in some examples, the pre-amble signal <NUM> is not asserted on the fault signal pin of the fan. The fault signal pin of the fan may correspond to the second pin <NUM> illustrated in <FIG>, herein.

In some examples, a delay <NUM>-<NUM> may be provided subsequent to assertion of the fan information request signal <NUM> on the PWM pin and assertion of the pre-amble signal(s) <NUM> on the fault signal pin. The pre-amble <NUM> may be provided to signal to the fan or to a fan control component (e.g., the fan control component <NUM> illustrated in <FIG>, herein) coupled to the fan that the fan is ready to begin transmission of information corresponding to the fan and/or that the fan control component is ready to begin receipt of information corresponding to the fan via the fault signal pin.

In some examples, the pre-amble signal <NUM> can include one or more signal pulses that last for a particular period of time. For example, in a non-limiting example, the pre-amble signal <NUM> can include two signal pulses that last for around <NUM> each.

Subsequent to assertion of the pre-amble signal <NUM>, one or more delays <NUM>-N may be provided to the fault signal pin. Subsequent to a final delay <NUM>-N, an information transfer sequence <NUM> may be asserted on the fault signal pin. The delays <NUM>-<NUM>,. , <NUM>-N can last for different periods of time or for the same period of time. In one non-limiting example, the first delay <NUM>-<NUM> can last for around <NUM>, while the second delay <NUM>-N can last for around <NUM>.

The information transfer sequence may have one or more transfer intervals, such as transfer interval <NUM> associated therewith. The transfer intervals <NUM> can include assertion of signals for different periods of time. For example, the transfer interval can be around <NUM>, however, examples are not limited to this particular example. In some examples, the information transfer sequence <NUM> allows the fan control component to receive information corresponding to the fan. As described above, the information can include information corresponding to a manufacturer, model, revision number, serial number, barcode, or other information that may serve to identify characteristics of the fan.

In some examples, the information corresponding to the fan can be formatted in time domain multiplexed bits. For example, as shown in <FIG>, during the information transfer sequence <NUM>, the signal asserted on the fault signal pin can alternate between a HIGH value (corresponding to a logical value of "<NUM>") and a LOW value (corresponding to a logical value of "<NUM>"). The fan control component can, in some examples, interpret these values to ascertain information corresponding to the fan.

In some examples, the information corresponding to the fan can be transferred in accordance with a particular specification or protocol, such as the SMBus <NUM> specification. For example, the information corresponding to the fan can, for example, be transferred in <NUM>-byte packets in accordance with the CRC-<NUM> specification. Such specifications can allow for error checking to be performed on the packet containing the information corresponding to the fan to ensure data integrity.

It is noted that, in the example of <FIG>, the speed of the fan (e.g., the RPM at which the fan operates) remains constant throughout assertion of the PWM signal corresponding to the first duty cycle <NUM>, assertion of the fan information request signal <NUM>, the delays <NUM>-<NUM>,. , <NUM>-N, the pre-amble <NUM>, and the information transfer sequence <NUM>. This may allow the fan to continue to operate in the normal mode of operation so as to continue to provide fluid flow to the computing components and/or computing system in which the fan is deployed during the performance of the operations illustrated in <FIG>.

<FIG> illustrates an example machine-readable medium <NUM> for a pulse width modulation fan consistent with the disclosure. The example medium <NUM> may store instructions <NUM> executable by a processing resource such as a hardware computer processor to cause a computing system to perform certain tasks and/or functions, as described herein. The non-transitory machine readable medium <NUM> may be any type of volatile or non-volatile memory or storage, such as random-access memory (RAM), flash memory, read-only memory (ROM), storage volumes, a hard disk, or combinations thereof.

The example medium <NUM> may store instructions <NUM> executable by the processing resource to cause a pulse width modulated (PWM) signal having a duty cycle that falls within a first duty cycle range to be asserted on a control pin of a fan to control a speed of the fan. The PWM pin of the fan can correspond to the first pin <NUM> of the fan <NUM> illustrated in <FIG>, herein.

The example medium <NUM> may store instructions <NUM> executable by the processing resource to cause a PWM signal having a duty cycle that falls within a second duty cycle range to be asserted on the control pin of the fan to request information corresponding to the fan to be transferred to a controller external to the fan. The signal may be a signal to request information from the fan, such as the fan information request signal <NUM> illustrated in <FIG>, herein. In some examples, the information may be received by a fan control component (e.g., fan control component <NUM> illustrated in <FIG>, herein) via a fault signal pin such as the second pin <NUM> of the fan <NUM> illustrated in <FIG>, herein.

The second duty cycle range can correspond to the second PWM range <NUM> illustrated in <FIG>, herein. In some examples, the processing resource causes a PWM signal having a particular duty cycle to be generated by communicating a digital value that represents the particular duty cycle to a signal generator. The digital value used by the processing resource may be referred to herein as a PWM value. The processing resource may use any mapping of PWM values to duty cycles. For example, if the processing resource uses <NUM> bits for the PWM values, then there are <NUM> possible PWM values that can represent <NUM> possible duty cycles. For example, if the values are mapped in assenting order, then <NUM> PWM would represent a duty cycle of <NUM>% and <NUM> PWM would represent a duty cycle of <NUM>%. In such an example, the second range may correspond to PWM values of <NUM> to <NUM> PWMs, since <NUM> PWM represents approximately <NUM>% duty cycle and <NUM> PWM represents approximately <NUM>% duty cycle. The PWM signal can further correspond to an initiation signal such as the fan information request signal <NUM> and <NUM> illustrated in <FIG> and <FIG>, respectively, herein.

In some examples, the example medium <NUM> may store instructions <NUM> executable by the processing resource to cause the computing system to process the information requested from the fan to determine static data, telemetry data, or combinations thereof, corresponding to the fan. For example, the example medium <NUM> may store instructions <NUM> executable by the processing resource to determine static data such as a fan vendor, a revision number, a manufacturing date code, a bar code, an error code, or combinations thereof corresponding to the fan and/or telemetry data such as data corresponding to environmental conditions of the fan.

The example medium <NUM> may store instructions <NUM> executable by the processing resource to cause the computing system to cause the information corresponding to the fan to be displayed via a graphical user interface (GUI). For example, the instructions <NUM> may be executable by the processing resource to generate a GUI and/or populate a GUI with a fan vendor, a revision number, a manufacturing date code, a bar code, a fan vendor, a revision number of the fan, a manufacturing date code of the fan, a bar code of the fan, a serial number of the fan, etc..

In some examples, the example medium <NUM> may store instructions <NUM> executable by the processing resource to cause the computing system to perform a diagnostic operation on the fan based, at least in part, on the received information corresponding to the fan. The diagnostic operation may include troubleshooting, tracking, and/or analyzing information corresponding to the fan to remediate performance issues the fan may be experiencing.

In the foregoing detailed description of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration how examples of the disclosure may be practiced. These examples are described in sufficient detail to enable those of ordinary skill in the art to practice the examples of this disclosure, and it is to be understood that other examples may be utilized and that process, electrical, and/or structural changes may be made without departing from the scope of the disclosure. As used herein, designators such as "N", etc., particularly with respect to reference numerals in the drawings, indicate that a number of the particular feature so designated can be included. A "plurality of" is intended to refer to more than one of such things. Multiple like elements may be referenced herein by their reference numeral without a specific identifier at the end.

Claim 1:
An apparatus (<NUM>), comprising:
a fan (<NUM>) including a control pin (<NUM>) and a fault signal pin (<NUM>), the fan (<NUM>) to:
receive a pulse width modulated (PWM) signal at the control pin (<NUM>);
control a speed of the fan based on a duty cycle of the PWM signal when the duty cycle of the PWM signal is in a first range; and
responsive to the duty cycle of the PWM signal being in a second range (<NUM>):
transmit a pre-amble signal (<NUM>) to an external controller (<NUM>), the pre-amble signal (<NUM>) to signal that the fan (<NUM>) is ready to begin transmission of information corresponding to the fan (<NUM>); and
transmit information corresponding to the fan via the fault signal pin (<NUM>) to the external controller (<NUM>);
further wherein, responsive to the duty cycle of the PWM signal being in a second range (<NUM>), the fan (<NUM>) is locked at a same speed cycle as prior to the PWM signal being in the second range (<NUM>), and is prevented from changing speed cycle until a new PWM signal having a duty cycle in the first range (<NUM>) is received.