Daniel's Stuff

I write code

Breathing new life into my Drobo Pro

I recently saw a post somewhere that showed the internals of one of the newer high end Drobo machines.  It appeared to use the same motherboard as the Drobo Pro I have sitting here on my desk gathering dust so I decided to take another look at what I could do with the thing.  I had previously opened the machine up to get around the rebooting problem by disconnecting all the batteries with some success and in the process discovered the on board serial ports.  It turns out they have a dual core processor in them running completely different OS code on each. One running Linux and the other running VXWorks.  The linux one gives a plain old shell with lots of interesting stuff running on it.  The VXWorks one doesn’t give much though.  From what I can see the VWWorks side handles the actual disk access, while the Linux side handles the “UI” side of things, such as iSCSI on the Drobo Pro or file sharing on the Drobo Pro FS.

IMG_0404 IMG_0405

 

To get to the meat of the matter, I downloaded the firmware for the Drobo Pro FS and tried loading it into the Drobo Pro, which of course it rejected as I was expecting.  I then had a look at the firmware files and saw they both had a very similar header.  After patching the firmware file with the correct header values (an exercise for the reader to find the correct 12 bytes to alter) I was able to load the Drobo Pro FS firmware successfully into my Drobo Pro.

At first it didn’t seem to boot, but after putting some fresh disks in and rebooting the unit, up it came. 🙂  At the moment the device doesn’t show up in the Drobo Dashboard, but it does present a public share, so it’s not a complete loss.  I also took the opportunity while I had a serial cable plugged into the board to enable the telnet and ssh servers to allow me to poke around some more.

It looks like the control software on the unit is expecting there to be two ethernet ports while the physical hardware only has 1.  I may need to patch the binary…

 

 

10 comments for “Breathing new life into my Drobo Pro

  1. Sascha
    April 24, 2015 at 5:42 am

    Dear all, I have found the solution for the fu*** continous rebooting error. On my bosses’ drobo fs800 there was also the error. It comes from a broken boot-loader on the built in software. It can be resolved in less than one hour. All you need is two ttl serial (usb) converter. And at least putty, windows and two free usb Ports at the Computer. If you want to hear more, please feel free to write me. Kind regards, Sascha

  2. Itai
    May 22, 2015 at 10:52 am

    Any way you would post your fixed firmware? I’ve got a drobo pro but it is stuck on version 1.1.4. I’m willing to try anything at this point. Thanks!

  3. Sascha
    May 22, 2015 at 11:28 am

    Dear all,
    you need at least two TTL/USB Adaptor. They are shipped with some small Jumper cables. They need to be connected with the two described 4 pins. There you need GND, TX and RX. The GND is at the other side of the white marked end. The TX and RX needs to be crossconnected to the TTL Adaptor. You should use PUTTY two times parallel. Please use 115200, N, 8, 1 serial Setting. Now you should start the Drobo. On your Output of Putty you should see the startup. After two seconds break the startup with typing any Key. Now type in a “?”. You should be able to issue the command “Bootflash” or “flashboot” followed by a blank and “2”. It looks like “bootflash 2”. Followed by an enter. Thats all. When startup is now finished pöease issue “boot” in your other PUTTY. When your Drobo is finished with booting and presented in your Drobo Software, you MUST reupdate the software of the Drobo. Then the issue should be solved. In case of any Problems or it worked please post this here. All the best, Sascha

  4. Sascha
    May 22, 2015 at 11:33 am

    One note: Please take care that you issue the bootflash Command in the PUTTY, where the Linux Startup is shown (They looks very similar) !!!! NOT in the window, where the VX starts. Maybe you Start Drobo and views a complete Startup in both PUTTYs. There you should see in one window a “kernel panic”. Then the drobo stops working and reboots. This is the correct window 🙂

  5. Bert
    November 8, 2015 at 1:53 am

    Many thanks to Sascha, your advice saved me a lot of frustration!
    I had to do “flashboot 1” rather than 2, but otherwise it worked fine.

    It seems the drobo quite sensibly includes 2 copies of its firmware incase one gets corrupted, but for some reason is unable to switch between them properly when corruption does happen…

  6. December 28, 2015 at 8:43 am

    Is there a way to go the other direction, converting a DroboPro FS to a DroboPro? I would like to use iSCSI with my Drobo, but my model does not support it. I’ve looked for 3rd party solutions to setup iSCSI on the DroboPro FS, but have never been able to find anything to get me there.

  7. February 20, 2016 at 12:08 am

    I imagine it could be done, however if you do that then you wont be able to administer the iSCSI as the Drobo dashboard probably won’t recognise the updated device.

  8. David Meyer
    July 15, 2016 at 5:26 am

    YES! Thank You! Revived my bricked Drobo FS – mine would boot get an IP and then never open any ports for management.
    After taking it apart, I found the Serial pins as others have documented, purchased a cable and dove in with Putty.

    Your Articles and the Comments lead me to try ‘flashboot 2’ after stopping the Marvell boot sequence on my Drobo FS unit that would boot and then fail at the ‘nasd’ step that seems to control most of the ‘getting setup’ steps – specifically “nasd: error while loading shared libraries: /lib/libcrypto.so.0.9.8: invalid ELF header” – this had me dead in the water (learning Linux on the fly) – so the option to try a 2nd (presumably backup, identical) boot bank worked! Thanks!

    Now that’m getting things back online – is there any way to clone/copy/export the bootbank that worked (#2) back to bootbank #1 or even extract tftp it away for safe keeping if at all possible.

    Drobo Support had pretty much given up on me, offering me a $100 coupon on a new unit – so I don’t hold much hope that they’ll have much more to offer, but wanted to THANK YOU! and ask if you all had any more thoughts now that we’ve come this far ..

  9. Sascha Lindner
    July 15, 2016 at 10:12 am

    Dear David. I am glad, that I was able to help you.
    So, when your Drobo is online again, you should only reflash the complete Box (with the Drobo Software) in order to exchange the corrupt flash with a working one. There is no other possibility to TFTP or copy from the backup flash.
    Kind regards and all the best wishes,
    Sascha

  10. Eduardo Elias Rivas
    January 29, 2017 at 6:49 pm

    I have found this article in time to fix my Drobo FS. I have only 1 question and that is what cable do I buy. I have found many but I am confused since most have different ends on the serial side.

Leave a Reply

Your email address will not be published. Required fields are marked *