Friday, March 2, 2018

PDU retaining clips for securing electric cords

If you go to most server rooms, you'll see things that resemble deluxe electric power strips except the gender looks reversed.  These are called Power Distribution Units. Depending on the features purchased, they can have lots of advantages over regular power strips.

Image result for power distribution units data centerHowever, there is a MAJOR problem with many of the PDU units I have seen. The female patch cords wiggle out MUCH easier from a PDU port than a typical household 3-prong 110v male cord.  Over time, the problem can become  so bad that a casual brushing against a cord can be enough to cut power.   To address this problem, many interesting solutions have appeared in the market.

One product is a metal retaining clip, as offered by a company called Geist.  Provided that the PDU and cords are the exact model, it looks like these clips may work.  If clips need to be purchased after a PDU is purchased, the company provides photos and measurements.  Both of those makes the odds of ordering the correct clip much higher.  Some PDUs also have holes installed on the side to make securing clips a bit easier. However, many legacy PDUs usually lack holes or even a ledge for such clips to grab.  Also, the patch cord strain relief apparently needs to be ribbed to work. 

Another product tries to address the problem of loose connections takes the approach of just  jamming more plastic into the outlet.  I suppose that approach might work and the cost of ordering a bunch is rather cheap.  However, it probably stresses the plugs and I also don't see how such an insert could be installed without unplugging the equipment to install it.

Some PDU manufacturers DO make PDUs with a sensible way of securing power cords.  They provide a metal shelf so that Velcro or  Zipties can be attached to each PDU patch cord.  However, buying such units adds additional cost.  Also, I can't tell you how many times I've seen these shelves discarded in the trash before people realize what they are used for.

So much for the solutions that didn't work for me.  Here's one solution that did.  The solution needed to be cheap, be able to install without turning off the equipment, be non-conductive and allow the cord to later be unplugged or re-secured easily and quickly.  The result is the plastic clip below.

The clip works with commonly available materials typically found in a data center.  In addition to the clip, you'll need some Zipties, Velcro and some small stubby screws and washers.  Here's how it works,  Put one Ziptie through the clip slot.  Then add additional Zipties to reach around the PDU. Slide the clip on the cord.  Then use the head of another Ziptie to complete the chain of ties. Velcro wraps around the cord which allows the clip to work if the strain relief isn't an exact fit.  

Below is a photo of a clip securing a patch cord to a PDU. If the cord needs to be unplugged, just undo the Velcro then slip the cord out of the clip.  When the cord needs to be re-secured to the PDU the clip is pressed back on the cord then re-wrapped with the Velcro.  By using this solution, a convenient cord securing solution can be installed with zero downtime.

The PDU clip was printed in HIPS plastic. Other parts are commonly available at a typical hardware store.

The printable clip is downloadable HERE.

If you find  this design helped you secure some PDUs or if you have a suggestion on how the idea can be improved, let me know! 

Tuesday, March 14, 2017

Arduino port analyzer using CDP

At work, I occasionally get the question of what section of the network a wall jack is connected to. To answer that question, I used to carry around a big-ole laptop and do manual port traces.  However, the port tracing procedure isn't particularly fast and it's also difficult to delegate.  Fortunately, I work in an environment where we can use the Cisco Discovery Protocol to show what switch port a given device is attached to.  Due to this, it is possible to build a relatively inexpensive scanner from an Arduino UNO and a HanRun Ethernet shield.  Just plug in the device and power it on. It will then grab a DHCP address and then do a scan for CDP packets.  Once found, it will then report a bunch of useful information as seen above. Although it's not as small as could be made, it was relatively inexpensive to build and it's layout seems to be rugged enough to toss into the tool bag.

The housing was  printed in HIPS plastic. The design is not the most glamorous case in the world, but it should be printable on most any printer.  When it comes to servicing, all components can be easily removed if needed.   The STL files below allow printing of all case parts.  As you wire-wrap connections, print out the box.  Then manually drill out the side holes and screw together!

Operating the device is very simple and relatively quick.  Just plug in an Ethernet cord to the port being tested, then turn on the recessed DC slider switch on (upper left hole).  The on-board 9V battery works for quite a while.  However, if that happens to be drained, the device can also be powered from a USB cable or by attaching a transformer to the barrel plug.

When it comes to performance, grabbing a DHCP is pretty quick but waiting for a CDP packet may take up to a minute depending on CDP settings of the equipment.  In testing, I found ports configured in access mode are detected reliably as are ports with no config. However, the parsing routine isn't quite smart enough to deal with voice settings yet.  Version 0.9 will be fixing that issue.  

If there is interest, I may offer occasional assembled units on Etsy (But they won't be available for purchase in NY since I'm not willing to deal with the bone-headed sales tax compliance effort that comes with selling stuff within that state).

Parts used for this project:
  • HanRun Ethernet shield HR911105A ver 11/16 (shown above, may be hard to get now)
  • Adafruit 1.44 color TFTP LCD display with MicroSD breakout
  • Arduino UNO 
  • 9v battery clip, micro switch, wire-wrap and some tiny screws I had laying about.
  • XP professional sp3 (not required, just what I happened to have)
  • Arduino software ver 1.0.3 (available at the Arduino site) 
Other downloads are available on this site:
What to wire where is noted in the pin out section within the code.  Note, to power the Arduino, the 9V positive goes to Vin pin.  Battery ground goes to any of the grounding pins.  Power can also be provided by barrel plug or of course via the USB connection.


Code is based on the work of Quistoph, Kirstain and many others!
If you found this posting helpful, please comment!