DroboFS web interface

Hi everyone,

This last week I’ve been toying with the idea of having a web interface for my FS. A web dashboard of sorts.

So far I have managed to assemble this (excuse my poor css skills): http://i.imgur.com/4UbEj.png

All the info you see on that screenshot is being pulled from my FS. Nothing is being faked.

My goal is to have as much of the native dashboard functionality as possible.

What do you guys think? If anyone is interested in helping, I could use some info from your Drobos to find out the codes on error messages and so on.

VERY interested. Meanwhile, put your resumé into DRI. :wink:

Alright, then let’s get this started.

Step-by-step
[list=1]
[]Make sure that you have the Apache DroboApp installed.
[
]Mount the DroboApps share.
[]Go to apache/www
[
]Create a new telnet.php file in there, with this content:

[code]<?php
header(“Content-type:”,“text/xml”);

$cfgServer = “localhost”;
$cfgPort = 5000;
$cfgTimeOut = 10;

$drobofs = fsockopen($cfgServer, $cfgPort, $errno, $errstr, $cfgTimeOut);

function shutdown() {
if ($drobofs) {
fclose($drobofs);
}
}
register_shutdown_function(‘shutdown’);

if (!$drobofs) {
echo “Connexion failed\n”;
exit();
} else {
//fputs ($drobofs, “toto\r\n”);
// clear the XML declaration from the “DRINASD (” prefix
echo substr(fgets($drobofs, 128),16);
// read lines until end of “” is seen
while (!feof($drobofs)) {
$line = fgets($drobofs, 128);
echo $line;
if (strpos($line, “”) === 0) exit();
}
exit();
}

?>
[/code]
[]Now open your favorite browser and go to http://<drobo.fs.ip.adress>:8080/telnet.php
[
]What you get back is something like this (you have to view the source of the page):

[code]

<?xml version="1.0" encoding="utf-8"?> ESAINFO 1 16131 ###serial number here### ###serial number here### DroboFS 1.1.1 [4.24.34540] Jan 20 2011,14:10:23 ArmMarvell 1048063 3 0 1 98304 0 2949922160640 2479126380544 470795780096 250120765440 2478763794432 8500 9500 0 0 0 1 0 DroboFS 0 8 0 3 500107862016 1 3 500107862016 2 3 500107862016 3 3 1500301910016 4 3 2000398934016 5 128 0 6 128 0 7 128 0 0 1000 17592186044416 2478763794432 2 2 3 64 0 1001 2478763794432 0 1 6 1 16 DroboFS 0 0 0 6 13 1 ###disk pack id here### 7 1 [/code] [/list]

As you can see, the PHP file just opens a connection to a telnet server listening to port 5000, reads the XML file, and closes the connection.

The telnet server has no authentication, and just produces the XML file above periodically. I found it by spying (wireshark) on the Dashboard. Actually, there are another 2 other ports accessed by the dashboard (5001: an authenticated - but not encrypted - command channel, and 5002: a broadcast beacon), but let’s leave those for another day.

Notice that I commented out some of the items (serial number, disk pack id). The rest of the data is pretty much anonymous, unless you don’t want people to find out what a cheap b*stard you are for using 500 GB HDDs, like myself. :slight_smile:

So, what I’m looking for is more of these XML files to test the UI I’m making. In particular I need files from bad situations, i.e., a drive is missing or went bad, during rebuild (leds blinking), drive almost full, etc.

Please post your XML files below, or send them to me via private message. Any help is appreciated.

You could just pull a drive and generate those conditions :slight_smile:

And I have done so. I just need confirmation for what I think the different codes mean. Also, I need files from people who have healthy Drobos without all the slots filled with disks. That scenario I can’t replicate yet (not enough empty disks laying around, unfortunately).

Ricardo,

This is great stuff for monitoring, especially from an external networks, and I’ll probably experiment a bit with pulling this data out to EventGhost for triggering actions based on free space thresholds etc.

Please keep us updated on what else you find out :slight_smile:

Tusse.

Hi ricardo

Nice you had the same idea i had a couple months ago. I never had time to start with it (master thesis and work :-/).

If you need help reverse engineering the dashboard and create a web interface, I’m glad to help.

Unfortunately I have all 5 bays full with HDDs and every bay is green. So no new information.

Great job!

Well, for starters are your codes (status or otherwise) similar to mine?

yep… same codes…

