A while back I built a server with the system root moved to an external hard drive.
Blog Post - Running From an External Hard Drive
That system has now failed. I shouldn't be surprised since it was built with very used parts. I decided to rebuild it and put it into a nice enclosure this time, rather than just having parts all stuck together. I also decided to add LED bar graphs to show CPU and I/O utilization.
The first step was to build the LED interface. This was accomplished using two 10-segment LED bar graphs and a GPIO extender. The GPIO extender is needed in order to drive all 20 LEDs. I used a MCP23017 I2C GPIO extender which provides 16 GPIO bits. Another 4 GPIO bits were taken directly from the Raspberry Pi.
The LED board is shown here before the GPIO lines were attached.
The next step was to attached the LED board and a Raspberry Pi to the top of the case. The LED board is attached using epoxy with the LEDs showing through holes cut in the plastic case. The Pi is attached using
plastic offsets and machine screws.
Notice that the analog video output connector has been removed from the Pi. The case was just a little to tight a fit for it to work with that in the way.
A power connector will supply 5V to the LED board and to the USB hub and will use the power supply that was included with the hub. The Pi is powered through the GPIO pins.
A hard drive salvaged from an old laptop is placed in the bottom of the case. It is connected using an IDE to
USB adapter. The USB cable is fed out of the case and then back in to the USB hub. This part is a little odd, but is the only way I could get it to fit in a case this small.
Here, the power connector has been mounted, the USB hub has been added, and all other connections have been made. It's time to squeeze it all inside this plastic enclosure.
Here are a couple of pictures of the completed server.
Below is a video which shows how the utilization LEDs look in action.
Blog Post - Running From an External Hard Drive
That system has now failed. I shouldn't be surprised since it was built with very used parts. I decided to rebuild it and put it into a nice enclosure this time, rather than just having parts all stuck together. I also decided to add LED bar graphs to show CPU and I/O utilization.
The first step was to build the LED interface. This was accomplished using two 10-segment LED bar graphs and a GPIO extender. The GPIO extender is needed in order to drive all 20 LEDs. I used a MCP23017 I2C GPIO extender which provides 16 GPIO bits. Another 4 GPIO bits were taken directly from the Raspberry Pi.
The LED board is shown here before the GPIO lines were attached.
The next step was to attached the LED board and a Raspberry Pi to the top of the case. The LED board is attached using epoxy with the LEDs showing through holes cut in the plastic case. The Pi is attached using
plastic offsets and machine screws.
Notice that the analog video output connector has been removed from the Pi. The case was just a little to tight a fit for it to work with that in the way.
A power connector will supply 5V to the LED board and to the USB hub and will use the power supply that was included with the hub. The Pi is powered through the GPIO pins.
A hard drive salvaged from an old laptop is placed in the bottom of the case. It is connected using an IDE to
USB adapter. The USB cable is fed out of the case and then back in to the USB hub. This part is a little odd, but is the only way I could get it to fit in a case this small.
Here, the power connector has been mounted, the USB hub has been added, and all other connections have been made. It's time to squeeze it all inside this plastic enclosure.
Here are a couple of pictures of the completed server.
Below is a video which shows how the utilization LEDs look in action.