Fun with an MD1200/MD1220 & SC200/SC220

ArakniD

New Member
Jun 26, 2020
2
0
1
Hello guys, little off-topic - week ago i became happy owner of sc200 - also i bought 2 lsi 9200-8e based IT flashed cards for it. Initialy i thought that its possible to use it in High availability mode 1 controller goes down second one takes over.
Thats what i found on SC8000 manual:

View attachment 15151

based on this i still believe HA mode is possible - but maybe my 2 port cards could be a problem.
Thinking other way second SC200 controller is only used with SAS drives maybe i could use 1 port each controller to connect to 1st SC200 controller and other controller ports to connect each other to be as close to dell design as possible?

Or maybe theres some sort of command to send to 2 controller to take over.

Does anyone here have any sort of experience doing such configuration?
I’ve got a sc220 (24x2.5) and a md12 (24x3.5) (reports as 1240 anyway) (24bay) Shelf connected to two dual h300 per r620.

Port A of each md12/sc220 to head one, card 1 and 2. And port “out”/B to head two.

I can import volumes on both heads, given the right reservations of course.Both headsee all drives with dual paths.

Want any tests run?
 

Ryan Flagler

New Member
Aug 23, 2016
5
0
1
35
If any of you want something to mess with, I currently have an md3200 in the mail (after I realized the md3200 controllers only accept dell drives listed on their matrix *facepalm*) From what I've read they use the same backplane but only swap some CID which is why I'm guessing there is even a password. Once I get the thing (already ordered some md1200 emms) gonna try and swap them out and see if I need to mess with the backplane or if it will just work.

If it doesn't I'll post up anything I can find, but another spot to tinker. I hear you can also covert an md1200 into an md3200 if you wanted the extra features. In my case I just need a disk shelf to throw onto a server for storage.

Linky to where I may have a password that will work for the vx shell: How to connect to the console on a Dell MD storage array

Will have to wait til it gets here to know what I need to do to get into that shell...
Regarding the md1200 emms in an md3200, it won't just work. Here are a couple threads explaining that the backplane actually has a setting that needs changed for it to work as you expect.

If anyone knows how to convert the backplane, that would be super useful.

Also, has anyone tested 4kn drives in an sc200? Either the backplane or the EMMs in an MD1200 don't like them. I'm curious if that's any different in an SC200. (based on information in this post, I'm guessing it won't like them either)
 
Last edited:

CheeseDrink

New Member
Aug 24, 2020
1
0
1
Hello guys, little off-topic - week ago i became happy owner of sc200 - also i bought 2 lsi 9200-8e based IT flashed cards for it. Initialy i thought that its possible to use it in High availability mode 1 controller goes down second one takes over.
Thats what i found on SC8000 manual:

View attachment 15151

based on this i still believe HA mode is possible - but maybe my 2 port cards could be a problem.
Thinking other way second SC200 controller is only used with SAS drives maybe i could use 1 port each controller to connect to 1st SC200 controller and other controller ports to connect each other to be as close to dell design as possible?

Or maybe theres some sort of command to send to 2 controller to take over.

Does anyone here have any sort of experience doing such configuration?
So I've tried this on my own and without the software running on each respective controller being aware of the SAS pathing to the disk, there is no connection that I could get going. The reason that diagram works is due to the Compellent controller and software magic. I wasn't even able to get the Compellent branded LSI controller to recognize the drive tray.

This was with 2 SC8000 (flashed to R720 BIOS) controllers and 2 trays of SC220 disk. I could only get them connected to the SC8000's via the same LSI9200-8e.

However, if your tray of disk has two EMM modules, they act as multi-path to the SAS disks in the tray.

My setup is from one server, two SAS 6Gbps cables from the LSI9200-8e going to Port A on both EMM modules. This gives me two paths to each SAS drive.

So unless you're running the Compellent software, I think it would be exceedingly difficult.
 

CarlWilhelm

New Member
Oct 28, 2020
10
1
3
Hi guys.
I have a SC200 with the Compellent SC2 controllers.
I have tried to connect to it with a normal FTDI Serial to USB adapter and putty. I set it to 38400-8-n-1 but i get no response.
Also tried with Tera Term VD, no difference.

What software do you guys use to communicate with it? I assume it should be possible from windows?
Would love to ramp down the fans a bit.
 

HoustonFX

New Member
Oct 31, 2020
1
2
3
Awesome and helpful thread. I was able to connect to some Dell MD1200 controllers with extraputty 38400-8-n-1 and upgrade the firmware as well as set the fan speed.

One question, is there any way known yet to make fan or temp changes persist on a reboot?
 
Last edited:

fohdeesha