~$ nc drobo 5000
DRINASD3<?xml version="1.0" encoding="utf-8"?>

<ESATMUpdate>
    <mESAUpdateSignature>ESAINFO</mESAUpdateSignature>
    <mESAUpdateVersion>1</mESAUpdateVersion>
    <mESAUpdateSize>16131</mESAUpdateSize>
    <mESAID>0db103070395</mESAID>
    <mSerial>0db103070395</mSerial>
    <mName>Drobo</mName>
    <mVersion>1.1.0 [4.23.33590]</mVersion>
    <mReleaseDate>Dec 27 2010,17:49:53</mReleaseDate>
    <mArch>ArmMarvell</mArch>
    <mFirmwareFeatures>1048063</mFirmwareFeatures>
    <mFirmwareTestFeatures>3</mFirmwareTestFeatures>
    <mFirmwareTestState>0</mFirmwareTestState>
    <mFirmwareTestValue>1</mFirmwareTestValue>
    <mStatus>32768</mStatus>
    <mRelayoutCount>0</mRelayoutCount>
    <mTotalCapacityProtected>6928237854720</mTotalCapacityProtected>
    <mUsedCapacityProtected>3508167106560</mUsedCapacityProtected>
    <mFreeCapacityProtected>3420070748160</mFreeCapacityProtected>
    <mTotalCapacityUnprotected>0</mTotalCapacityUnprotected>
    <mUsedCapacityOS>3507854565376</mUsedCapacityOS>
    <mYellowThreshold>8500</mYellowThreshold>
    <mRedThreshold>9500</mRedThreshold>
    <mUseUnprotectedCapacity>0</mUseUnprotectedCapacity>
    <mRealTimeIntegrityChecking>0</mRealTimeIntegrityChecking>
    <mStoredFirmwareTestState>0</mStoredFirmwareTestState>
    <mStoredFirmwareTestValue>1</mStoredFirmwareTestValue>
    <mDiskPackID>0</mDiskPackID>
    <mDroboName>Drobo</mDroboName>
    <mConnectionType>0</mConnectionType>
    <mSlotCountExp>8</mSlotCountExp>
    <mSlotsExp>
        <n0>
            <mSlotNumber>0</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>2000398934016</mPhysicalCapacity>
        </n0>
        <n1>
            <mSlotNumber>1</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>2000398934016</mPhysicalCapacity>
        </n1>
        <n2>
            <mSlotNumber>2</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n2>
        <n3>
            <mSlotNumber>3</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n3>
        <n4>
            <mSlotNumber>4</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>2000398934016</mPhysicalCapacity>
        </n4>
        <n5>
            <mSlotNumber>5</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n5>
        <n6>
            <mSlotNumber>6</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n6>
        <n7>
            <mSlotNumber>7</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n7>
    </mSlotsExp>
    <mLUNUpdates>
        <n0>
            <mLUN>0</mLUN>
            <mUniqueLUNID>1000</mUniqueLUNID>
            <mTargetName/>
            <mLUNName/>
            <mMaximumLUNSize>17592186044416</mMaximumLUNSize>
            <mUsedCapacityOS>3507854565376</mUsedCapacityOS>
            <mFlags>2</mFlags>
            <mPartitionCount>2</mPartitionCount>
            <mPartitionType>3</mPartitionType>
            <mPartitionFormat>64</mPartitionFormat>
            <mShareState>0</mShareState>
            <mNextAvailableID>1001</mNextAvailableID>
            <mUsedCapacityOS>3507854565376</mUsedCapacityOS>
            <mInitiatorCount>0</mInitiatorCount>
            <mLoggedIn>1</mLoggedIn>
        </n0>
    </mLUNUpdates>
    <mFirmwareFeatureStates>6</mFirmwareFeatureStates>
    <mLUNCount>1</mLUNCount>
    <mMaxLUNs>16</mMaxLUNs>
    <mSledName>Drobo</mSledName>
    <mSledVersion/>
    <mShareCount>0</mShareCount>
    <mShareInfo/>
    <mSledStatus>0</mSledStatus>
    <mSledSerial/>
    <mDiskPackStatus>0</mDiskPackStatus>
    <DNASStatus>6</DNASStatus>
    <DNASConfigVersion>22</DNASConfigVersion>
    <DNASDroboAppsShared>1</DNASDroboAppsShared>
    <DNASDiskPackId>6E4072A36E407A5E</DNASDiskPackId>
    <DNASFeatureTable>7</DNASFeatureTable>
    <DNASEmailConfigEnabled>1</DNASEmailConfigEnabled>
