FAN MONITORING

Hello
I have the FAN in the attached image.
These FANs are supposed to be able to be monitored somehow. They have 3 cables and the yellow one apparently sends the signal with which an arduino would be able to decode the RPM/speed of the motor; Some PC in the bios menu shows the RPMs of the FAN.
The yellow cable is the Frequency Generator output of hall driver.
This is a similar driver http://www.prolific.com.tw/jp/files/PT3906T-V134.pdf.
I just made some measures (varying the power of the FAN) but I’m not sure of how to use the measures in order to program a FAN RPM monitor.
My assumption in that there is a relation of 1 spin of the motor each time the signal changes from high to low and the opposite, any idea on how to measure that signal? Its not very clear, it can be seen its like a series of pulses, but I think a pull up its needed to measure the output.
When the power of the fan is low around 5 V the width of the pulse is around 7,9, 8 ms and when the power of is high around 11 V the width of the pulse is around 3,32 ms.

I think those guesses are basically right - the pulse period may be related to the commutation period rather than a whole rotation, you should be able to figure this out from the rpm rating of the fan at its rated voltage - expect the PWM frequency to be a multiple of RPM/60

If it's a standard PC fan then the tacho output is probably open collector. So you need to enable the internal pullup resistor for the Arduino input you are using, or else use an external pullup resistor to +5v.

Don't try to measure the speed while controlling the speed by PWM'ing its supply, because the PWM will interfere with the tacho. If you want to both vary the fan speed and measure it, use a 4-pin fan, because these have a separate PWM control input.