Determining Version Of eSATA Port

Questions about hardware,drivers and peripherals
Forum rules
Before you post please read how to get help
Post Reply
miketurn
Level 1
Level 1
Posts: 27
Joined: Sun Nov 27, 2016 2:59 pm

Determining Version Of eSATA Port

Post by miketurn » Mon Jul 24, 2017 2:53 pm

Hello Everyone,

I have been back and forth on my decision of going with eSATA or USB3 for data transfer.
At this point it appears that most things I have read are pointing to USB3 being the better choice.
eSATA appears to be a very mysterious port, it also appears to be another confusing mis-labeled port, similar to what is now happening with USB 3.0, 3.1, Gen 1, Gen 2, C input, etc. nonsense.

Anyways, I have a eSATA / USB 2.0 combo port on my computer and I was wondering if there is anyway in Linux Mint to determine what version of eSATA it is?
I don't want to get into a ton about what hardware I am using, I am looking for more of a universal way of Linux Mint being able to display this information, somehow. Apparently there are 3 versions of eSATA (just like SATA) 1.5 / 3.0 / 6.0

I assume my port is a eSATA 3.0Gbps port, in which I guess a USB3 5.0Gbps card would be a better solution?
Also offers the ability to use Flash Drives, etc. with it as well.

Does anyone know if there is a way to view this information in Linux Mint?

(I apologize if this post is too vague)
Thank You for any help.

rene
Level 12
Level 12
Posts: 4251
Joined: Sun Mar 27, 2016 6:58 pm

Re: Determining Version Of eSATA Port

Post by rene » Tue Jul 25, 2017 9:54 pm

eSATA is mostly obsolete again: you should go with USB3. That said...

eSATA is SATA logically, even if not (completely) electronically: the eSATA port is simply one of the regular SATA ports available from your chipset made available externally. It is or used to be relatively standard to for example have 6 available SATA ports from the chipset, with 5 of them made available through regular SATA connectors on the motherboard, one through eSATA. This is then to say that your eSATA port's standard/speed is the same as your internal SATA ports' standard/speed.

I am on an older SATA2 (3 Gbps) board but I believe it is or was with SATA3 (6 Gbps) normal to have 1 or 2 ports do SATA3 and the others in fact only SATA2. If also for you I would indeed expect the eSATA/USB2 combo port to be SATA2. You can check the standard of your SATA controllers, when set to AHCI mode, in the boot messages:

Code: Select all

$ dmesg -t | grep AHCI
ahci 0000:00:1f.2: AHCI 0001.0300 32 slots 6 ports 3 Gbps 0x3f impl SATA mode
ahci 0000:03:00.0: AHCI 0001.0000 32 slots 2 ports 3 Gbps 0x3 impl SATA mode
That is the result for a 6-port chipset based controller complemented with an additional 2-port one, both of them SATA2: note the 3 Gbps. If you see only a SATA3 controller then you have your answer but I expect you'll see two as well; a SATA2 and a SATA3 one. What you need to know, then, is to which controller your eSATA port connects. If not obvious the easiest method would be actually connecting an eSATA device and seeing where in the device tree it shows up, but I expect you won't have one available yet. If your SATA3 controller has only 2 ports and you have those connected internally (they may be colour-coded) then you again have your answer but I'm afraid that otherwise that answer will need to be obtained from your motherboard manual or from a comparison of chipset specifications and the number of internal SATA connectors. The straightforwardness of eSATA, it being no different to software than regular SATA, also makes it impossible to have Linux provide specific eSATA information: it simply has no idea which ports are internal and which are external; the requested "universal way" is not possible (and for those wondering, no, at least for me it's not in the DMI either).

But, really, you needn't even care: eSATA is as said obsolete again anyway. eSATA does not itself provide power, hence the combined eSATA/USB ports, and even those tend to provide 5V only. Back when eSATA was new 3.5" SATA drives requiring 12V were still the norm and eSATA never really took of due to that. With USB3 now matching or surpassing it speedwise, eSATA is dead.