</ESATMUpdate>
DRINASD3<?xml version="1.0" encoding="utf-8"?>

<ESATMUpdate>
    <mESAUpdateSignature>ESAINFO</mESAUpdateSignature>
    <mESAUpdateVersion>1</mESAUpdateVersion>
    <mESAUpdateSize>16131</mESAUpdateSize>
    <mESAID>0db103070395</mESAID>
    <mSerial>0db103070395</mSerial>
    <mName>Drobo</mName>
    <mVersion>1.1.0 [4.23.33590]</mVersion>
    <mReleaseDate>Dec 27 2010,17:49:53</mReleaseDate>
    <mArch>ArmMarvell</mArch>
    <mFirmwareFeatures>1048063</mFirmwareFeatures>
    <mFirmwareTestFeatures>3</mFirmwareTestFeatures>
    <mFirmwareTestState>0</mFirmwareTestState>
    <mFirmwareTestValue>1</mFirmwareTestValue>
    <mStatus>32768</mStatus>
    <mRelayoutCount>0</mRelayoutCount>
    <mTotalCapacityProtected>6928237854720</mTotalCapacityProtected>
    <mUsedCapacityProtected>3508167106560</mUsedCapacityProtected>
    <mFreeCapacityProtected>3420070748160</mFreeCapacityProtected>
    <mTotalCapacityUnprotected>0</mTotalCapacityUnprotected>
    <mUsedCapacityOS>3507854565376</mUsedCapacityOS>
    <mYellowThreshold>8500</mYellowThreshold>
    <mRedThreshold>9500</mRedThreshold>
    <mUseUnprotectedCapacity>0</mUseUnprotectedCapacity>
    <mRealTimeIntegrityChecking>0</mRealTimeIntegrityChecking>
    <mStoredFirmwareTestState>0</mStoredFirmwareTestState>
    <mStoredFirmwareTestValue>1</mStoredFirmwareTestValue>
    <mDiskPackID>0</mDiskPackID>
    <mDroboName>Drobo</mDroboName>
    <mConnectionType>0</mConnectionType>
    <mSlotCountExp>8</mSlotCountExp>
    <mSlotsExp>
        <n0>
            <mSlotNumber>0</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>2000398934016</mPhysicalCapacity>
        </n0>
        <n1>
            <mSlotNumber>1</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>2000398934016</mPhysicalCapacity>
        </n1>
        <n2>
            <mSlotNumber>2</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n2>
        <n3>
            <mSlotNumber>3</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n3>
        <n4>
            <mSlotNumber>4</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>2000398934016</mPhysicalCapacity>
        </n4>
        <n5>
            <mSlotNumber>5</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n5>
        <n6>
            <mSlotNumber>6</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n6>
        <n7>
            <mSlotNumber>7</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n7>
    </mSlotsExp>
    <mLUNUpdates>
        <n0>
            <mLUN>0</mLUN>
            <mUniqueLUNID>1000</mUniqueLUNID>
            <mTargetName/>
            <mLUNName/>
            <mMaximumLUNSize>17592186044416</mMaximumLUNSize>
            <mUsedCapacityOS>3507854565376</mUsedCapacityOS>
            <mFlags>2</mFlags>
            <mPartitionCount>2</mPartitionCount>
            <mPartitionType>3</mPartitionType>
            <mPartitionFormat>64</mPartitionFormat>
            <mShareState>0</mShareState>
            <mNextAvailableID>1001</mNextAvailableID>
            <mUsedCapacityOS>3507854565376</mUsedCapacityOS>
            <mInitiatorCount>0</mInitiatorCount>
            <mLoggedIn>1</mLoggedIn>
        </n0>
    </mLUNUpdates>
    <mFirmwareFeatureStates>6</mFirmwareFeatureStates>
    <mLUNCount>1</mLUNCount>
    <mMaxLUNs>16</mMaxLUNs>
    <mSledName>Drobo</mSledName>
    <mSledVersion/>
    <mShareCount>0</mShareCount>
    <mShareInfo/>
    <mSledStatus>0</mSledStatus>
    <mSledSerial/>
    <mDiskPackStatus>0</mDiskPackStatus>
    <DNASStatus>6</DNASStatus>
    <DNASConfigVersion>22</DNASConfigVersion>
    <DNASDroboAppsShared>1</DNASDroboAppsShared>
    <DNASDiskPackId>6E4072A36E407A5E</DNASDiskPackId>
    <DNASFeatureTable>7</DNASFeatureTable>
    <DNASEmailConfigEnabled>1</DNASEmailConfigEnabled>
