Thursday, June 27, 2013

JMicron JMB36x RAID Status Monitor

I recently worked on a project that requires scheduled status monitoring of a RAID1 (mirrored) volume facilitated via the inexpensive JMicron JMB36x chipset.

To my disbelief, JMicron's xRaidSetup (the facility to create RAID volumes) does not have the ability to report RAID status via email notification which other brands such as Marvell do (I believe Silicon Image as well). So, I had to do it the hard way - reverse engineer xRaidSetup.exe and painstakingly via dis-assembly figure out what it does to get a RAID volume's status (all I wanted to know was if it's running normally!).

I've created xRaidChecker (download) for those who needed the same feature. It's a console application that returns a number indicating the RAID status of the first RAID volume (currently only supports one volume).

Return value of 1 indicates volume is running normally. Any other values indicate an 'Abnormal' status according to xRaidSetup.exe. I'm convinced, however, that there must be specific values that indicate statuses such as 'Rebuild Required' and 'Rebuilding'. If you encounter a return value other than 1, do find out what it means and let me know.

p.s. xRaidChecker needs to be run in elevated command prompt (run as Administrator), or, as I've got it set up, via Task Scheduler running with System privileges and sending out email notifications via a batch file.

p.p.s. JMicron's xRaidSetup must already be installed and your RAID volume set up before you run xRaidChecker (it uses xRaidAPI.dll).

5 comments:

Anonymous said...

I don't guess you'd be willing to update the tool to work when there are 2 jmicron controllers and the 2nd one is the one in use would you? :)

Zach Saw said...

I haven't got two controllers to test so it would be quite hard to figure out what is needed to make it work.

Anonymous said...

Hello

I must also monitor the Jmicron Raid controler

I have try your solution, but durint the reconstruct step, if I run you solution it is the same result.

Is it possible to consult the percentage of rebuild ?

Dion said...

Hi Zack. I was not sure where to post this since I was not able to find an email or a contact on your website.

Your Suptitle avisynth plugin is awesome. But it does not work with more recently updated Avisynth versions.

Do you think you could fix it to work with "Avisynth+" ?

Link to Avisynth+
https://github.com/AviSynth/AviSynthPlus/releases

Thanks.

Unknown said...

Hi, how do i get the return code from the exe? im new to Batchfiles.

xraidchecker.exe
echo %GetAllRaidDeviceHandle%
?