# Computer Upgrade

I have been using a HP N54L Microserver as my daily driver for about
8 years. It's a small square unit that doesn't consume much power
(56w idle), has been installed with 4Gb of RAM, 2x 2Tb WD Red drives
and a HP p410 battery backed raid card with 512mb cache. It also has
a low profile soundblaster sound card to provide sound.

The machine has served me well, but as time has gone on the fact that
it is a non-standard form factor has been an increasing concern to
me. If you have read any of my posts about hardware preferences[1]
you would know that I advocate for standard ATX form factor computers
because replacement parts and upgrades are far more readily
available.

I have had a more powerful computer sat idle for some time in the
form of a 4U rack server case which holds standard ATX components.
After it stopped being my webserver, when I moved hosting to a VPS 4
years ago, I bought a 3Ghz core 2 duo motherboard bundle with 4Gb RAM
off Ebay quite cheaply to replace the Abit BP6 which had several
leaking capacitors. Since puting it together I've added a further 4Gb
of RAM and then done nothing more with it.

Now seemed like a good time to put that more powerful system into
service, if I could transfer the raid system across from the HP and
ensure it would run reliably.


## Xeon modification

I had been aware that it was possible to fit a socket 771 Xeon
processor to some of the 755 boards, with a little modification.
Some months ago, after a little research, I had decided to purchase
an E5450 Quad Core Xeon to attempt this modification. This is a Quad
Core 3Ghz CPU with 12Mb of cache.

The 771 socket is a little different to the 755 so requires you to
buy a little sticker to reverse two of the pins on the CPU, you also
need to file 2 new grooves into the CPU, or remove the locating tags
from the CPU slot on the motherboard. I didn't fancy potentially
ruining the motherboard attempting to cut off the locating tags so I
took to filing the CPU instead. It took a few trial fittings and
repeated filings to get it to fit nicely but after a little work it
fitted well. The sticker was a little fiddly to get perfectly aligned
with the pins but also went without a hitch.

I refitted the CPU fan after cleaning both the top of the CPU and the
heatsink face with IPA and applying a thin film of arctic silver 
thermal compound. Firing up the PC was a bit nerve racking as I had 
never tried this before. The computer bleeped and then powered off, I
thought maybe something was up with it but pressed the power again
just in case. I saw some warning about the bios battery, it had
obviously died since I had last used the machine but it proceeded
through the boot sequence and appeared to show the correct CPU
values. There was an old install of Debian on the HDD which it
proceeded to boot. Checking 'cat /proc/cpuinfo' showed that there was
indeed a Quad Core Xeon fitted[2].


## Waiting on a mini SAS cable

So the machine appears to work, but in order to move the raid
subsystem from the other machine I need a mini SAS cable. I have one
on order and it should be here in the next couple of days.

Further updates will follow.


## Update 01/08/2023

The SAS cable finally arrived this morning. I hurriedly pulled apart
the HP microserver to get out the hard drives and raid card that I
needed to transplant into the Xeon. However, there was just enough
doubt in my mind not to proceed with cutting the cable ties securing
the cache battery to the chassis. 

Assembly of the components was simple as I had already refitted the
hot swap SATA drive bays and the raid card was just a PCI-E card slot
secured with a single screw. The cable was a little tricky as there
wasn't much space at the back of the drive bays.

I powered on the machine, but there was no display. I didn't remember
having any problem with HDMI previously but just to rule it out I
tried the DVI port, with the same result. I decided to check the BIOS
to see if there was anything. I noticed that there was a setting for
video which was set to auto detect, you could select internal or
PCI-E. I wondered if it had gotten confused by the raid card so I set
it manually to onboard. Rebooting again resulted in the same black
screen. I pulled out the raid card and tried again. This time I got
the boot screen. This proved there was no issue with the display so I
refitted the raid card and disconnected the cable in case this was a
source of the problem. Still there was no display.

For whatever reason the system doesn't seem like the HP p410 raid
card. I fitted my old PCI 3ware raid card, which has no cache or
battery back up, to see if this worked; and it did. I continued to
fit two 200gb drives that were previously in the same chassis when it
was my former web and email server. This made it into a usable system
but not the one I had hoped for.

There was nothing more I could do but clean up the inside of the HP
microserver and refit the parts I'd taken out. Thankfully everything
worked just as it had before when I came to power it on again.

