I guess you know the problem when using a thyristor or another device to slow down the fan speed. The fan spins slowly at maybe 6V, but the RPM-pulses to the BIOS fan-monitor is also only 6V, which is not enough to trigger the sensor-device, so that the RPM-reading is zero RPM. I wonder if it is possible to use an optocoupler as a relay, so that the 6V-pulses is converted to 12V so that the BIOS can read the pulses even when the fan is only consuming 5-6V. Does anyone know if this is possible, and can you advise upon which optocoupler can be used, and whether other components are necessary?
i'm not quite sure about this, but i think the signal from the sensor is active low signal.. that means that the signalcable is grounded for each pulse.. it you don't get readings i geuss it's more likely that it's your fan controll that is the problem.. because it makes pulses (different duty cycles to get the right speeds) it might "disable" the sensor electronics exactly at the moment it thould give a reading... but still... i'm not sure about this..
Smilodon is right it is an active low pulse. You can still try an opto-by wireing the GND side of the LED into the sensor pin.
Acording to this forum http://forums.silentpcreview.com/viewtopic.php?t=5342&highlight=rpm+sensor ...the fan sensor-cable is giving pulses in a 50% duty cycle of 0V and 12V ( or less using a Rheostat). So a "relay-thing" (optocoupler?) could ensure that the pulses from the fan at maybe 0V/5V would be converted to at clean 0V/12V cycle which the BIOS-sensor can read? ZapWizard: You think it is possible? Can you be more specific, so a not very electronical mind better understand it?
"IF" is works you would just wire the Opto's LED like normal, only instead of grounding the LED you would wire it to the Sensor pin. +12volts-----/\/\/---->|------Sensor pin The output of the opto is then wired similar to this image: http://www.maxim-ic.com/tarticle/images/A203Fig03a.gif +12volts---/\/\/(Pull up reistor)--(Sensor wire here)--Opto----GND I think that should work.
I think what Zap is thinking of looks like this: Code: Fan + - ^v^v^ - -|-- /-| - - - - - GND | v | | Fan RPM - - - - -|-- \-| - ^v^v^ - To 3-pin connector A little rundown on how it works. An optoisolator is a small IC package which consists of an LED (usually IR) and a phototransistor. It behaves just like a regular transistor, except it electrically isolates the input and output because the transistors output is proportional to the light input, not the electrical input. Hopefully that ASCII diagram is easy enough to decipher. The two thing that look like bad emoticons doubled up are resistors, there to drop voltage for the IR LED and limit current on the output (although that one might not be necessary). Now, the LED side of the opto will recieve a steady positive voltage, but the fan RPM signal will only complete the circuit when it's low. When it is low, the LED illuminates (not that you'd see it anyway if it was outside the DIP), hence the transistor conducts, shorting ground to the 3 pin connector on the mobo. Since the LED circuit is only complete when the fan signal goes low, the transistor only conducts when low, mimicking the fan RPM output.
Thanks a lot guys - I will try it out. To confirm i've got it right, i made this drawing: www.hojsted.dk/opto.jpg Is it correctly understood? I would have guessed that the collector should be connected to 12V instead of to GND? So what impedance would you suggest for R1 and R2, and what kind of optocoupler should i ask for in my electronics store?
Another possible reason for the non-reading is that the pulse-rate is too slow to give a reading. Cure then is to change the multiplier.
Gee Wow - An answer from the king of fan-controllers himself I did try to fiddle with the divider in MBM, but another experiment showed that it's not the issue here: i've tried with two different RPM Papst and they died out on the sensor at different speeds. I do think the problem is when the fans get just enough volts to spin - the TTL-logic reads zeroes instead of ones. CP/M - Can you verify the above design? Do you think it would work for simple solutions as rheostats and linear controllers? I would love to see a design for a PWL thermal controller with RPM-readout. Did someone invent it allready?
There's a "cheat" in Micrel's MIC502 Application Note 34, they suggest an op-amp integrator that turns the PWM signal back to a rough DC level (fig 9). They show a 10k pull-up resistor to the fan sensor wire, that will make the output level either +12v or near-zero whatever voltage the fan motor gets. I'd think that would also work on linear controllers.
Aha - thats very interesting - So an optocoupler is really overkill, when a pull-up resistor can do it. And it's even more interesting, The Drive Circuit for Maintaining Tachometer Signal Integrity in Application Note 34. http://128.121.162.80/App-Notes/an-34.pdf So it's here, and the Locked-Rotor Detection circuit is not a bad idea either. I suppose it could even be hard wired to the PWR-button through a relay perhaps, and turn off the computer with no software involved. Great Now i will try harder to get my hands on the MIC502 - You know, here in Copenhagen i can only get them to order in quantities of 100. Someone know where to order just a couple? Thanks Cpm, Zap, Why and you other guys for sharing your knowledge
Try asking Rapid Electronics, they mention export in the Terms & Conditions. Catalogue sections are downloadable. There are a lot of unknowns with just adding a resistor to +12v, seems to work in simulation but other values are all guesses. Hi output becomes some value between fan voltage and +12v edit: I misunderstood how you were using the opto. Below should work. Pull-up is to 5V so 5V logic on mobo not at risk.