Kaini Industries
Nov 20, 2016
2,140
2,045
113
30
fohdeesha.com
Awesome and helpful thread. I was able to connect to some Dell MD1200 controllers with extraputty 38400-8-n-1 and upgrade the firmware as well as set the fan speed.

One question, is there any way known yet to make fan or temp changes persist on a reboot?
nope, not that I know of
 

acsmith

New Member
Nov 12, 2020
2
0
1
I have a usb uart cable and putty. I'm not able to get any output from the md1200. What could I be doing wrong?
 

gwicksted

New Member
Nov 19, 2020
2
0
1
I have a usb uart cable and putty. I'm not able to get any output from the md1200. What could I be doing wrong?
XON/XOFF is required or it simply will not respond... but Putty does this by default and it does no parity, 8 data bits, 1 stop bit by default so as long as you put in 38400 and the correct serial port, you should be fine. In fact, it can get to a point where you need to power cycle the shelf if you hit it with too much nonsense.
 

gwicksted

New Member
Nov 19, 2020
2
0
1
Question below to others with MD1200s.

Back story: I cannot get fan speed to stick (now that I have 8 drives loaded). It looks like the unit reboots which resets everything including temp overrides, and fan speed. Even when I tried watchdog disable and ema poll disable. I notice a short orange flash on the front of the shelf when this happens. It also sends the startup message over the diagnostic interface as if I power cycled the unit.

I did perform fan mods in the PSUs to drop one delta fan in place of a noctua with the PWM disconnected to the noctua and it just running on DC with the tach for both fans hooked up to the leftover delta to fool it into thinking everything is normal (and fan speeds are confirmed working and duplicated). I also unplugged the noctuas but that has made no difference. I will see what it sounds like and monitor temps with just the noctuas going full tilt due to an alarm condition... but was hoping not to. I can also put the deltas back in... but even at 20% it's a little loud to work beside. Worst case, I'll slap some arduinos in there to simulate the tach given a pwm signal and drive the fans based on temps either from additional sensors or I'll have it connect to the diagnostic port -- but that's a lot of work to get a shelf to behave.

Anyways, I don't think the fans are the only issue here. The give away I have is the asd_offset command returns:
Read of Active BP Fru failed. 0xE2 4
and _ecc returns the following (after I _ecc clear this eventually comes back upon next reboot):

Single BIT errors ID 0 : 0x00000001
Single BIT errors ID 1 : 0x00000001
Double BIT errors ID 0 : 0x00000001
Double BIT errors ID 1 : 0x00000001
Double BIT address ID 0 : 0x00000120
Double BIT address ID 1 : 0x00040120
I updated the firmware to 106 prior to this happening.

Disks installed are dell branded Toshiba enterprise 4TB drives. I've installed left-to-right from top to bottom so perhaps it doesn't like there being a hole every third drive..? But it seems to not be that picky. The remaining slots are filled with empty disk trays (no blanks).

Does anyone else see these results from _ecc/asd_offset? Or does it look like I have faulty hardware outside of the PSUs?
 

Hugo0Boss

New Member
Feb 6, 2021
1
0
1
So I recently followed this thread to get my md1220 updated and gain the ability to control the fans, Many Thanks to everyone who has posted. since this thread has helped me so much here is a couple things I've learned hopefully this helps someone.

Goal: to make my home lab quiet and house friendly.
problem: I had impulsively bought a md1220 for Freenas and now had a Noise problem in my office. (note) the md1200 and md1220 aren't impossible to be near while they are powered on and working however were the largest contributors to sound in my office and i do like peace and quiet if i need to be in a video conference or want to relax