miketurn
Level 1
Level 1
Posts: 27
Joined: Sun Nov 27, 2016 2:59 pm

Re: Determining Version Of eSATA Port

Post by miketurn » Fri Jul 28, 2017 1:41 pm

@rene
Thank You so much for your response.
I ran that command, and it turns out that I have a 3Gbps port, oddly enough I thought I only had 3 ports but it says I have 4.
I figured that eSata was dead, but something in my head keeps making me consider it, probably just because when using SATA internally everything just seems so much quicker compared to when I use USB2 or USB3, the popup transfers window closes quicker when using SATA. This is probably just due to fact that the quality/speed of my USB flash drives are not as good as my hard drives.

With eSATA being 3Gbps and USB3 being 5Gbps, I don't suppose the SATA to USB conversion that has to happen, when using USB external SATA hard drive cases, is slower than the 2Gbps extra speed (USB3 5Gbps - eSATA 3Gbps = 2Gbps) that is offered by USB3.

@ anyone
I don't want to create a new thread just for this, but I can't remember if I was reading about SATA or USB (I think it was USB) where if you plug a USB2 flash drive into a USB3 port, you can get better performance out of the USB2 flash drive. Does anyone know if this works with SATA as well? Meaning if you plug a SATA2 hard drive into a SATA3 motherboard port or SATA3 external USB3 case, would you get better performance out of the SATA 2 hard drive?

Thank You to anyone who reads this and has a response to offer.

User avatar
greerd
Level 6
Level 6
Posts: 1058
Joined: Sat Jul 31, 2010 10:58 am
Location: Nova Scotia, Canada

Re: Determining Version Of eSATA Port

Post by greerd » Fri Jul 28, 2017 2:43 pm

I have an older hdd box (jbod) with an external 12V supply that can use either USB3 or eSATA. My SATA's version 2 (3Gbps) but have found that USB3 starts data transfer fast but slows down. I prefer eSATA, but if I was in the market for new hardware I'd be looking at USB3.1 type c.

One thing I noted and have also read (some time ago) was that USB doesn't pass the drive SMART data, I don't know if this is still the case but something you might want to investigate.

rene
Level 12
Level 12
Posts: 4251
Joined: Sun Mar 27, 2016 6:58 pm

Re: Determining Version Of eSATA Port

Post by rene » Fri Jul 28, 2017 3:28 pm

miketurn wrote:oddly enough I thought I only had 3 ports but it says I have 4
Do you mean you have 3 internal SATA ports? If so, yes, that sounds as described: the 4th port available from your controller will be the external eSATA one.

Yes, I'd really not bother with eSATA anymore at this point; even SATA itself is dying in fact, giving way to PCIe interfaces. In hybrid SATA/PCIe form currently but its clear where this is going: the demise of specific storage interfaces, storage having merged with memory technology devices. Of course, until history rinses, repeats and splits memory technology devices into slow DRAM and SSDs on the one hand and spiffy quantum-RAM on the other -- but don't go waiting around for that yet. SATA, including eSATA, does still have a leg up wrt. latency (USB is a fairly high-overhead protocol) but yes, the foreseeable Brave New World will consist of PCIe, including M.2, on the one and USB on the other hand.

A SATA2 drive on a SATA3 controller will not generally and/or appreciably outperform that same SATA2 drive on a SATA2 controller even if only since it's hard to locate a SATA2 drive that can saturate the SATA2 interface in the first place. Of course, the SATA3 controller may be better, what with SATA2 controllers not always from the best of manufacturers, but we're talking details or specifics then, not generics. Conversely it does (or did) tend to pay to upgrade a SATA2 drive to a SATA3 one even on a SATA2 controller: the newer drives are just faster all around. Certainly most SATA3 SSDs and all current ones will easily saturate a SATA2 interface.

User avatar
phd21
Level 19
Level 19
Posts: 9401
Joined: Thu Jan 09, 2014 9:42 pm
Location: Florida