</ESATMUpdate>

Thanks warwalker.

Just this weekend I got another interesting data point: my FS went over the 85% full threshold, so now I know what that XML looks like. :slight_smile:

To summarize: the mStatus of one slot goes to “2” (I think the first slot with the smallest drive capacity) and the main mStatus also changes (can’t remember the exact value, I’ll edit this post later when I manage to get a look at it again).

I’m waiting to replace the drive only after I hit the 95% mark, to see what that looks like.

ricardo,

Any progress with the web interface?

What a coincidence. I haven’t made much progress lately, and just today I was looking again into it. I’ll probably try to set a google code project or something.

Excellent,

Please let me know if there is anything I can do to help you out.

Are you still interested in port 5000 log files?

Absolutely! The more sample data the better, especially if you do not have a full set of disks. I’m still hunting for the codes of a disk-pack on normal state, but without all disk slots occupied.

Just make sure to anonymize you log, i.e., remove the serial number at the top. That info is not really necessary and I’d rather not have everyone’s serial number floating around.

my drobofs has 5 HDDs.
below is output what you are wanting.
80G,160G,500G,500G,1TB

[code]
DRINASD6<?xml version="1.0" encoding="utf-8"?>

ESAINFO 1 16131 Drobo-FS 1.1.2 [4.25.37045] Mar 16 2011,10:24:08 ArmMarvell 1048063 3 0 1 32768 0 1201223761920 8412958720 1192810803200 250120765440 8307027968 8500 9500 0 0 0 1 0 Drobo-FS 0 8 0 3 160041885696 1 3 80026361856 2 3 500107862016 3 3 500107862016 4 3 1000204886016 5 128 0 6 128 0 7 128 0 0 1000 17592186044416 8307027968 2 2 3 64 0 1001 8307027968 0 1 6 1 16 Drobo-FS 0 0 0 6 11 1 EF6D9C3FCF4D83FF 7 0 [/code][hr] below is getting the xml output while drobo doing rebuilding.
DRINASD,<?xml version="1.0" encoding="utf-8"?>