Solution: So after stumbling across this post i learned how to update my enclosures to the latest firmware through the sas connectors following fohdeesha's instructions on finding the enclosure and writing their firmware next i tried the fan control commands through sas unfortunately like those who tried before me it didn't work so then i decided to purchase a password reset cable plugged it into my r710's serial port i could get an output but no input for whatever reason so i purchased a serial rs232 to usb adapter from bestbuy so i didn't have to wait for shipping plugged it into my main computer for easy debugging followed the serial instructions of baud 38400 8 data bits 1 stop bit and XON/XOFF flow control and boom i could now not only see the enclosures taunting prompt but type into it fiddled around with the commands for a bit primarily the set_temp and set_speed commands and noticed that i could set the speed lower then 20% and after anywhere from 10 seconds to 1 minute the fans would ramp back up. Noticing this i did a test what if i just keep setting the fans less the 20% what would happen? Then i noticed that if i sent commands every 2-10 seconds i would consistently be able to keep the fans under 20% now the only problem I had was automating it and not just using ahk script to automatically send the commands since my computer isn't always on. So I need a Linux script initially I tried using minicoms scripting language and it "worked" but i couldn't get a cronjob to lower the fans and could only get the command working manually after about a day of research i found something that fit all my criteria this is what i came up with its a simple script that I run every minute in crontab and what it does is set the Serial port parameters and then spoof the temp and speed if you need it to run less or more often just adjust the for statement and sleep time also to run this as a user i just gave my user the groups tty,input, and brltty. anyway i hope this helps someone out with automating the fans to run at a lower speed the normally possible
Code:
#!/bin/bash
for i in {1..10}
do
stty -F /dev/ttyUSB0 speed 38400 cs8 -ixon raw
echo -ne "set_temp 0 0\n\r" > /dev/ttyUSB0
echo -ne "set_temp 1 0\n\r" > /dev/ttyUSB0
echo -ne "set_speed 10\n\r" > /dev/ttyUSB0
echo -ne "set_speed 10\n\r" > /dev/ttyUSB0
sleep 5
done
exit
TL;DR: the code above i used in order to automatically set my fan speed lower then the usual allowed amount with a cronjob running this script every minute also the builtin r710 serial port might work but i was unable to get anything passed a simple output no input from any serial console I tried short list (putty, minicom, tip, cu, and screen) but with the serial adapter to usb worked fine so idk.
 

billeuze

New Member
Feb 28, 2021
2
0
1
Also, has anyone tested 4kn drives in an sc200? Either the backplane or the EMMs in an MD1200 don't like them. I'm curious if that's any different in an SC200. (based on information in this post, I'm guessing it won't like them either)
4kn disks DO work in an MD1200 as long as the controller the MD1200 is plugged into supports 4kn disks. I had 4 Seagate ST10000NM0206 working in one MD 1200 for a few months before I moved them to a different server. I also have 3 new (new to me) MD1200 each with 11 ST8000NM0065 in them. They are working no problem. Using Dell Perc h830 controllers in Poweredge R730 and T630 servers
 

billeuze

New Member
Feb 28, 2021
2
0
1
So you guys who use a lot of MD1200, does anyone know of a solution for the following:

I have a couple of 13th generation Dell servers (R730 and T630) each with a Perc h830 controller attached to an md1200. The servers are running esxi and I manage the raid arrays on the MD1200 using perccli. It works flawlesly

I recently added a second MD1200 to one server and acquired a third server with 2 MD1200 connected. It does not work flawlessly anymore. Existing virtual disks still work and I can create new virtual disks in perccli specifying which disks to add to the array. But any operation on an individual physical disk fails with " ErrCd 255 Enclosure not found" for example adding a hot spare, blinking, spinning down individual disks is not possible anymore.

I tested using a Perc h810 controller (which supports the MD1200) and this problem goes away. But of course the h810 does not support 4kn disks and I just purchased 30 of them, so I will stick with my h830 controllers. Eventually, If I don't find a solution to this I'll have to switch to MD1400 enclosures. But as you probably know, even on the used market they cost 10x the price of an MD1200.

I did flash to the latest firmware (1.06). One more thing I've noticed is that even with 2 MD1200 chained together, everything works on an enclosure identified as EnclosureID 0 in perccli. When using a single controller perccli always identifies it as EID 0. When using 2 MD1200 it picks different numbers. So I wonder if you guys working with the low level commands on these enclosures know how the enclosure# is decided and can it be controlled? My 2 servers with two MD1200 each act a little differently and I don't know why. On one server the first MD1200 comes up as EID 30 and the second one as EID 56 (but if I only use one of them, it becomes EID 0). With this one I can't do individual disk operations on disks in either enclosure. In my other server, for some reason the first MD1200 comes up as EID 0 and the second one as EID 21. On this server, I am able to do individual disk operations on the MD1200 identifies as EID 0, but not on EID 21. So I am wondering that if there is a way to force the first enclosure to EID 0. I am also wondering, If it is possible to force the second enclosure to a lower number like EID 1, would it then work for individual disk operations?
 

Syndikos

New Member
Mar 5, 2021
1
0
1
Really amazing stuff here guys, nice finds all round!

I've had a poke around with my MD1120 without much success. Has anyone had any luck using this method on the 1120?
I would assume it would be a similar setup to the MD1000
 

WalkinTheWoods

New Member
Mar 5, 2021
1
3
3
Hey guys, i thought i would throw my two cents in here. Big thanks to OP for this thread.
4x MD12xx's 2 meters from my bed over here

If anyone has any idea how to pull the power usage from these things i would be eternally grateful.