Re: Determining Version Of eSATA Port

Post by phd21 » Fri Jul 28, 2017 8:16 pm

Hi "miketurn",

I just read your post and the good replies to it. Here are my thoughts on this as well.

It would help to know more about your system setup. If you run "inxi -Fxzd" from the console terminal prompt, highlight the results, copy and paste them back here, that should provide enough information. Also run "sudo lspci -v" and post that back in a code block.

Obviously your computer manual should have that information. This is what I get on my ancient Dell OptiPlex 780 Ultra Small Form Factor (USFF) PC
Dell Manual wrote: Bus type
SATA 1.0A and 2.0
USB 2.0

Bus speed
SATA: 1.5 Gbps and 3.0 Gbps
USB: 480 Mbps
Here is a link:

This just happens to be a Dell link, but with good information
- click the link below, then click "What types of eSATA port are in common use?" and it has 2 tabs
eSATA and eSATAp (powered)

http://www.dell.com/support/article/ca/ ... pc?lang=en

How to Check Hardware Information on Linux Using Command Line
https://www.maketecheasier.com/check-ha ... ion-linux/


This is what I get on my ancient Dell OptiPlex 780 Ultra Small Form Factor (USFF) PC
when I run "sudo lspci -v" that is related to Sata

00:1f.2 IDE interface: Intel Corporation 82801JD/DO (ICH10 Family) 4-port SATA IDE Controller (rev 02) (prog-if 8a [Master SecP PriP])
Subsystem: Dell Device 0420
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 18
I/O ports at 01f0
I/O ports at 03f4
I/O ports at 0170
I/O ports at 0374
I/O ports at fec0
I/O ports at ecc0
Capabilities: [70] Power Management version 3
Capabilities: [b0] PCI Advanced Features
Kernel driver in use: ata_piix


00:1f.5 IDE interface: Intel Corporation 82801JD/DO (ICH10 Family) 2-port SATA IDE Controller (rev 02) (prog-if 85 [Master SecO PriO])
Subsystem: Dell Device 0420
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 18
I/O ports at fe40
I/O ports at fe50
I/O ports at fe60
I/O ports at fe70
I/O ports at fed0
I/O ports at ecd0
Capabilities: [70] Power Management version 3
Capabilities: [b0] PCI Advanced Features
Kernel driver in use: ata_piix


Hope this helps ...
Phd21: Mint KDE 18.3 & 19, 64-bit Awesome OS, Ancient Dell OptiPlex 780 Core2Duo E8400 3GHz,4gb Ram,256gb SDD, Video: Intel 4 Graphics, DVD Lightscribe. Why I use KDE?:https://opensource.com/life/15/4/9-reasons-to-use-kde

rene
Level 12
Level 12
Posts: 4251
Joined: Sun Mar 27, 2016 6:58 pm

Re: Determining Version Of eSATA Port

Post by rene » Fri Jul 28, 2017 9:44 pm

You underlining "rev 02" in the lscpi output might mean you imply said 02 to concern the SATA version. If so, note this to be not the case; that one's only a chip(set) revision and not (necessarily) related to any standard version/revision.

Your lspci output tells me you have configured your SATA controller to be in IDE- rather than AHCI-mode in your BIOS. Note that AHCI is better, full stop. IDE is an obsolete interface and does not for example support NCQ, an especially for spinning disks quite useful hardware (firmware) I/O reorganization mechanism which lessens unnecessary, lengthy back- and forth seek operations. Less of an issue for SSD's but for those I believe TRIM might not be supported at all when using IDE. You should be able to switch from IDE to AHCI in your BIOS without issue.

With your controller in AHCI mode, the above mentioned dmesg -t | grep AHCI will inform you as to the SATA standard of the controller; it's read directly from the AHCI CAP ABAR-register. In IDE mode I believe in fact nothing does, but for both modes an actually used port will show you what it is configured to through dmesg -t | grep "SATA link up".

