Amirul Islam

Serial Cables and Connectivity

Discussion created by Amirul Islam on Jul 24, 2014
Latest reply on Sep 2, 2014 by Charlie Whitfield

Whilst hardware vendors continue to rely on serial connectivity for low level activities or setup (come one vendors, there must be a better way), us engineers will always have a need to keep the serial cable in our bags. But this presents its own challenges which I will try to articulate over the next few paragraphs. It tends ot be a bug bear of all engineers and I'm kind of hoping that some of the tricks I've picked up over the years will help someone out there be a little less frsutrated.

Modern laptops do not come with serial ports, so the only way we are going to connect serial cables is to buy a USB-to-Serial adaptor, which gives you a serial port by plugging into your USB port.

TIP #1 Buy a decent USB-to-Serial adapter. These are plentiful on Amazon and Ebay (there are other retailers too). Pick a reputable retailer that provides customer reviews of its products. Try to opt for a known brand version however this does not necessarily mean it will be a good device, so read the customer reviews. More importantly make sure the vendor has a website that maintains drivers for the product.


TIP #2 Make sure the vendor has a software driver for the version of Operating System you are using. I am running Windows 8 (which has been around for a bit now) and there is STILL no driver for my OS. This means I cannot use the USB-to-Serial adaptor on my laptop so it is useless. How did I get round it?


TIP #3 Use a Virtual Machine. I run VMware Workstation on my laptop, (but VirtualBox or others can be used). I have a Windows 7 VM running on my Windows 8 laptop for the sole purpose of using my Serial adapter because there is a Windows 7 driver for it.


TIP #4 When you connect your USB-to-Serial device to your computer, go to Device Manager (in Windows) and verify which COM port it is using. Expand the Universal Serial Bus controllers and it should appear under there, listing the COM port it is using. Verifying the COM port saves a lot of hassle troubleshooting when you are not getting any connectivity.


So you have now confirmed that you have the correct drivers, and your laptop sees it on COM3, then


TIP #5 Test it works BEFORE going to a customer site. I was lucky enough to have an old router with a serial port I could test connectivity to, but you may need to do this on some devices in your work lab or something, The point is, verify your kit works or get it working before you go to a customer site otherwise you end up wasting time with a customer and looking foolish.


But you chose to ignore TIP #5 or didn't have kit to test on and now you are at a customer site and cannot connect to the device and don't know why, then


TIP #6 Use customer equipment if possible. Ask if you can use the customers laptop if he has one. If not,  most (if not all) servers have a serial port, so ask the customer if you could temporarily connect your serial cable to a server and run a terminal session from there to the device you are configuring. This may not always be possible, and will be dictated by the customer's access to other equipment, security policies or even his willingness to assist, hence TIP #5 is crucial.


So now we have connected to our device one way or another, we need a terminal emulator to open our SSH connection and run commands


TIP #7 Use a quality terminal emulator. Quality does not necessarily mean paid for...I use PuTTy which can be downloaded for free. What you want is a product that has a number of features that makes using it more useful, i.e. easy copying and pasting, running previous commands, output to text file and save configuration (see TIP #9)


TIP #8 When establishing a connection to the device, verify the settings to use ie COM Port, Baud Speed, Stop bits, Flow Control, etc. Take a few minutes to verify these settings from the vendor documentation. It saves you from having to cycle through all varieties of settings in the hope of getting the right combination or


TIP #9 Save the configuration and give it a name. I have the settings needed for Nimble Storage saved, so when I want to connect to a Nimble controller, I open up PuTTy, load the Nimble saved config and all the settings are there.


So we have finally established a connection to our device, in this case it is a Nimble array to run set up (I am not using the Windows Setup Tool because I am hardcore :-)).


When you setup the Nimble Array through the CLI (after reading through the Legal Disclaimer - Please Nimble give us a single key shortcut to scroll to the end), sometimes you come across an issue where a setting does not take or you input the wrong information (subnet mask for example). In which case you have to cancel out of the setup and run it from the start again (including reading the disclaimer). To prevent this,


TIP #10 Just set up the management interfaces on a single network and do a basic simple setup (even if its not the final configuration, just to get a management IP on the array. That way when setup is finished, you can simply plug your network cable in, and open up the Nimble GUI via a web browser and then input the full configuration there. This final tip actually demonstrates that I'm not actually that hardcore, as I prefer the easy route and it's easier to configure the system via the Nimble GUI.


I hope the above has been useful and if anyone wants to add, please do and keep the thread going.