<ESATMUpdate>
    <mESAUpdateSignature>ESAINFO</mESAUpdateSignature>
    <mESAUpdateVersion>1</mESAUpdateVersion>
    <mESAUpdateSize>16131</mESAUpdateSize>
    <mESAID></mESAID>
    <mSerial></mSerial>
    <mName>Drobo-FS</mName>
    <mVersion>1.1.2 [4.25.37045]</mVersion>
    <mReleaseDate>Mar 16 2011,10:24:08</mReleaseDate>
    <mArch>ArmMarvell</mArch>
    <mFirmwareFeatures>1048063</mFirmwareFeatures>
    <mFirmwareTestFeatures>3</mFirmwareTestFeatures>
    <mFirmwareTestState>0</mFirmwareTestState>
    <mFirmwareTestValue>1</mFirmwareTestValue>
    <mStatus>33344</mStatus>
    <mRelayoutCount>24</mRelayoutCount>
    <mTotalCapacityProtected>717084426240</mTotalCapacityProtected>
    <mUsedCapacityProtected>8412958720</mUsedCapacityProtected>
    <mFreeCapacityProtected>708671467520</mFreeCapacityProtected>
    <mTotalCapacityUnprotected>250120765440</mTotalCapacityUnprotected>
    <mUsedCapacityOS>8307027968</mUsedCapacityOS>
    <mYellowThreshold>8500</mYellowThreshold>
    <mRedThreshold>9500</mRedThreshold>
    <mUseUnprotectedCapacity>0</mUseUnprotectedCapacity>
    <mRealTimeIntegrityChecking>0</mRealTimeIntegrityChecking>
    <mStoredFirmwareTestState>0</mStoredFirmwareTestState>
    <mStoredFirmwareTestValue>1</mStoredFirmwareTestValue>
    <mDiskPackID>0</mDiskPackID>
    <mDroboName>Drobo-FS</mDroboName>
    <mConnectionType>0</mConnectionType>
    <mSlotCountExp>8</mSlotCountExp>
    <mSlotsExp>
        <n0>
            <mSlotNumber>0</mSlotNumber>
            <mStatus>4</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>160041885696</mPhysicalCapacity>
        </n0>
        <n1>
            <mSlotNumber>1</mSlotNumber>
            <mStatus>4</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>80026361856</mPhysicalCapacity>
        </n1>
        <n2>
            <mSlotNumber>2</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n2>
        <n3>
            <mSlotNumber>3</mSlotNumber>
            <mStatus>4</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>500107862016</mPhysicalCapacity>
        </n3>
        <n4>
            <mSlotNumber>4</mSlotNumber>
            <mStatus>4</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1000204886016</mPhysicalCapacity>
        </n4>
        <n5>
            <mSlotNumber>5</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n5>
        <n6>
            <mSlotNumber>6</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n6>
        <n7>
            <mSlotNumber>7</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n7>
    </mSlotsExp>
    <mLUNUpdates>
        <n0>
            <mLUN>0</mLUN>
            <mUniqueLUNID>1000</mUniqueLUNID>
            <mTargetName/>
            <mLUNName/>
            <mMaximumLUNSize>17592186044416</mMaximumLUNSize>
            <mUsedCapacityOS>8307027968</mUsedCapacityOS>
            <mFlags>2</mFlags>
            <mPartitionCount>2</mPartitionCount>
            <mPartitionType>3</mPartitionType>
            <mPartitionFormat>64</mPartitionFormat>
            <mShareState>0</mShareState>
            <mNextAvailableID>1001</mNextAvailableID>
            <mUsedCapacityOS>8307027968</mUsedCapacityOS>
            <mInitiatorCount>0</mInitiatorCount>
            <mLoggedIn>1</mLoggedIn>
        </n0>
    </mLUNUpdates>
    <mFirmwareFeatureStates>6</mFirmwareFeatureStates>
    <mLUNCount>1</mLUNCount>
    <mMaxLUNs>16</mMaxLUNs>
    <mSledName>Drobo-FS</mSledName>
    <mSledVersion/>
    <mShareCount>0</mShareCount>
    <mShareInfo/>
    <mSledStatus>0</mSledStatus>
    <mSledSerial/>
    <mDiskPackStatus>0</mDiskPackStatus>
    <DNASStatus>6</DNASStatus>
    <DNASConfigVersion>11</DNASConfigVersion>
    <DNASDroboAppsShared>1</DNASDroboAppsShared>
    <DNASDiskPackId>EF6D9C3FCF4D83FF</DNASDiskPackId>
    <DNASFeatureTable>7</DNASFeatureTable>
    <DNASEmailConfigEnabled>0</DNASEmailConfigEnabled>
</ESATMUpdate>

How many drives were out when this rebuild was happening? Or better yet, what exactly was the rebuild for?

I have had a hard drive inserted into a fs bay slot taken out.
The forced rebuilding is for what log come out.

Ricardo,

not sure if you are still after this text but here mine is

<?xml version="1.0" encoding="UTF-8"?>

ESAINFO116131DroboFS1.1.2 [4.25.37045]Mar 16 2011,10:24:08ArmMarvell1048063301983040443025063936026427649474561787485691904026425135923208500950000010DroboFS0803200039893401613200039893401623200039893401633500107862016412805133061280712800100017592186044416264251359232022364010012642513592320016116DroboFS000622165CBCCB365CBD05771

sorry, but not sure how you get it in the format that the others have above

Hi j_gry, yes, I’m still looking after those. Could you please explain what’s the current status of your Drobo? (number of drives, capacity, color of leds for a start).

About the format: you need to put the content inside [code ] and [/code ] tags (without the spaces). For example, [code ]Hello![/code ] comes out as:

Hello!

Drobo fired up with 5 drives all with the green state running dual redundancy.

Thought it was weird that when I went to the telnet.php address, it tried to save the file to my downloads folder. Ended up letting it save then viewing it in textpad.

<?xml version="1.0" encoding="utf-8"?>