User avatar
phd21
Level 19
Level 19
Posts: 9401
Joined: Thu Jan 09, 2014 9:42 pm
Location: Florida

Re: Determining Version Of eSATA Port

Post by phd21 » Fri Jul 28, 2017 10:41 pm

Hi "rene",

Thank you for commenting and replying. I do understand your comments, and that was an excellent "Tip" and observation.

I was "gifted" this older computer, and I did not really spend a lot of time in the Bios. So because of your response, I went into the Bios, and sure enough, under "Drives" -> "Sata", it was set to "Legacy" (IDE) for compatibility, instead of "Raid - AHCI", and the Bios comments also said the the external "eSATA" port would not even work in this mode, that it would be inactive. I just changed it, and my system booted up just fine.

Before when I ran the "dmesg -t | grep AHCI", it did not give me a result, just went back to the prompt. Now I get this as a result:
ahci 0000:00:1f.2: AHCI 0001.0200 32 slots 6 ports 3 Gbps 0x23 impl SATA mode

Now when I run "sudo lspci -v", I get this for the SATA portion:
00:1f.2 SATA controller: Intel Corporation 82801JD/DO (ICH10 Family) SATA AHCI Controller (rev 02) (prog-if 01 [AHCI 1.0])
Subsystem: Dell 82801JD/DO (ICH10 Family) SATA AHCI Controller
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 33
I/O ports at fe00
I/O ports at fe10
I/O ports at fe20
I/O ports at fe30
I/O ports at fec0
Memory at ff970000 (32-bit, non-prefetchable)
Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit-
Capabilities: [70] Power Management version 3
Capabilities: [a8] SATA HBA v1.0
Capabilities: [b0] PCI Advanced Features
Kernel driver in use: ahci
Kernel modules: ahci


...
Phd21: Mint KDE 18.3 & 19, 64-bit Awesome OS, Ancient Dell OptiPlex 780 Core2Duo E8400 3GHz,4gb Ram,256gb SDD, Video: Intel 4 Graphics, DVD Lightscribe. Why I use KDE?:https://opensource.com/life/15/4/9-reasons-to-use-kde

rene
Level 12
Level 12
Posts: 4251
Joined: Sun Mar 27, 2016 6:58 pm

Re: Determining Version Of eSATA Port

Post by rene » Fri Jul 28, 2017 11:23 pm

Yes, that's as should be and other than the Subsystem string equals the system I'm typing this on. Consider giving it a small SSD if it has an HDD now; the similar HP here has an Intel Core 2 Duo E8400 (3 Ghz), 4GB DDR3-1333 (2x2 dual-channel), an Intel X25-E 64GB SSD, and makes for an excellent little desktop using Mint Cinnamon 64-bit.

miketurn
Level 1
Level 1
Posts: 27
Joined: Sun Nov 27, 2016 2:59 pm

Re: Determining Version Of eSATA Port

Post by miketurn » Thu Aug 03, 2017 5:24 pm

@greerd
Thank you for your response.
That is what I read, and also experienced, that USB3 starts out rather fast and then its performance begins to taper down to only a couple of megabytes per second. USB3 just seems to offer a little more convenience and tends to just be a little more "universal" :)
I never thought about how SMART data gets handled in a USB to SATA conversion, that is a good question.

I always wondered though, why an eSata / USB2 flash drive was never created, offering the ability to use eSata combo port if you have one, and USB2 port if you don't.

@rene
Thank you again for your responses.
Yeah it is amazing to think how technology is really going to continue to change, for the good and for the bad :)

@phd21
Thank you for your response.
I ran some of these commands and wow, scarey how much information these commands generate.
Makes sense because Linux has to know this info in order for everything to be detected, but wow.

Like you mention some great information here.

Overall, I am probably going to just go with USB3 just because of the ease of use it provides, but if I get the opportunity some day I would like to still try eSATA. I think I have an old HD case somewhere that may have an eSata port, I will have to look around and see if it does.

Again Thank You guys again for all the great information / help.

Post Reply

Return to “Hardware Support”