My experience and hopefully useful info:
  • The password reset cable thing is required.
  • If you're serial illiterate like myself, download putty, install it, open it, select serial in the config side bar, select the serial line, "COM1" seems to be my default and seems to be the correct one, this may be different for you, set speed to 38400, data bits to 8, stop bits to 1, parity to none, flow control to XON/XOFF, go back up to session, select the serial , then open. Will open black window, press enter and you're in. Type devils command for a list of commands, _devils for the other list, they're different for some reason. Some commands are not implemented
  • _shutup <x> will set your fan speeds to x%: _shutup 20 sets to 20%
  • set_speed seems to work the same as _shutup
  • _temp_rd will pull the system's temps
  • Most of the other commands don't appear, at least to me, to be all that useful.
  • After a minute or so the system seems to do some sort of reset, clearing your temp settings and fan settings
  • Scripting the command to send every 1-2 seconds works and keeps the fan speed constant
  • I haven't seen any reason to spoof the temp settings. As they get wiped anyway and it seems to make no difference.
  • I've noticed that if you use both controllers, and spam the command, sometimes the other controller will not get the memo for a few seconds and the speed will ramp up for a bit before going down every few minutes. This problem doesn't exist with a single controller.
  • I'm not aware of any negative for spamming the command every second, if anyone has any insight for this please share.
  • Scripting it to pull the temp with _temp_rd or pull drive temps from an external source and then adjusting the fan speed from there is easy enough and doable
  • 20% seems to keep the drives and enclosure cool enough and isn't too bad on the ears, if you just want a default.
  • _shutup scripting seems to work fine without updating the firmware
  • I personally use lsi 9200-16e as my hba, working and have no issues connected to gen 11 and gen 12 dell poweredge servers.

On windows using powershell, this terrible script i made will send the "_shutup 20" command every 2 seconds over serial COM1
Code:
Do {

$port = new-Object System.IO.Ports.SerialPort COM1,38400,None,8,one
$var = "`r"
$port.handshake="XOnXOff"
$port.NewLine = "`r"
$port.Open()
$port.writeline($var)
$port.WriteLine("_shutup 20")
$port.Close()

sleep 2

}

while ($true)
This will pull the temp data
Code:
$port = new-Object System.IO.Ports.SerialPort COM1,38400,None,8,one
$var = "`r"
$port.handshake="XOnXOff"
$port.NewLine = "`r"
$port.Open()
$port.writeline($var)
$port.WriteLine("_temp_rd")
Sleep 1
$read = $port.ReadExisting()
$port.Close()
$read
pause
These work fine.

Scripting works pretty much the same on linux/freebsd(freenas). Although i'm useless with powershell and even worse with bash. However i've managed to get it going on freenas, although i don't understand it enough to advocate copy and pasting to linux/freebsd. Both of the below blocks are run on truenas/whatever current build
Code:
# This sets the serial port parameters, i only loosely know what any of this means but it works i guess...
stty -f /dev/cuau0 eol "\" cs8 -cstopb -parenb ixon ixoff
# Will send the _shutup 20 command and execute it
echo -ne "_shutup 20\n\r" > /dev/cuau0
Running this script works fine after setting the parameters. I was logging the command just to make sure it was still running. You can delete the entire line.
Code:
while true
do
echo -ne "_shutup 20\n\r" > /dev/cuau0
echo $(date -u) " Fan: 20%" >> md1200fanlog
sleep 2
done
I've made an ugly script that pulls the temp with _temp_rd, and then runs _shutup based on that temp/fan curve once every second for 10seconds and then repeats the temp pull. The average temp stays below 40c at 20% and i've been running that for a few months now on 4x md1200's with no issues. I never bothered to update the firmware on 3 of them. And the fans stay at a constant speed while using a single controller.
 
Last edited:

acsmith

New Member
Nov 12, 2020
2
0
1
I ordered a password reset cable and it worked fine. I'm not sure what was up with the uart cable I was trying to use.
 

bmearnhardt

New Member
Apr 5, 2021
4
0
1
Has anyone found a way to check the temperature on a Dell SC200? The "_temp_rd" does not appear to be a valid command for it.
 

neb50

Member
Aug 28, 2018
57
15
8
You can use the sg_ses command to get the temp sensor and fan data from the SC220 so it should also work with the SC200. I just did it on a SC220 a couple weeks ago, but don't remember exactly which options I used. It was from within FreeNAS that I got it to work. The ported commands run under Windows did not seem to work and was probably related to permissions issues with Windows.
 

Sellular

New Member
May 3, 2020
1
0
1
Contrary to what a lot of other people have said, i only issued the set_speed command once to lower fanspeed to 10% and it hasn't ramped back up at all. Not sure what my controllers' firmware versions are as I didn't update them, and I probably won't since everything is working well atm