Archive for July, 2007

Shhhhhh! (Quieter Fan for My Switch)

Monday, July 16th, 2007

The fan in the network switch in my home office is too loud. It’s the loudest thing in the whole room — louder than my newish and very quiet Dell PC. (Fedora, installed before ever booting the preinstalled XP Home, in case you wondered.)

I’d rather not have a switch there at all, but the DSL comes in on the ground floor (where my office is), I’ve tucked my server down in the basement, and I haven’t installed structured cabling yet. (The house is a hundred years old and the crawlspace is . . . interesting.) I need more connections going back and forth than I have cables, which means using a switch.

The Cisco switch I was using had only 100M ports, but my workstation and server both have integrated gig ethernet, so I was looking to upgrade the switch anyway.

I recently bought an old Linksys GigaSwitch EG0008 on eBay. It’s a 1U rack case with only eight gig ports on it — pretty much an antiquated beast. I was hoping it’d use passive cooling or at least have a quieter fan than my Cisco 1924.(*) Boy, was I wrong.

Cooling fans in Linksys EG0008

The Linksys has three fans, each loud. Two are in the center of the back, and there’s a separate one by the power supply. I took a little time yesterday to try to quiet it down.


I used my sound level meter (an older version of this Radio Shack meter) to measure how loud each fan was. This was a very informal test intended just to give me a general idea; and due to the range of the meter, I measured from about 10cm away instead of the standard 1m.

I unplugged two fans at a time so I could test each fan individually. The small fan in the corner was the loudest, at about 58dB. Each of the two larger fans in the back registered about 57dB. With all of them running, I got about 62dB total.

Fan Changes

The first step was simply unplugging the two larger fans in the back. In an unventilated wiring closet, or stacked in a rack with other hot equipment, I’d want all the forced air I could get through this thing. But sitting in my office on a small stand under the base of my LCD monitor, it’s not going to get very warm. It probably doesn’t need any fans there, and one should certainly be enough.

With only the small fan plugged it, the volume dropped to slightly louder than my Cisco. Not good enough.

The small fan sounded a little rough to me, so I peeled back the sticker and added a drop of oil to its axle. It smoothed out a bit, but still not good enough.

I had another 40mm fan on hand that I bought last year from All Electronics, so I soldered a connector onto it and hooked it up to the power. Sitting out in the open, I measured it around 54dB, so it seemed to be an improvement.

Original and replacement cooling fans from Linksys EG0008

The original fan wasn’t mounted with screws or bolts, but rather by snapping into position. With the replacement fan being so much slimmer, it no longer fit the slot. Since this isn’t for a ruggedized mobile application where things bounce around a lot, I just stuck it in place with hot glue.

Once in place, it measured about 58dB — the same as the original fan. Grrr.

Vent Holes

I noticed two differences in the sound of the replacement fan between when it was sitting in the open and when it was mounted in the case. The case acted as a sounding board to amplify the fan’s noise; and there was considerable wind noise when the fan was in position. I didn’t really have room to isolate the fan from the case with rubber strips, but I did tackle the wind noise.

Original power supply vent holes in Linksys EG0008

The ventilation holes behind the fan were not exactly what I’d call generously sized. I used my stepped drill bit to enlarge all of the holes that were in line with the fan’s blades.

Enlarged power supply vent holes in Linksys EG0008

After reinstalling the new fan, the overall noise level dropped to 54dB, a slight improvement over the first installation of the new fan and a considerable improvement over the original equipment.

I reassembled the switch and swapped it into service in my office, and it seems to be about as loud as the Cisco was. Interestingly, the pitch of the noise is a little different, so I notice it each time I step in the doorway. I’ll get used to it soon enough.

Closing Thoughts

In retrospect, since both the original and replacement 40mm fans measured about 58dB when mounted in the case before enlarging the vent holes, I could probably put the original fan back in and have approximately the same sound level improvement.

I’d like to find a quieter fan, though. I know there’s a whole market for PC case mods with really, really quiet fans. I’ll ask around and see whether anyone I know has a tested source. So rather than go back in to reinstall the original fan, I’ll hold out for a yet-quieter replacement.


* Yes, I know the Cisco 1924 is a 10M switch. My 1924s have two 100M ports commonly used as uplinks; so at each end, one of the ports is the uplink and the other connects to the fast computer. The DSL firewall only gets a 10M port, which is faster than its WAN side anyway.

Current Project Prototype Almost Done

Thursday, July 12th, 2007


Board layout is done, board is cut to size, drill files are converted to DanCAM format to drill at Joel’s house. I’ll print and iron on the etch resist after drilling. I’m going to try ironing on top-side “silk screen” like Cort’s been doing.

I drew the schematic in free EAGLE, but the board was too big to layout, so exported the netlist and imported to FreePCB. Substantially updated my eagle2pads netlist conversion utility, which I’ll be re-posting soon.

The FreePCB layout is so pretty, I just had to post it tonight.

Topics to cover after the board is made:

  • eagle2pads netlist conversion script updates
  • drill file selection and manipulation scripts and Makefile
  • custom etching tank
  • kits

Follow-Up to Driving a Bicolor LED from a Single Output Pin

Sunday, July 1st, 2007

Within mere hours of posting yesterday’s entry about driving a bicolor LED from a single pin using the trick of turning the port into an input to make it tristate, “Mazzoo” posted an excellent comment, including this very insightful statement:

tristating or setting a controller pin as input, and leave it floating or (even worse) setting it to Vcc/2 is a reliable way to destroy the input gate.

That’s a very good point, and one that I hadn’t been thinking about (but hope I would have considered sooner or later).

Digital logic inputs depend on being high or low, and don’t deal well with inputs in the “dead band” in between. With many digital inputs, a voltage in the dead band puts the input transistors into their linear regions, which causes them to carry excessive current and overheat quickly. Deliberately putting digital inputs into the dead band for long periods of time would be a very bad idea.

Thus, to use this method for driving a bicolor LED, not only does the pin need to be changed to an input so it tristates, but it needs to be an A/D pin set to analog mode, so it doesn’t mind seeing a voltage in the dead band.

As I’ve described before, having a PIC pin set as an analog input changes the PORTX register from a read/write register to a write-only register, and you have to read the values from LATX, which messes up the LogoChip’s clearbit / setbit / testbit commands. But I’ll just have to work around that by using LATX instead of PORTX, because I can’t leave the pin floating in digital input mode.

Thanks, Mazzoo!

July 4:

It should also be safe to use tristating on a pin in digital input mode with a Schmitt trigger — pin A4 and all of port C. Unfortunately for me, the LogoChip’s design already uses most of port C, and I really wouldn’t have enough pins available to drive the four bicolor LEDs that I want to use in this project. So analog inputs it is.