<ESATMUpdate>
    <mESAUpdateSignature>ESAINFO</mESAUpdateSignature>
    <mESAUpdateVersion>1</mESAUpdateVersion>
    <mESAUpdateSize>16131</mESAUpdateSize>
    <mESAID></mESAID>
    <mSerial></mSerial>
    <mName>Drobo-FS</mName>
    <mVersion>1.1.2 [4.25.37045]</mVersion>
    <mReleaseDate>Mar 16 2011,10:24:08</mReleaseDate>
    <mArch>ArmMarvell</mArch>
    <mFirmwareFeatures>1048063</mFirmwareFeatures>
    <mFirmwareTestFeatures>3</mFirmwareTestFeatures>
    <mFirmwareTestState>0</mFirmwareTestState>
    <mFirmwareTestValue>1</mFirmwareTestValue>
    <mStatus>32768</mStatus>
    <mRelayoutCount>0</mRelayoutCount>
    <mTotalCapacityProtected>4430250639360</mTotalCapacityProtected>
    <mUsedCapacityProtected>1422025711616</mUsedCapacityProtected>
    <mFreeCapacityProtected>3008224927744</mFreeCapacityProtected>
    <mTotalCapacityUnprotected>0</mTotalCapacityUnprotected>
    <mUsedCapacityOS>1421830549504</mUsedCapacityOS>
    <mYellowThreshold>8500</mYellowThreshold>
    <mRedThreshold>9500</mRedThreshold>
    <mUseUnprotectedCapacity>0</mUseUnprotectedCapacity>
    <mRealTimeIntegrityChecking>0</mRealTimeIntegrityChecking>
    <mStoredFirmwareTestState>0</mStoredFirmwareTestState>
    <mStoredFirmwareTestValue>1</mStoredFirmwareTestValue>
    <mDiskPackID>0</mDiskPackID>
    <mDroboName>Drobo-FS</mDroboName>
    <mConnectionType>0</mConnectionType>
    <mSlotCountExp>8</mSlotCountExp>
    <mSlotsExp>
        <n0>
            <mSlotNumber>0</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n0>
        <n1>
            <mSlotNumber>1</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n1>
        <n2>
            <mSlotNumber>2</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n2>
        <n3>
            <mSlotNumber>3</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>1500301910016</mPhysicalCapacity>
        </n3>
        <n4>
            <mSlotNumber>4</mSlotNumber>
            <mStatus>3</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>2000398934016</mPhysicalCapacity>
        </n4>
        <n5>
            <mSlotNumber>5</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n5>
        <n6>
            <mSlotNumber>6</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n6>
        <n7>
            <mSlotNumber>7</mSlotNumber>
            <mStatus>128</mStatus>
            <mESAID/>
            <mMake/>
            <mModel/>
            <mPhysicalCapacity>0</mPhysicalCapacity>
        </n7>
    </mSlotsExp>
    <mLUNUpdates>
        <n0>
            <mLUN>0</mLUN>
            <mUniqueLUNID>1000</mUniqueLUNID>
            <mTargetName/>
            <mLUNName/>
            <mMaximumLUNSize>17592186044416</mMaximumLUNSize>
            <mUsedCapacityOS>1421830549504</mUsedCapacityOS>
            <mFlags>2</mFlags>
            <mPartitionCount>2</mPartitionCount>
            <mPartitionType>3</mPartitionType>
            <mPartitionFormat>64</mPartitionFormat>
            <mShareState>0</mShareState>
            <mNextAvailableID>1001</mNextAvailableID>
            <mUsedCapacityOS>1421830549504</mUsedCapacityOS>
            <mInitiatorCount>0</mInitiatorCount>
            <mLoggedIn>1</mLoggedIn>
        </n0>
    </mLUNUpdates>
    <mFirmwareFeatureStates>7</mFirmwareFeatureStates>
    <mLUNCount>1</mLUNCount>
    <mMaxLUNs>16</mMaxLUNs>
    <mSledName>Drobo-FS</mSledName>
    <mSledVersion/>
    <mShareCount>0</mShareCount>
    <mShareInfo/>
    <mSledStatus>0</mSledStatus>
    <mSledSerial/>
    <mDiskPackStatus>0</mDiskPackStatus>
    <DNASStatus>6</DNASStatus>
    <DNASConfigVersion>13</DNASConfigVersion>
    <DNASDroboAppsShared>1</DNASDroboAppsShared>
    <DNASDiskPackId></DNASDiskPackId>
    <DNASFeatureTable>7</DNASFeatureTable>
    <DNASEmailConfigEnabled>1</DNASEmailConfigEnabled>
</ESATMUpdate>