Goodisory SR01: Almost-Perfect Router Case

Back with another niche case. This time, the Goodisory SR01, which I think is almost a perfect case for a high powered router. The use case I’m covering looks something like this:

  • Mini-ITX board
  • A small amount of active cooling needed (e.g. 25-50W SoC range), but the CPU socket doesn’t support mounting a fan.
  • Effectively silent (i.e. shouldn’t be able to hear it at 6ft+)
  • External PSU (PicoPSU or motherboard with support for DC-in)
  • PCIe slot (ideally 2+ for motherboards with bifurcation support, but 1 is fine)
  • No drive bay needed (it will use M.2 or other onboard storage)

Does such a case exist? Read on and find out. Short version since I hate cliffhanger clickbait: it almost does.

I scored a deal on a Supermicro X10SDV-8C-TLN4F. I wanted to buy one of these because it has all the interfaces needed to cover my current and potential future use cases. Right now, I need a 10GbE port for LAN, and two 1GbE interfaces to get my full WAN speed (1.2Gb cable, where the modem uses 2x1GbE ports). However, in the foreseeable future, one of three things may happen:

  1. New modem with a 10GbE copper port
  2. New modem with NBASE-T copper ports
  3. Fiber or something else where I can just use an SFP+ transceiver

By having 2xGbE + 2x10GbE built in and a PCIe slot, I have all the foreseeable future cases covered. On top of that, it actually has the horsepower to drive said connections. I did some tests, and even when the router OS is virtualized, it was still able to route (with NAT) at about 20Gb. The one I bought also came with 64GB of RAM, so I’ll also be able to run plenty of VMs. All of the onboard interfaces support SR-IOV, so it is a very nice platform for virtualization. I may post about it later, but it does seem viable to virtualize a router using SR-IOV.

I played around with it a bit and found that passive cooling was woefully insufficient, causing the board to start throttling before finishing the POST. However, a simple 120mm fan resting on top of the board was enough cooling and was nearly silent at idle.

Initially, I was looking for a case that followed the typical 1U layout (i.e. looking from the front, motherboard on the right, expansion slot(s) on the left, oriented horizontally, but with some extra thickness for a 120mm or 140mm fan on top (so more of a 2U thickness). Unfortunately, this just didn’t seem to exist. There were a couple that were close, but were needlessly large due to being designed for an internal PSU, or were designed with drive bays, or didn’t have a good place to put the fan, or a litany of other issues. Some of them placed the motherboard facing away from the PCIe slots, so the fan wouldn’t really cool anything.

However, this one caught my eye – after “measuring” the pictures using pixels, it looked like maybe I could put a 120mm fan in there if I used a low-profile PCIe card. This actually turned out to be true, but there’s an even better way – just put the fan between the motherboard and expansion slot! Zip-tying it to the side of the case using only the upper set of holes on the fan allows it to be flipped up for easy access to whatever happens to be underneath the fan, and there’s enough room between the side of the fan and the case to run a flex-flex cable riser through there (unfortunately, it seems very difficult to come by FFC-based risers for anything larger than an x1 slot). This isn’t the greatest solution for cooling the expansion card itself, but better than nothing.

Overall, the case feels fairly well-built. For $60, it doesn’t feel cheap. The side walls are thicker than I expected. It has vented grates on the top and sides to keep the air fresh. For being another mystery Chinese case that doesn’t even seem to have a website, it’s pretty good quality.

Okay, so what makes it merely “almost-perfect”, and not perfect? Three things:

  1. Zip-tying the fan in place is obviously not a perfect solution.
  2. I’d still like two or more expansion slots since this board supports bifurcation (8/8, 8/4/4, or 4/4/4/4), and it’s rare for a network card to need all 16 lanes. There is another Goodisory case that has this, but uses a flex-ATX PSU, and places the motherboard flipped from the expansion slots. The former could be ignored, but the latter is kind of a dealbreaker.
  3. Front panel I/O isn’t really ideal for a router, but this is a small nitpick.

As for other use cases, there are a couple downsides:

  1. The red disk activity LED is just a bad design. It illuminates the same ring as the power LED (white), but the white LED is positioned in the power button switch itself, while the red LED is outside the ring. Thus, it just gets drowned out since the white LED is effectively much brighter. It seems like a better idea to use the red LED as the power LED and the white LED as disk/network/identify/whatever – that’s what I’m doing in the photos.
  2. The back has cutouts for 6 DB-9 ports, 1 DC-in, and 2 (RP-)SMA antennae. How about a Kensington slot? 6 DB-9 is almost certainly overkill, since you’d typically see 1 or 2, sometimes 3 or 4 for niche boards. A couple of them are in a terrible position anyway – if you actually had the port installed there, it might get in the way of manipulating the screw for the expansion slot.
  3. It’s not just a matter of “I had to zip tie a fan because I really wanted a fan in that specific place”. This case doesn’t seem to have any official support for putting a fan anywhere. If you want a fan, it’s going to be zip-tied somewhere. The only non-ziptie option for a fan is a CPU cooler with a fan. If you want it to be “hinged” like mine, that also limits fan selection, since this prohibits fans with a “tube” style screw hole (e.g. Be Quiet Silent Wings). You would need a fan that has two separate holes (like the Noctua NF-A14).

Overall, definitely 9/10 for this use case (no pun intended). Don’t get me wrong, this is absolutely useless as, say, a mITX gaming PC case. But for a “compact” and nearly silent router, it’s great.

Extra Notes

If you’re going for a super-quiet fan, it may actually spin slowly enough to trip a fan failure alarm. I had to use the command ipmitool sensor thresh FAN2 lower 100 200 300 to set the fan alarm thresholds to 100/200/300 (lower non-recoverable, critical, non-critical points) since the fan was idling at 500, while the default thresholds were 200/400/600.

I tried a 140mm fan (Be Quiet BL087) after determining that it should fit, but it was actually a fraction of a millimeter too long. This wouldn’t be an issue if not using all the RAM slots, or low-profile RAM. After taking some more measurements, it turned out that fans seem to actually be +-1mm from their advertised dimension (e.g. my 120mm was actually 119mm). I had used my “120mm” fan as a reference to see how much additional room I’d have, thinking that as long as there was 20mm left over, it would fit a 140mm. But that turned out to not be the case. In other words, don’t rely on mm-level accuracy for fan dimensions.

Apparently “3.5mm audio jack LEDs” exist, so perhaps you could break out the front panel audio header, plug it into other LED headers or GPIO lines, and get 4 more LEDs (or more if you go for bicolor LEDs).

This is NOT a budget option. My setup ended up being $400 for the board+RAM, $60 for the case, $40 for the PicoPSU (current price – I’ve had this thing for years), $15 for the fan, and $50 for the SSD. Then, in order to actually get 10GbE speeds to my switch, I had to buy an SFP+ 10GBASE-T transceiver, which will be another $40-60 for a good quality one (I went with the Wiitek after doing some research, and apart from getting quite hot, it works great). You could make it a little cheaper, by going for the cheaper versions of this board (4 core/8 thread with no 1GbE ports goes for about $220), not having 64GB of RAM, and not using an NVMe SSD, and you might be able to get the cost down to around $320. Still not cheap by any means for a router with no Wifi. But still not a terrible value considering that even a cheaper one should be able to do 10GbE routing no problem – you’ll be set for quite some time.

Leave a Reply