March 9th, 2010
5:28 pm
Asus P6T eSATA Hot Swap issue

Posted under 64 Bit
Tags , , , , , , ,

Update 4/4/2010

Whilst hot detection has been working, I was unable to run a backup as Acronis gave errors. A disk check with windows failed to complete intermittently on one of my drives. When I disk checked the same drive afterwards via USB, it checked out with no problem.

I’ve finally taken the decision to dump the internal eSATA on the P6T. Whilst my PC is an Arbico one under return to base warranty, I will not be returning it. I may have a hardware fault, but so many other people are reporting problems with the P6T and eSATA that it is impossible to be sure. I do not wish to be without my PC for a week or 2 only to have it returned with the problem still present.

I have disabled the JMicron controller in the Bios, and installed a StarTech 2 Port PCI Express eSATA card (Silicon Image 3132 chip).  I bough mine from CCL Computers for £20-78 including VAT and postage, so not much more than it would have cost me to courier my PC back to have it looked at under warranty, and it took me 10 minutes to install. So far this is performing flawlessly. When installing on Windows 7, Windows Update found the driver and auto installed it – the bios on the card was 7.4.05, and Windows installed version 1.0.15.3 of the driver. This version did not appear to be available when I searched the Silicon Image Site – the CD with the card, and Startech’s site, both had version 1.0.15.0 of the driver, so I stuck with what Windows did and had no issues with it.

Having already used a card with a Silicon Image Chip, I immediately installed HotSwap! as this allows safe removal of the drive. As installed, the driver does not enable safe removal in windows, but does enable write caching on the drive, so HotSwap! is recommended. After installing HotSwap!, remember to ctrl/click the systray icon – this will allow you to specify those devices which are to be excluded from hotswapping, such as your fixed hard drives. HotSwap! is designed for Silicon Image chipsets and is able to optionally spin down an eSATA drive on removal. It can also scan for hardware changes if you have hot detection problems (I did not). The only slight issue with it is that it will not autostart in the tray under Windows 7 as it gets a UAC prompt to continue when it starts. You can get around this by making it start as a scheduled task with high privilege, but I just leave it on the quick launch bar or superbar and start it manually when I need it, and put up with the extra click.

Update 10/3/2010

After reverting the Bios back to 1004 as at the end of this post, a couple of reboots later the pc failed to detect a hot insertion again. I reverted the JMicron driver back to 1.17.53.0, the version used by the poster referred to below, as this was cited as stable, but still no joy. I tweaked the Bios to disable the floppy drive (on by default) as I don’t have one, resaved and booted, and then it all worked again. After 5-10 more warm and cold boots, it is still hot detecting fine. I don’t think the floppy controller was the issue, but the fact that I went in and changed and resaved the Bios settings, as this has kicked it into life in the past.

My final conclusion – it does run stable now, but I wouldn’t call it rock solid – it still won’t detect an eSATA drive present at boot time, and I’ll need to keep an eye on things to see if the detection problem resurfaces. If it does, I suspect just entering Bios setup and resaving the Bios settings after a small change (or even no change) will sort it!

Original Post 9/3/2010

My P6T was delivered with bios revision 0904, and as delivered would not hot-recognise or safely remove an eSATA drive (safe removal was off, and write caching was off which obviously impacted performance).  I installed the latest JMicron jmb36x Controller driver (1.17.55.0, 27/01/2010) , and this enabled write caching and safe removal via the system tray. Note that whilst the P6T has both jmb363 and jmb322 controllers listed in the spec, the controller under windows lists as a jmb363, and this driver appears to handle both the above chips, therefore the jmb36x driver is the correct one. Upgrading the driver in my case affected eSATA hotswapping/safe removal etc. using both the rear eSATA port on the P6T (jmb363), and my front port connected to SATA_E1 (jmb322).  However, hot recognition was very intermittent (even with a device rescan) and the only way to consistently recognise the drive was to have it plugged in at boot time, enter the bios, exit the bios and boot. It would then recognise the drive at boot time once only, and could be safely removed (but would need booting to recognise it again).

This post states that bios version 1004, plus the JMicron driver I was using, sorted the problem. As there was now also a later bios version, 1201, I reflashed the P6T to this version. I used the flash utility in the Bios itself as this was convenient, and it would recognise USB flash drives to read the new bios. There is also a recovery process if it crashes during flashing, which involves booting with the target Bios in the root of  a usb flash drive in which case it auto flashes (see manual).  However, this recovery process only  works with small FAT32/FAT16 flash drives of less than 8GB, so I prepared a 2GB flash drive especially in case this was needed. Note also that the Bios flash utility does not do long filenames and so converts them to DOS 8.3 format – if you have multiple Bios file versions on the drive this may mean you won’t be able to tell which is which, so rename the files to sensible short names before you start, and save yourself another reboot! Also be sure to unzip them.

It turned out that version 1201 did not work at all with eSATA, so it appears that Asus fixed this in version 1004 and then broke it again in 1201 – doh! I even tried a CMOS reset with 1201 just to be sure, but it still did not work. With the drive present at boot time, it just froze during the JMicron controller drive recognition phase, just prior to starting windows.

I reflashed back to 1004 and hotswapping all worked fined, both recognition and safe removal, including multiple times. However, the drive would not be recognised at boot time if present, and would still freeze as before. As my real goal was true hotswapping, I was happy to live with this issue as hotwapping was fine – I just plugged the drive in later after booting.

Prior to clearing the CMOS, I took shots of all the Bios screens with the old settings in, to be sure I did not miss any custom settings, as the PC had been built by a custom builder, Arbico. Whilst there is a Bios feature to allow saving and restoring of CMOS settings to a flash drive, there was the concern that reloading old settings could introduce old data which did not match the new Bios, so I wanted to be sure to load default settings and tweak from there.

The screen shots of my old settings may be downloaded in this zip file. Afterwards, I manually made the following changes after clearing the CMOS and loading new defaults :-

Menu: AI Tweaker, Setting: Ai Overclock Tuner, Value: X.M.P.

Menu: Power options, Setting: boot via keyboard, Value: set to Ctrl/esc

Menu: Power options, Setting: Power On via PCIE devices, Value: enabled
(This setting was needed to allow Wake On Lan to work correctly)

Menu: Boot/Boot Device Priority :-
1 SATA: PM-SAMSUNG HD
2 CDROM:SM-Optiarc D]
3 DISABLED

Menu: Boot/Boot Configuration settings, Setting: Full Screen Logo, Value: disabled

Menu: Advanced/On Board Devices Configuration, Setting: High Definition Audio: Value: disabled
(Onboard audio was disabled as I was using a separate sound card)

Menu: Advanced/USB Configuration, Setting: Legacy USB Support, Value: Enabled

Menu: Tools, Setting: Asus Express Gate, Value: Disabled

No Comments »

Trackback URI | Comments RSS

Leave a Reply

You must be logged in to post a comment.