I was honestly quite disappointed at this point. I'd spent the
morning stripping down a perfectly serviceable computer to transplant
the best disk subsystem I own into the most powerful computer that I
own, only for it to fail to work. 

I've since installed OpenBSD on the Xeon machine and done a little
configuration. I'm actually writing this post on it, but I really
don't know what I will do with it in the long term... 


## Update 04/08/2023

To cut an ever longer story short. I bought an Adaptec ASR-5405Z
512mb cache SAS raid controller off Ebay for 11Gbp. I was already
quite heavily invested in this thing so I thought, what's another
11Gbp? I hoped that this generic raid card would not have the same
conflict as the HP one and that life would be good again, but I also
braced myself for the fact that it too may not work for the same
reason as the HP raid card.

Well, I fitted the card and connected it up with the SAS cable I had
bought to connect the drives to the HP controller and ... Blank
screen, same as the HP controller. I wasn't about to give up and
thought there has to be something I can do. So I removed the raid
controller and set about downloading BIOS updates. After several
attempts I managed to make a bootable CD with the necessary software
on it. Everything looked good but it just seemed to hang at the point
of writing the first part of the update, I left it for quite some
time as I didn't want to interrupt it if it was actually writing data
but after some 20 minutes of it sitting there with the power light
blinking and the screen stuck at 'writing intel me...' I decided to
pull the plug. Next I managed to put a bios update file on a USB
stick which could be read if it was vfat with the file on and
accessed from the built in 'f7' bios update menu. It stuck at exactly
the same place in the same way.

I was getting pretty desperate by this point so I pulled out the xeon
and put the core 2 duo back in to see if this made any difference; It
didn't. Last resort, RTFM. So I started digging through the
motherboard manual and stumbled upon the following passage:

```
    When a non-video PCI Express add-in card is installed in the PCI
    Express x16 connector on the Desktop Board, the HDMI port is
    disabled.

```

"You've got to be kidding!!" so I found myself a dvi -> vga adapter
and put the raid card back in and tried again. It worked!

What a palava! I'd been pulling my hair out all because the HDMI
connector is disabled if you fit a card in the pci-e x16 slot. Just
to be sure I connected the SAS cable and configured the drives. Sure
enough everything worked as it should and the day, and my sanity, has
been saved!


## Update 09/08/2023

The saga continues. After my last update it seemed that I was home
free and only had to install my OS. Well unfortunately that wasn't
the end of it. I tried to install OpenBSD but it turns out there is
no driver support for that card (adaptec ASR-5405Z). I was back to
square one...

At this point everything came into question, should I install
FreeBSD which does have a driver? Should I just go back to Linux
which also has a driver, or should I just go back to my old computer
with OpenBSD as I could see that the p410 raid card was supported? 

I tried the p410 raid card in the Xeon for a second time and it
seemed to work at first, I could see it initializing the raid. But
just as I thought I was out of the woods, and it should have started
reading from the disk, the screen went a light grey and everything
appeared to hang. I tried a couple more times just to be sure it
wasn't some weird timing issue but to no avail.

I actually conceded defeat at this point and installed OpenBSD to the
HP microserver but the pci-e Sound Blaster sound card wouldn't
work... 

Now more determined to stick with the plan, I put the 3ware raid card
back in the Xeon and began to use it to make sure it was going to be
viable as my daily driver. Everything appeared to work OK and it was
fairly snappy, apart from some noticeable lag of the disk subsystem.

As I saw it I had 3 options:
    1) Buy a supported SAS raid card, knowing I would lose HDMI 
    2) A hybrid system - SSD for OS and PCI raid with HDD for storage
    3) SSD only - ditch the raid, small SSD for OS and second bigger
    one for storage 

In an attempt to speed the system up, future proof it and reduce its'
energy consumption; I have decided upon option 3. This will consist
of one 120Gb SSD main drive and a 500Gb SSD for storage. i

I can't realistically ever see myself filling 2Tb. I managed to back
up everything I have onto the 500Gb SSD with quite a bit of space to
spare and I know there is a lot that could be deleted...


[1](gopher://gopher.icu/0/phlog/Computing/Stop-IT-waste.md)
[2](gopher://gopher.icu/I/images/xeon.png)