md1200 disk shelf
I had a lot of problems getting the fans to spin down. To start with I had to buy a special cable, use these serial settings: RS232, 38400-8-n-1, and update the firmware, replace the EMMs after a failed _boot command.
The most useful commands have been:
_ver
_boot > File Transfer > xmodem > send
set_temp <#> <c>
_temp_rd
set_speed <%> | _shutup <%>
https://forums.servethehome.com/index.php?threads/fun-with-an-md1200-md1220-sc200-sc220.27487/
BlueDress.106.000 >devils
devils
asset_tag Set or Display the Asset Tag: asset_tag {setvalue}
asd_offset Set or Display the Auto-Shudown Offset value: asd_offset {setvalue}
broadcast Send Broadcast SES Message: broadcast
chassistype Display and or Set Chassis Type: chassistype <0 = Blue Devil !0 = Red Devil>
clear_eel Clear Event Error Log: clear_eel
clear_temp Remove override of Temperature: clear_temp <sensor>
dbs Database Read : dbs <page>
devils Print the Help Screen
drive_led Write drive led: <logicaldrive> <data>
eepromdump EEprom Dump: eepromdump <port><addr><size in K(1,2,4,8,..512>
eepromfill EEprom Fill: eepromfill <port><addr><size in K(1,2,4,8,..512><pattern>
eepromwrite EEprom Write: eepromwrite <port><addr><size in K(1,2,4,8,..512><offset><length><pattern>
fanlog Fan fault count for each power supply fan [8 per unit]
fpgadisable Put FPGA in Slave Mode: fpgadisable>
fpgaenable Put FPGA in Master Mode: fpgaenable>
fpga_rd FPGA Access: fpga_rd <Register> <#bytes>
fpga_wr FPGA Access: fpga_wr <Register> <data>[<Register> <data> ...]
fru_display Display FRU Status: fru_display
fru_clear Clear Fru: fru_clear [0-SIM0, 1-SIM1, 2-PBP, 3-PS0, 4-PS1 5-SBP]
fru_download Download Fru: fru_download [0-SIM0, 1-SIM1, 2-PBP, 3-PS0, 4-PS1 5-SBP]
fru_read Read Fru: fru_read [0-SIM0, 1-SIM1, 2-PBP, 3-PS0, 4-PS1 5-SBP]]
get_time get encl time: get_time
gpio_rd Read a GPIO: gpio_rd <number>
heart_beat SIM Heartbeat Control: heart_beat [0=off !0=on] <timeout>
isim_debug Change or view isim stats: <data> <0 - Disable; 1 - Enable>
l4_test L4 integration manufacturing diag: l4_test
lm75 LM75 Read Access: lm75 <Slave Address>
lm75_rd LM75 Read Access: lm75_rd <Slave Address> <Register>
lm75_wr LM75 Write Access: lm75_wr <Slave Address> <Register> <1 byte>
log_ipmi Log an IPMI Event:log_ipmi<Code><Type><Sensor><EV0><EV1><EV2><EV3>
max6654 Display MAX6654 Registers: max6654 <i2c port><slave addr>
noise Write audible alarm: <data>
nvramread8 Read NVram 32bit area: nvramread <address> <length>
nvramread Read NVram 32bit area: nvramread <32bit address> <length>
nvramwrite8 Write NVram 32bit area: nvramwrite <address> <data> [<32bit address> <data> ...]
nvramwrite Write NVram 32bit area: nvramwrite <32bit address> <data> [<32bit address> <data> ...]
page_a Display drive SAS Address: page_a
ps_status Get P/S Module Status: ps_status <l(eft)/r(ight)>
ps_cap Get P/S Module capability: ps_cap <l(eft)/r(ight)>
ps_clear Clear P/S Module Status: ps_clr <l(eft)/r(ight)>
ps_page Get P/S Module Status: ps_status <l(eft)/r(ight)>
ppid Set or Display PPID: ppid {fruNumber}{setvalue}
prompt Prompt on/off
rd_8 8-bit Read: rd_8 <address> <# of 8 bit words>
rd_16 16-bit Read: rd_16 <address> <# of 16 bit words>
rd_32 32-bit Read: rd_32 <address> <# of 32 bit words>
reset_peer Reset other SIM using GPIO <1-reset peer>
reset Reset ARM using Watch Dog timer
rev SIM Firmware and Diagnogstic Revision
sas_address Display SAS Address from Phys: (option for magic addr <1>)
sbb_status Set SBB status: sbb_set <default-print status, 0-set good, 1-set failed>
scratchpad Display Location of Memory Test Area: scratchpad
service_tag Set or Display the Service Tag: service_tag {setvalue}
ses_page Display SES Page: ses_page <page><buffer size>
set_speed Sets Fan Speeds: set_speed <0-100%> 20 default
set_temp set encl temp: set_temp <sensor><temp>( -55 to 125 degrees C)
set_thres Set P/S Module Fan Speed Threshold: set_thres <l(eft)/r(ight)><speed code 0..15>
shelf_led Write shelf led: <data> <0 - Disable; 1 - Enable>
twi_dis TWI device discovery: twi_dis
twi_rd TWI device byte read: twi_rd <port ID> <address> <# of bytes - 0xff max>
twi_stats Dump twi statistics: twi_stats [clear]
twi_wr TWI device byte write: twi_wr <port ID> <address> {0xff bytes max}
twi_wr_rd TWI device wr/rd: twi_wr_rd <port ID> <address> <#read bytes> <write data>
wr_8 8-bit Write: wr_8 <address> <data> [<address> <data> ...]
wr_16 16-bit Write: wr_16 <address> <data> [<address> <data> ...]
wr_32 32-bit Write: wr_32 <address> <data> [<address> <data> ...]
BlueDress.106.000 >_devils
_devils
_boot Download the boot image (FW image 1 and 2 erased)
_clrphyerr Clear PHY error counter(s) <phy Num (invalid PHY Num=all)>
_date Date: date
_debugpage2 Dispalys Page 2 data when Host read it : 0 = OFF !0 = Active
_devils Print the Extended help
_dwd_reset Disable WatchDog reset: dwd_reset
_download Down load code using Xmodem: Region[0-9] Offset Erase[y/n]
_download_fpga Down FPGA load code using Xmodem: _download_fpga
_drive_pres Return Drive presense: _drive_pres
_ecc Display ECC counts: ecc {clear}
_ema_poll Turns on or off the analysis polling. Disables SES & LED update
_erase Erase F/W Region: erase [0..10] NOTE: This can mess up your code!
_event Event log test
_fan_ctrl_thrd Write fan control parameters in C: fan_ctrl_thrd <M> <H> <SIM offset> <hysteresis>
_flashdump Dump Flash: flashdump <offset> <length>
_fpgaread Read FPGA Register: fpgaread <register> <length>
_fpgawrite Write FPGA Register: fpgawrite <register> <data> [<register> <data>...]
_fail_ts Fail temperature sensor: fail_ts <sensor>
_flashpeer Flash Peer: <0=ACTIVE ; 1=BOOT>
_gpio_setting Read a GPIO Setting: gpio_settings <0..7>
_history Show CLI History: history
_hotswap Enable/disable Hotswap
_icid_clear Clears the ICID value to default.
_isim_msg Send message to ISIM thread
_ledconfig Show LED Configuration Settings
_ledmode Set Mode for led: ledmode <number><direction><state>
_ledread Read LED GPIO value: ledread <number>
_ledset Set LED GPIO Value: ledset <number><state>
_lm75_trip LM75 Interrrupt Control: lm75_trip <sensor><state>
_loadcpld Load xsvf file from flash into CPLD
_map Display SES Sensor Data: map
_phy_info Display SAS phy information
_ps_pmb_test Test P/S Module PMBUS commands: ps_pmb_test <l(eft)/r(ight)>
_psfup P/S Module Firmware update: psfup <l(eft)/r(ight)>
_queue Dump the Message Queue usage: queue
_quick Quick regression: quick
_rdcam Read CAM Address contents <address (0-1024)>, <display count>
_rdtxphy Display current SASTX2G Phy settings <phy Num (invalid PHY Num=all)>
_rdrxphy Display current SASRX2G Phy settings <phy Num (invalid PHY Num=all)>
_rdphyerr Display PHY error counters <phy Num (invalid PHY Num=all)>
_rdled LED Control Register Read: rdled <offset> <# of 32 bit words>
_runtime Down load code using Xmodem to the non-active region: runtime
_set_cid Set company ID of ELI: cid_set [0-From Exp, 1-Custom <32bit data>]
_shutdown Invoke a thermal shut down sequence: _shutdown <why>
_shutup Slow down fans: _shutup <0-100%> 20 default
_slotled Control Slot LEDs: slotled <slot><pattern> (slot > MaxDrive = 'all')
_splitforce Control Split Override: splitforce <0-switched; 1-ForceJoin; 3-ForceSplit>
_ssc_control Turn SSC on or off <enable 1, disable 0>
_stack Show Stack Usage: stack
_temp_rd Read current temperature values
_temp_thrd Write temp thresholds: temp_thrd <HS> <HC> <HW> <LW> <LC> <LS>
_test_stub test_stub
_thread Display Threadx Information: thread
_timer Display Timer information: timer
_trace Display Trace Log [- for Tail] [+ for Head]: trace [-]count
_traceclear Clear trace log: traceclear
_twi_hang Hang the TWI bus for testing purposes only
_ver Version Information: ver
_wdt WatchDog test: wdt <who>
_who Who's home (installed): who
_wrphy Write SAS2G1-3 Phy setting <phy number,Dword>
_wrphyall Write all SAS2G1-3 Phy setting <uses PHY setting table>
_zone_mask Display Zone Mask for all PHYs
No Comments