Home Blog Page 8

Take Power With You On Days Out – EcoFlow River 2 Power Station Review

Today we’re going to be taking a look at the EcoFlow River 2 portable power station. This is an all-in-one battery, charger, inverter and DC power supply in a compact and portable package. It’ll take care of your power needs on days out, at work sites or on camping trips. EcoFlow have sent me the River 2 along with their 110W solar panel to try out, so let’s get it unboxed and then we’ll take a closer look at what it has to offer.

Here’s my video review of the EcoFlow River 2, read on for the written review:

Where To Buy The River 2

The River 2 can be bought directly from EcoFlow’s web store or alternately from most major camping and outdoors suppliers.

  • EcoFlow River 2 – Buy Here
  • EcoFlow River 2 Pro – Coming May 2023
  • EcoFlow River 2 Max – Buy Here
  • EcoFlow 110W Solar Panel – Buy Here

Equipment Used

Power Meter – Buy Here

Unboxing & First Look

The River 2 arrives in a branded box that is a little larger, mostly in the vertical direction, than a shoe box. Like with other EcoFlow products, the River 2 is well-protected with sealed edges and moulded foam inserts.

EcoFlow River 2 In Box

In the box, we’ve got the River 2 Power Station, a mains power cable, a car charger cable and a quick start guide. So there really isn’t much in the box, but that’s a good thing because EcoFlow have integrated everything you need into the River 2, so you don’t need to carry around additional charger bricks, adaptors or regulators.

EcoFlow River 2 Included In The Box

Inside the River 2 is a 256Wh Lithium Iron Phosphate battery which is good for over 3000 full power cycles. So if you used the full battery capacity every day, it would still last almost 10 years and still have 80% of its original capacity.

EcoFlow River 2 Front

Lithium Ion Phosphate batteries are also less prone to combustion and thermal runaway than Lithium-Ion batteries and the integrated Battery Management System continuously monitors the voltage, current and temperature to ensure that it stays within safe operating limits.

EcoFlow River 2 Front

River 2 Charging Options

Using the built-in mains charger, they claim that you can charge the EcoFlow River 2 at up to 360W which will take it from 0 to 100% in just one hour – which we’re going to test later. So even if you’ve forgotten to charge your Power Station the day before your trip, you should still have enough time to charge it while you prepare your things before heading out.

The River 2 also gives you three other ways to charge it. You can use the included car charger cable to charge it at up to 100W while you drive to your destination, or charge it using up to 110W of solar power, or even charge it using your laptop charger at up to 60W through the dual-purpose USB type C port on the front.

One thing to keep in mind with the River 2 is that, unlike some other power stations, you can’t use multiple charging methods at the same time. So for example you can’t have it plugged into mains and charging from USB C to get it to charge faster.

EcoFlow River 2 No Dual Charging

The solar input allows you to input up to 110W of solar power, meaning that you can fully charge an empty battery in around 3 hours or just keep it topped up while you’re using it on a sunny day.

To keep the battery and inverter cool, there is a fan between the power inputs on the back.

EcoFlow River 2 Fan On Back

This isn’t always on, it’s PWM controlled and only comes on under higher loads, particularly when charging or supplying high AC or DC outputs. There is a fan symbol that is shown on the display on the front when the fan is running. It’s also cleverly positioned under the handle so it can’t be easily blocked if the device is pushed up against a flat surface.

AC & DC Power Outlets

To use the stored power, there are a range of ports and outlets on the front of the River 2. On the left side of the display is a DC output which can provide 12V up to 100W.

DC Outlet On Front

On the right side of the display is an AC outlet which is rated for 300W but can deliver up to 600W using EcoFlow’s X-Boost mode, which we’ll take a look at in a little.

AC Outlet On Front

Beneath the display are three USB ports, two type A ports which can each do 2.4A and one type C port which supports power delivery up to 20V and 60W. This is the same port that can be used to charge the River 2.

USB Ports On Front

The display on the front of the River 2 is similar to that on other EcoFlow models and gives you a lot of information on the status of the device. From left to right, it shows you the time to fully charged or to empty depending on whether the battery is being charged or drained, it shows you the battery capacity within a power draw animation ring and then it shows you the total power input and power output in watts alongside it.

EcoFlow River 2 Portable Power Station

The display turns itself off after a few seconds to save power, but you can wake it up again by short pressing the power button. You can tell whether the River 2 is on or off by the small LED below the display which slowly fades on and off when it the unit is on.

You can also use the River 2 as a UPS which will pass power through from mains to your connected device and in the event of a power outage, will switch over in under 30ms, so you won’t even notice that you’ve lost mains power.

Charging Up To 100% In 1hr

Now that we’ve had a look at the features of the River 2, let’s try do some tests on it. The first thing that we’re going to test is the claim that you can charge the EcoFlow River 2 from empty to 100% in one hour.

Out of the box, the River 2 had a 29% charge and this went up to 37% while checking the charging options. So, let’s drain that completely first and we can then test the claim that it can be fully charged in under an hour.

I hooked it up to one of my 3D printers, which uses about 50W once heated and left it to drain completely. The River 2 stops the AC outlet when the battery is depleted to prevent over-discharge, but the battery management system and display remain active a while longer.

Draining Battery With 3D Printer

Once it was empty and indicating 0%, I hooked up the AC charger and timed how long it took to charge to 100% capacity.

Charging From 0 to 100 Start

After a few seconds, the display indicated that it would be fully charged in 57 mins, and in a little under half an hour the battery was 43% charged and the display indicated 33 mins remaining. So it was still on track to complete the charge in under an hour.

After 57 minutes, the battery was full and the power input ramped down to 0W. So the management system is quite good at predicting the time it needs to fully charge the battery with a consistent power supply and you can definitely fully charge the River 2 in under an hour as they claim.

Fully Charged In Under An Hour

Testing The River 2’s DC Outlet

Next, I tried the DC outlet on a small 36W air pump like you would use for camping.

Camping Air Pump 36W

This ran well as you’d expect and the display indicated that it could power the pump for around 6 hours.

Powering Camping Air Pump

Testing The River 2’s AC Outlet & X-Boost

The AC outlet is where the River 2 gets interesting. It is equipped with a 300W AC inverter, but using EcoFlow’s X-Boost technology, they claim that you can run most appliances up to 600W without overloading it. This is not to say that it can output 600W, it means that it can power 600W devices so that they are able to function albeit often at reduced performance. This works best on appliances that do not have any smart power supplies – ones with heating elements and similar resistive loads work best.

For my test, I’m going to try power this electric brush with a heating element that has three stages, with the highest setting drawing 800W.

Powering 800W Hair Brush

The River 2 was able to power the brush through all three settings and you can see the displayed output power doesn’t go over 350W.

If you watch my review video, you’ll hear that the motor in the brush sounds like it’s slowing down at higher heat settings. X-Boost is able to power the brush on the highest setting by still only outputting 300W. It does this by intelligently reducing the output voltage so that the inverter is not overloaded but is still powering the appliance.

As mentioned previously, this leads to a slight reduction in the performance of the appliance, but it does at least give you a way to use it.

There are also some limitations with X-Boost. You can’t use it while the River 2 is charging and because it is changing the supply voltage, there may be a further reduction in performance if you are using multiple devices on it. So you really only want to use a single AC appliance if you’re using X-Boost. This is not so much an issue on the River 2 since it only has a single AC outlet but is something to be aware of on their larger power stations like the Delta series.

You can also turn X-Boost off in the settings menu in the app if this is something you don’t want to use.

Testing The USB C Charging Port

I tried the USB C port to charge my MacBook and it indicated that it was charging at 60W which is the maximum that they claim it can do.

USB C Charging Macbook

Likewise, plugging the MacBooks charger into the River 2 allowed it to charge at 60W.

USB C Charging At 55W

Testing EcoFlow’s 110W Solar Panel On The River 2

EcoFlow’s 110W solar panel is made up of mono-crystalline silicon cells on a waterproof foldable panel which can be set up using the carrier bag as a stand.

I really like this design, it’s compact when folded up and the carrier bag feels like it is really good quality with rubberised water-resistant zips.

Solar Panel Carrier Bag

The surface of the solar panel is a bit weird, I’ve never seen a solar panel look like this, it’s almost like a rubberised surface as well, but I guess that’s part of what makes it waterproof and durable.

Rubberised Panel Surface EcoFlow 110W

To hook it up to the River 2, you just connect the panel to the included XT60 charging cable and then plug this into the port on the back.

Solar To XT60 Connection

With the panel in full afternoon sun, I first got a little over 90W out of it.

As with any solar panel, it needs to be facing the sun directly to get the most power out. By rotating it just a few degrees to better face the sun, I got an extra 10W.

The panels are also chainable, so you can hook up multiple 110W solar panels to their larger power stations if you’d like to. The River 2 only supports up to 110W of solar input so we’re only able to use a single panel.

Using The River 2 With EcoFlow’s App

Lastly, you can also hook the River 2 up to your smartphone through Bluetooth or WiFi and then use their app to monitor and control it as well as change its settings.

From the main screen, you can see the time remaining to fully charged or empty depending on whether the battery is being used or charged, you can also see the current rates of charge and discharge in watts and of each individual port below that.

You can turn the AC or DC inputs or outputs on or off remotely through the app as well. So you’ve got a lot more control than what you can do on the River 2 itself.

EcoFlow App Turn Outputs On or Off

You can also access the device settings which allows you to do things like turn X-Boost on or off, set timeouts, manage charge and discharge levels and even reduce the maximum power that the River 2 can draw from mains or a car charger when charging.

EcoFlow App Additional Settings

So if we set the charging limit down to a maximum of 100W then it limits the charger draw to 100W.

This is useful if you’re at a campsite or charging it from another low-capacity power source. Without this, it’ll just trip or overload the device that you’re trying to charge it from.

Final Thoughts On The EcoFlow River 2

In my opinion, one of the best features of the River 2 is just how portable it is for the features it includes.

River 2 Portability

It weighs only 3.5kg, or less than a gallon of milk for those who aren’t on the metric system. The flat top and sides mean that it is stackable, unlike the previous generation River, so it’ll fit right in amongst your bags and equipment. It’s even got rubber feet on the bottom so that it doesn’t slide around.

Overall I’m quite impressed with the River 2. The build quality is great, it’s got a good set of features for its size and price. The lithium iron phosphate battery design means that it should last you a number of years.

The only drawbacks are probably going to be the relatively low battery capacity and inverter power output because of its compact size. If those are too low for you then the River 2 Max doubles up on them as an alternative and the River 2 Pro which is launching early May has three times the battery capacity of the River 2. So EcoFlow have you covered with a range of options and any model in the River series is going to be a great companion when you need power on days out or for short camping trips.

Let me know what you think of the EcoFlow River 2 in the comments section below and if there is anything else you’d like to see me test on it.

Level Up Your Homelab With The Raspberry Pi CM4 Compute Blade

Today we’re going to be taking a look at the Compute Blade, a rack-mountable PoE (Power over Ethernet) carrier board for a Raspberry Pi Compute Module 4. They are designed to allow you to stack up to 20 blades, each carrying a Pi CM4 module, into 1U of 19″ rack space. So you’re able to create a low-profile cluster with up to 80 ARM cores, 160GB of RAM and 160TB of NVMe storage.

Raspberry Pi Compute Blade

The Compute Blade has been designed by Ivan from Uptime Labs, who began working on the concept in 2020 and has now launched the Blade through a Kickstarter campaign which is due to end a little before mid-April.

Since the original version, Ivan has been through 8 iterations, taking in feedback from the community and adapting the design to suit.

While a 20-node cluster is probably overkill for most people in a home environment, a 4-node cluster in his 3D printable enclosure with two 40mm fans on the back is perfect for a home lab.

Compute Blade 3D Printable Enclosure

Here’s my video review of the Compute Blade, read on for the written review:

Purchase Links

The Compute Blade is not yet available to buy through traditional channels but is available through the Uptime Labs Kickstarter campaign. I’ll update the links below when the product is available to purchase through a web store after funding.

Equipment Used

First Look At The Compute Blade

Taking a look at the board from end to end, at the front we’ve got one of two addressable RGB LEDs which are user-programmable. Alongside that is a Gigabit Ethernet port which supports PoE or power over Ethernet at up to 30W.

We’ve got a programmable button, a second RGB LED and three other status LEDs for SSD, power and activity.

Alongside them is a UART port and a selector with hardware switchable WiFi, Bluetooth and EEPROM write protection.

Dip Switch Selector For WiFi, Bluetooth and EEPROM Write Protection

We’ve then got a full-size HDMI port, with the CM4 module area and sockets alongside it. Underneath the CM4 module is a TPM 2.0 security chip that allows you to secure-boot your Pi. This is strategically covered by the CM4 module for added security.

Infineon TPM 2.0 Security Chip

Next to the CM4 module area is the PoE power converter which steps the PoE voltage down to 5.1V.

PoE Voltage Converter

Above that is a microSD card slot and a USB A port, and next to those is an M.2 M-key slot which supports NVMe SSDs up to 22110.

M.2 M-Key Port For NVME Drive

Below that is an expansion port for some optional add-ons like a real-time clock module or a Zymbit hardware security module that Ivan has been working on.

Expansion Module Port

Then we’ve got a USB C port and boot button which can be used to flash the boot loader on the CM4 module and finally there is a fan port on the back. The fan port is designed to be used with his fan modules that the blade will slide to plug into.

On the back of the blade, we’ve just got some manufacturing details on the PCB silkscreen.

Raspberry Pi Computer Blade Back

Preparing The Compute Blade For First Boot

To get the Blade ready to boot up, we need to install a Raspberry Pi CM4 module and a boot drive. I’m using a CM4 Lite module, meaning that it doesn’t have onboard eMMC storage and this one also doesn’t have onboard WiFi or Bluetooth. This is perfect for the blade since we’re going to be booting from the NVMe drive in any case and we’re going to be using the Ethernet port on the front.

Raspberry Pi Compute Module 4

For the boot drive, I’m using a 1TB NVMe drive which I’ve preloaded with Raspberry Pi OS Lite. I pre-configured the operating system to enable SSH and I added myself as a user. You can also boot from a microSD card plugged into the slot on the blade if you don’t want to use an NVMe drive, or if you want to use the NVMe drive as a storage drive only, but I prefer the reliability of using it as the boot drive.

Crucial 1TB NVME SSD

We can then install this awesome custom red heat sink over the CM4 module which has cooling pads for the CPU and RAM chips.

Putting The Compute Blade Into A Ventilated Enclosure

Before I power up the Blade, I’m going to make up an enclosure to hold it along with a 40mm fan at the back. This will be similar to Ivan’s 3D printable design for 4 blades but this one will be for one or two Blades and it’ll be made out of clear laser-cut acrylic.

Compute Blade 3D Printable Enclosure

One of the primary drivers behind the Blades design is that Ivan wanted to make them easy to swap out or replace if there is an issue with one. You can simply turn off power to the device and then slide it out of the chassis without affecting the surrounding blades or having to remove the whole rack – so we’re going to retain that in this enclosure design.

Laser Cutting A Clear Acrylic Enclosure

I laser cut the enclosure components from 2mm clear acrylic and glued them together along the edges.

I’m using the same Noctua fan that the Uptime Labs fan module uses but I’m just going to mount this directly onto the back of the enclosure.

Noctua PWM Fan For Back Of Blade

I’ll plug it into 5V and GND, so it’ll be running at full speed all the time. The Blade does have two of the Pi’s GPIO pins available on the fan connector, so you can implement PWM control if you’d like to, that way the Blade or cluster of Blades will run a lot quieter.

Plugging Fan Into Compute Blade

With that done, let’s boot up the Blade and try running some tests on it.

Blade In Enclosure With Noctua Fan

Compute Blade First Boot

If you’re using an older CM4 module like I am, then it probably has a bootloader version on it that doesn’t support booting from the NVMe drive. You’ll need to update the boot loader otherwise your Pi will just get stuck saying that no SD Card or Network boot location was found.

CM4 modules shipped out after July 2021 should have the new boot loader installed, but you can see this one’s boot loader version is from February 2021.

Fortunately, this is quite easy to do right on the Compute Blade, you just need to boot it up with the button next to the USB port pressed, then connect it to another computer using a USB C cable (I used another Raspberry Pi) and then follow a few command prompts to reflash the boot loader.

After that, the Compute Blade should boot up from the NVMe drive and will then be accessible on your network.

Compute Blade Booting Up

I’m using a second Pi to SSH into the Compute Blade to do some testing.

If we use the command lsblk, we can see our connected NVME drive.

NVME Drive Recognised By Pi CM4 Module

Running A Drive Speed Test

With the Compute Blade now booted, lets install hdparm to run a drive speed test.

sudo apt-get install hdparm

We can run the test by entering this command with the drive name that showed up when we ran lsblk.

sudo hdparm -tT /dev/nvme0n1
Testing Raspberry Pi NVME Drive Speed

I’m going to run this test three times as it might change a little each time we run the test.

So we get a cached sequential read speed of a little over 1000 MB/s and a sequential read speed a little over 375 MB/sec. This is much lower than what the drive is capable of but it isn’t a limitation of the Blade, but actually of the Pi CM4 module which only has a PCIe Gen 2 x1 bus available.

Thermal Testing The Compute Blade

Next, let’s try running some thermal tests.

I’ll do two tests on the Pi, both using a utility called CPU Burn, the first running in the enclosure with the fan running, and then with the Blade out of the enclosure and without a fan, so just passively cooled by the large heat sink.

To install CPU Burn, enter the following commands:

wget https://raw.githubusercontent.com/ssvb/cpuburn-arm/master/cpuburn-a53.S
gcc -o cpuburn-a53 cpuburn-a53.S

Let’s try the test with the fan first. We can run the test by entering:

while true; do vcgencmd measure_clock arm; vcgencmd measure_temp; sleep 10; done& ./cpuburn-a53

After running the test for a little over 20 minutes, the CPU temperature stabilised at around 37 degrees, which is really low for all four cores being maxed out continuously.

Thermal Testing Compute Blade Running CPU Burn

Looking at the heat sink through a thermal camera, we can see that it is heating up but it’s also not much over 32 degrees.

Thermal Camera Look At Heatsink In Enclosure

Now let’s take the blade out of the enclosure and run the test again.

After 20 minutes outside of the case, with only passive cooling, the CPU temperature has stabilised at around 56 degrees, which is still quite good considering this is under full load continuously.

Thermal Testing Compute Blade Running CPU Burn

Looking at the heatsink through a thermal camera, we can see that it has heated up quite a lot more than when it was in the enclosure, it is now around 52 degrees.

Thermal Camera Look At Heatsink On Pi Compute Blade

So you’ll be able to get away without a fan if your Blade isn’t running in a confined space but you’ll most likely need a fan if you rack mount it as intended.

The Compute Blade’s Power Consumption

Power consumption when idle is around 4W, so it doesn’t use much more than the CM4 module uses alone.

Energy Consumption Of Compute Blade No Load

With all four cores maxed out, consumption goes up to around 7W, which is still really power efficient. Even with a 20-node cluster with all 80 cores maxed out, you’d be using less than 150W.

Energy Consumption Of Compute Blade Full Load

Final Thoughts On The Compute Blade

There are also some other features of the Blade that I haven’t yet tried out. You can turn off the status LEDs if you aren’t a fan of flashing lights by entering some commands in the terminal. The two addressable LEDs are connected to GPIO18 on the Pi and are programmable, so you can use your own scripts to get them to indicate specific metrics or errors. Similarly, the button on the front of the Blade is connected to GPIO20, so you can program that to do whatever you’d like as well, like initiate a safe shutdown.

Activity LEDs On Front Of Compute Blade

So the Compute Blade is a feature-rich board that is going to be great for a home lab or to pack a significant amount of computing power into a single unit of rack space. There are a lot of benefits to running individual smaller computing nodes rather than a number of virtual machines on a single more powerful computer.

Let me know what you think of the Compute Blade in the comments section below and let me know if there is anything you’d like to see me try on it. Also, check out the Kickstarter page if you’re interested in getting one, Ivan has already blown past his first funding milestone.

Make A Tiny Raspberry Pi Based Cyberdeck

I’ve had a Hyperpixel 4 display in my project cupboard for about two years now. I bought it because it looked like the perfect display to pair with a Raspberry Pi to build a tiny Cyberdeck because it plugs into and is driven entirely through the Pi’s GPIO pins.

Hyperpixel 4 Display Plugs Directly Into Pi 4 GPIO Pins

So when Atomstack reached out and asked me if I would like to try out their new Atomstack X30 Pro laser engraving and cutting machine, I thought that this would be a great project to build with it.

I’m going to make up the Cyberdeck in a clamshell design with the display mounted directly onto the Raspberry Pi in the top half and then a small keyboard in the bottom half. I found a re-purposed keyboard from a Blackberry online which has a small custom carrier board on it to make the keyboard and trackpad act as a USB-connected keyboard and mouse. So, I’m going to build this into the bottom half.

Blackberry Keyboard With Trackpad

To make up the case components, I’m going to use the new Atomstack X30 Pro to laser-cut and engrave some 3mm plywood sheets. You can find out more about the X30 Pro in my unboxing and review post.

Here’s my video of the build, read on for the write up;

What You Need To Build Your Own Tiny Cyberdeck

Tool & Equipment Used

Some of the above parts are affiliate links. By purchasing products through the above links, you’ll be supporting my projects, at no additional cost to you.

Designing The Tiny Cyberdeck Components

I designed the two halves of the Cyberdeck in Inkscape. It’s essentially two boxes, one that will hold the Pi and display and form the top half of the clamshell and then a second to hold the keyboard in the bottom.

Plywood Cyberdeck Design In Inkscape

Holding the two halves together are these hinges, which are shaped this way to limit the opening range of travel to a 45-degree angle. It’ll also hopefully be able to sit on a desk when it’s open without toppling over. I’ll have to see about this as there is a lot of weight in the top half with the Pi and display both there.

Plywood Hinge Design To Limit Travel

I also put my initials onto the top plate as a logo to engrave.

Cutting The Components On The X30 Pro

Let’s load a piece of plywood and engrave and cut the top half components. I’ve set Lightburn to engrave the logo first so that the part doesn’t shift when it is cut. I’ll leave the air assist off for the engraving and then turn it on when it starts cutting.

If you watch my video, you’ll see that the laser runs back and forth in lines, called scan lines, to mark the wood and create the logo.

Laser Engraving The Logo

Once that’s done we can turn on air assist to start the cutting.

Laser Cut Case Components

Now we’ve got the first sheet of components cut. Next, let’s cut the components for the bottom half.

Assembling The Cyberdeck

To assemble the cyberdeck, let’s first glue the bottom sections of each half together. These fit together using the interlocking tabs that we’ve cut into them, we just need to make sure that we put them in the right way around.

Clean Edge Cuts Using Air Assist

I’m using PVA wood glue to glue the components together. You can use clamps to hold them together while the glue dries for a stronger bond.

The keyboard housing goes together in a similar way, again making sure that the sides with the hinge tabs are installed the correct way around. The cutouts for the back strips should face upwards towards the surface of the keyboard.

Assembling The Keyboard Half Of The Case

With those drying, we can mount the display onto the Raspberry Pi. It comes with a set of standoffs and a header extension, so let’s plug the extension into the GPIO pins.

Pressing GPIO Adaptor Into Place

We can then screw the standoffs into the back of the display.

Screwing In The Display Standoffs

Then press the display into place on the Pi.

Plugging Raspberry Pi Into Displays GPIO Pins

Now let’s mount the display and Pi stack into the top half of the Cyberdeck. The screws that hold the Pi onto the display’s standoffs are too short to go through the plywood as well, so I’m going to replace them with some M2.5x12mm screws.

I’ve prepared a microSD card with Raspberry Pi OS on it and I’ve pre-configured the software for the Hyperpixel 4 display, so it should work automatically shortly after booting up. The microSD card will still be accessible through the slot on the side of the Cyberdeck, so we don’t have to open it up again if we need to re-flash the card.

We can then press the bezel into place around the display. I could add a drop of glue to the edges to make sure that it doesn’t fall out again, but it actually fits into place quite well without glue.

Next, let’s do the same with the keyboard. We’ll position it within the cutout and then glue the bezel into place to hold the keyboard.

Installing Keyboard Into Bottom Half Of Case

Then we need to add the hinges to join the two halves together. These just use some M3x12mm screws, nuts and washers to mount them onto the two halves. I’m using two nuts on each so that the nuts can be tightened against each other and not the hinge so that the hinge is able to move freely.

Double Nut On Hinge To Allow Movement

We also need to make sure that they are positioned correctly so that the end stops stop the display from opening too far.

Hinge Opening Limits

Lastly, I’m going to glue some felt strips onto the outer edges so that the display doesn’t rub against the keyboard when it is closed as this might scratch it.

Adding Felt Strips To Cyberdeck

That’s the Cyberdeck complete. I really like the clamshell design and how compact it is when it’s folded up.

Completed Cyberdeck

Using The Cyberdeck

To use the Cyberdeck, we need to plug in a short USB C cable between the keyboard and the Pi as well as a power cable.

A straight USB C cable is fine if you’re using it as a handheld device, but if you want to use it on a desk then you’ll need to use a cable with a 90-degree connector otherwise it’ll rest on the connector and won’t lie flat on the desk.

Once it boots we can use the touchscreen or trackpad to move the cursor and open applications and we can type in commands using the keyboard.

Testing The Cyberdeck Keyboard

There is an under-voltage warning coming up periodically with this cable. So it probably isn’t able to supply enough power to drive the display and keyboard attached to the Pi as well.

This doesn’t come up if I use my USB-C adaptor directly, but this doesn’t have a 90-degree connector on it.

Youtube Playback On Cyberdeck

The Cyberdeck uses around 4-6W when running, so it can be powered through a power bank for a couple of hours if you’d like it to be completely portable.

Power Consumption

I think it’s come out really well, let me know what you think of the Cyberdeck in the comments section below and let me know if there is anything that you think I could improve upon or change.

Big Buck Bunny Playback On Cyberdeck

Atomstack X30 Pro Unboxing & Testing

Atomstack has recently launched the X30 Pro. This is their new flagship gantry-style laser engraving and cutting machine that now has a 6-core 33W laser module, which is the most powerful diode laser available on these style machines. It also comes with a fantastic air assist system to give you really clean cuts.

Assembled Atomstack X30 Pro

They sent me the X30 Pro to try out and share with you, so I’m going to be using it to make a Raspberry Pi based cyberdeck from 3mm plywood sheets. But first, let’s get it unboxed and run some tests on it to see how well it performs.

Where To Buy One?

Atomstack’s machines are available through their web store and Amazon store:

Some of the above parts are affiliate links. By purchasing products through the above links, you’ll be supporting my projects, at no additional cost to you.

Unboxing The Atomstack X30 Pro

The X30 Pro arrives partially assembled, with all of the parts really well protected with individual foam trays and inserts.

Atomstack X30 Pro Packaged

They include everything you need to get set up and running, including tools, safety glasses and manuals. They also include a couple of sample plywood and acrylic pieces to test the laser on, along with software and test cutting files on a USB flash drive.

Atomstack X30 Pro Unboxed

Assembly is about as easy as it can be without the machine being entirely pre-assembled. The main part of the assembly process is to assemble the aluminium extrusions that make up the y-axis frame. So you should be able to get the laser assembled and running in less than an hour.

The screws are even set out in packs that match each step in the assembly portion of the manual.

Having assembled a number of these style machines in the past, it took me around 15 minutes to get it assembled and ready to run some test cuts.

Assembled Atomstack X30 Pro

Main Selling Points Of The X30 Pro

The new 33W diode laser module combines the light produced from 6 6W lasers into a single focal point, a step up of 50% over their previous flagship, the X20 Pro.

Atomstack X30 Pro Laser Module

The actual laser module itself is not all that much larger than that on the X20 Pro although you can see a bit of a size increase.

X20 Pro vs X30 Pro Size Comparison

The increase in power allows you to cut through much thicker materials, or to cut thinner materials even faster. They claim it will even cut 0.1mm stainless steel sheets, so it is a really powerful machine.

There are two other things that I think set this machine apart from its competitors, besides the more powerful laser, the first is the display that allows complete offline control of the machine.

Offline Controller on X30 Pro

So you can plug a microSD card into the controller and then control the positioning and cutting directly on the machine without a connected computer. I actually use this quite often on the X20 Pro, it has its limitations but it works pretty well for straightforward jobs.

The second is the air assist system.

Air Assist Compressor on X30 Pro

There are other machines available with air assist, but the air assist on the Atomstack machines is really good. So much so that I actually use my older X20 Pro to cut all of my plywood parts for my projects and for products in my Etsy store instead of my more powerful CO2 laser. My CO2 machine also has air assist, this one just does a better job at getting the cuts to look really clean.

Cutting & Engraving Tests on Plywood Sheets

The air assist compressor is adjustable and connects to the top of the laser module where it is then directed down to a stream around the lens and onto the cutting area. It actually performs a secondary function – the stream of air around the lens keeps it clean as well.

Atomstack X30 Pro Ready To Cut

For the cutting surface, they give you a stainless steel sheet to protect your desk or work surface from the laser, but you’ll want to use some prisms or a honeycomb bed to raise the workpiece slightly when you’re cutting. This is so that you’re not charring the back of the piece and you’ve got some space for the smoke to escape. I’m using an Atomstack honeycomb surface that I bought to use with the X20 Pro.

It’s really important to wear eye protection when working with these open gantry style lasers, this high-power laser can permanently damage your vision in a fraction of a second if something goes wrong. Atomstack provides a pair of safety glasses with the X30 Pro kit, but you should really get a pair of glasses from a reputable optics company that has done testing on the glasses and provides some form of certification.

I’m going to run some cutting and engraving tests on a piece of 3mm plywood as this is the material that I’m going to be using for the Cyberdeck. I’m using Lightburn on a connected laptop to run the tests. The laser is going to cut a range of 5mm blocks at different speeds and laser powers and we’ll then be able to see which settings produce the best quality cuts.

Material Cutting Test Lightburn

Cutting Test

To start I’m going to do a cutting test with a range of 10 to 100mm/s for the speed and 0 to 100% power.

From that test, we only managed to cut through a few of the higher power settings at low speed in the bottom right corner, so I’ve set the speed up a bit too high for this material.

You’ll also notice how much cleaner the engraving looks on the numbers along the bottom of the vertical axis without the air assist off. So that’s something to keep in mind – don’t use air assist with engraving, only use it when you’re cutting.

These sheets are not the same material as the 3mm basswood sheets that are commonly available online for laser cutting, they’re a much better quality construction-grade plywood. So it takes a lot more power to cut them. Let’s turn down the speed a bit and try a second test.

Second Material Cutting Test

So we’ve had much better success on the second test with most of the bottom right half of the test cutting through. So that gives me a good idea of what settings I can use to get through the plywood. To cut these sheets for projects, I’m probably going to go with something around the higher end of the laser’s power – let’s go with 90% power and 15mm/s speed.

Engraving Test

Next, let’s try running an engraving test to get an idea of what settings will work to engrave a logo onto the Cyberdeck. This is quite similar to the cutting test but the laser runs back and forth across the whole area of the square to mark it.

Material Engraving Test on 3mm Plywood

Clearly, the bottom row’s speeds are too low and just burnt through the wood entirely, but we have some good results in the middle of this range.

Cutting Project Components On The X30 Pro

After the materials tests, I wanted to try cutting some plywood components for my cyberdeck project. I set Lightburn to engrave the logo first so that the part doesn’t shift when it is cut. I’ll leave the air assist off for the engraving and then turn it on when it starts cutting.

If you watch my video, you’ll see that the laser runs back and forth in lines, called scan lines, to mark the wood and create the logo.

Laser Engraving The Logo

Once that’s done we can turn on air assist to start the cutting.

As with any of these open-style gantry machines, one of the biggest drawbacks is that they produce a lot of smoke when cutting. There isn’t really an easy way to capture or direct it away from the work area, so you’ll need to work in a well-ventilated space.

Smoke Being Produced During Cutting

Atomstack also sells an enclosure for the laser which makes it easier to connect up to an extraction fan, so that’s definitely something you’ll want to consider if you’re using it in a smaller space.

Taking a close look at the pieces, you can see how well the air assist works on the X30 Pro. There is virtually no charring or smoke marks on the surface of the cut.

Laser Cut Case Components

Cutting Other Materials On The Atomstack X30 Pro

I also tried cutting a few other materials using the Atomstack X30 Pro to test its capabilities.

As I mentioned earlier, the plywood that I’ve used is much stronger than basswood sheets that are usually marketed for these machines, the X30 Pro cuts through these sheets really easily and at high speed. It’ll get through the included sheet at about 60% power at 15mm/s.

It can also cut through black or dark opaque acrylic sheets. This required a higher power, cutting through at around 80% power at 3mm/s.

Laser Cut 3mm Black Acrylic

Finally, I wanted to try stainless steel sheets. I have these shims which have their thicknesses etched onto them, so I tried the 0.05mm one first. Atomstack’s settings suggestion was for 16mm/s and 60% power, which I thought sounded a bit too fast and at a bit too low power, but it managed to cut through the stainless steel perfectly.

It does warp the metal slightly around the edges because of the heat, but the results were better than I expected.

I also tried with a 0.1mm sheet, which is double the thickness of the first, and I wasn’t able to get it to cut all the way through this sheet even with different settings. It got partway through some areas but I couldn’t get a full clean cutout. This is high-grade stainless steel so that may play into it as well. Honestly, I was impressed that it could make it through the 0.05mm sheet.

0.1mm Sheet Not Cut All The Way Through

Final Thoughts On The X30 Pro

I was really impressed by the results of my cutting tests, the X30 Pro is a really powerful and capable machine. The increase in laser power means that I can cut plywood components around 30% faster than I could on my X20 Pro, which is a significant saving.

I can’t see myself using the machine to cut stainless steel very often, but it is impressive that it is able to.

The air assist on Atomstack machines is probably my favourite feature. As I mentioned earlier in the post, it even produces better cutting results than my CO2 laser which costs more than double the price.

It is a pricey machine, being over $1,000, but it’s the perfect workshop companion if you do a lot of sheet woodwork or you see yourself making personalised components. If you are going to be running it in a smaller workshop space or bedroom then you’ll definitely want to go with the ventilated enclosure so that you’re able to properly extract the smoke and fumes from the work surface.

Let me know what you think of it and if you have anything else you’d like to see me try out on it in the comments section below.

Build A Raspberry Pi NAS For $35 Using All New Parts

Today we’re going to be building a Raspberry Pi based NAS (network attached storage) device using all new parts for as little as possible. If you don’t know what a NAS is, it’s essentially a small computer that is hooked up to a storage drive and acts as a file server on your network, allowing you to access your files from any device.

NAS File Server Diagram

This is not the first one I’ve built. I’ve actually built a few of these in the past, but they’ve all turned out to be quite costly. So for this build, the primary focus is going to be on building a fully functional NAS as cheaply as possible. To do this, we’re obviously going to have to cut some corners and make some sacrifices. So, I expect it to be slow and it probably won’t have a huge storage capacity, but it will be perfect as a first NAS build for someone who doesn’t want to spend a lot of money or if you’re just wanting to build one to learn how they work and how to set them up.

Here’s my video of the build, read on for my written guide:

Choosing The NAS Components

To start we’re going to need a cheap computer, and they don’t come cheaper than the Raspberry Pi Zero – the original being just $5. The trouble with the original is that it is now quite underpowered and it doesn’t have any onboard networking abilities, so we’d need to add a USB WiFi or Ethernet adaptor which adds to the cost. So, I’m rather going to splash out on the $15 Pi Zero 2 W.

Raspberry Pi Zero 2 W

This is the second version of the Pi Zero, which has an upgraded 64-bit CPU that matches the launch version of the Pi 3. The W means that it’s got built-in WiFi, so we can use this as our network interface and we then don’t need any additional adaptors or dongles.

For storage, an SSD is the obviously reliable answer, but the cheapest one I could find from a reputable brand was for $35 – more than double the price of the Pi Zero 2 W.

Western Digital SSD

This was also a 2.5″ SATA drive which would then require a USB adaptor. Since the Pi Zero’s USB port is a micro-USB port, we’d also need another adaptor to convert it from USB A to micro-USB. So we’d be in for close to $50 in total for storage.

Instead, I found one of these 128G Sandisk Ultra Dual drives, which were made as flash drives for Android phones. This has already got a microUSB port to plug directly into the Pi without any additional adaptors.

Sandisk Dual Drive m3.0

The best part is that this was only $12, and you can even get a 16Gb one for $7 or a 32GB one for $8 if you’d like to go a little cheaper.

Sandisk Dual Drive Price Amazon

The last component I need to buy is the microSD card to load the operating system onto. I used a 32GB Sandisk Ultra card which was $6.

Sandisk Ultra MicroSD Card

So I was all in on the parts for $33, leaving a couple of dollars for a fan and heatsink. You don’t need a fan if you’re not using the Pi in an enclosure, but I want to design a 3D printable enclosure for it so that it looks the part when it’s done. So, I’m using a small 30mm 5V fan and an aluminium heatsink.

30mm 5V Fan

Component Purchase Links

Tools & Equipment Used

Designing The NAS Enclosure

To design the enclosure, I used Fusion360. I designed it to look somewhat like a 2-bay NAS that houses the Pi Zero with the ports kept internal so that the storage drive would also be within the NAS. I also made a slot along the side that fed to the back for the power cable to pass through.

Pi NAS Enclosure

Download the 3D Printing Files

I made the enclosure into a two-part design, with the bays sliding out as a carrier tray for the internal components. The Pi, storage and fan will all be mounted onto this tray so that there is no need to worry about disconnecting cables or jumpers when sliding it out.

Pi NAS Tray

Finishing Off The Enclosure

I 3D printed the two parts in black PLA on my Creality Ender 3 – it took about 19 hours to print both and used just less than a dollar’s worth of filament.

3D Printing The Housing

The two components can be printed largely without supports by printing the outer shell with the back wall on the print bed as shown in the photograph above and the inner shell in its standard orientation (oriented as shown on the desk below) with the bottom on the print bed

I removed the support for the fan cutout and brim, and the enclosure was then ready to mount the NAS components into.

Housing Components 3D Printed

I designed two versions of the enclosure, one which you can screw the Pi directly onto and this version which requires some M2.5 brass inserts. The brass inserts make it a bit more durable and it’s easier to install or remove the Pi multiple times without stripping the threads. I have designed the tray around inserts that are 4.5mm long and 3.8mm in diameter.

These brass inserts are melted into place using a soldering iron.

Installing The NAS Components

We can then mount the Pi onto the brass standoffs with some M2.5x6mm button head screws.

Now let’s mount the fan. I’m using the fan to pull air into the case and I’m mounting it using some M2.5x12mm button head screws and M2.5 nuts on the back.

I’m plugging the fan into the Pi’s 3.3V and GND pins so that it runs a bit quieter than at 5V.

Connecting Fan To GPIO Pins

Next let’s install the drive. The housing on the drive that protects the USB ports gets in the way of the adjacent power cable, so I’m going to remove it by snapping off the grey slider cover.

Sandisk Drive Enclosure Clashes With Ports

We can then plug the stripped-down drive into the Pi’s micro-USB port.

Next let’s add our power cable alongside it. There is a fair amount of room below the Pi for the USB cable to bend, but you might need to use a cable that has a flexible lead (like a braided lead) so that you aren’t putting strain on the port.

Power Cable Plugged Into Pi

Flashing The OS and First Boot

Lastly, we need to add our microSD card, which I’ve flashed with Raspberry Pi OS Lite using the Raspberry Pi imager.

Raspberry Pi Imager

There are a few things we need to do in the settings tab before flashing the image. We’re going to be using this as a headless Pi, meaning we want to access it from another computer on our network to set it up rather than have to plug it into a monitor, keyboard and mouse as well. So we need to give it a name to identify it on our network. I’m going to call it miniNAS.

Imager Hostname Settings

We need to enable SSH so that we can access it remotely. I’ll leave the username as pi but change the password. Then add your WiFi network name and password, and set your region.

Imager Username Settings

Make sure that you get these all correct or your Pi won’t connect to your network and you won’t be able to access it, so you’ll need to do this step again.

We can then put the microSD card into the Pi and that’s the hardware complete. So we can slide the tray into the housing and get it powered up.

Once your Pi is running, leave it for about 5 minutes to allow it time to run through the first boot and connect to your WiFi network.

Installing The NAS Software – OMV

We then need to find the IP address of our Pi. We can do this through our router’s DHCP table or by using a utility like Angry IP scanner. We’re looking for a Raspberry Pi or device called miniNAS that recently joined the network.

Router's DHCP Table

With the IP address, we can then SSH into the Pi to continue setting it up. I’m going to use the terminal on a second Raspberry Pi for this, you can also use a utility like Putty to do this from a Windows PC.

Enter the following command to ssh into the pi:

ssh pi@<Your IP>
SSH Into Pi Zero

We’ll need to enter the username and password that were set up when flashing the microSD card and we then have access to the Pi.

Next, let’s run a quick update by entering:

sudo apt update
sudo apt upgrade
Updating Pi Zero 2 W

Then enter this command to download and run the Open Media Vault install script – this will install and set up everything needed to run Open Media Vault on the Pi:

wget -O - https://raw.githubusercontent.com/OpenMediaVault-Plugin-Developers/installScript/master/install | sudo bash
Installing OMV With Script

When it finishes, it’ll recommend restarting the Pi. Do not do this or you’ll have wasted the last half hour of your life like I did because the OMV setup disables the WiFi connection by default so you’ll then either need to start again by re-flashing the OS image, or find a way to add an Ethernet adaptor to the Pi to be able to access it again.

Reboot After OMV Install

I reflashed the card and landed back at the above screen a while later. From here you can go into the OMV workbench through a browser by going to the Pi’s IP address. You’ll be prompted for a login, which is “admin” and “openmediavault” by default.

OMV Login Screen

You can then go to Network and Interfaces and then recreate your WiFi network connection. You’ll also need to click on the tick in the yellow box to apply the changes for them to take effect.

OMV WiFi Setup

I also did this through OMV first aid in the terminal although I’m fairly certain you don’t need to do both, but I didn’t want to take a chance and have to start again for a third time.

sudo omv-firstaid
OMV First Aid Setup

Setting Up OMV

Once restarted, we can move on to setting up OMV. I’m going to go over this quite briefly here but PiMyLifeUp has a good guide if you’d like to follow along. We essentially need to wipe and mount our storage drive, which is our 128GB Sandisk drive:

OMV Drive Wipe and Mount

Then create a shared folder on our drive called MiniNAS for our files to be saved in:

OMV Created Shared Folder

And finally, enable a sharing service for access through windows:

OMV Create Sharing Service

You can also create user accounts with different access rights to each folder that you create and set up a dashboard to monitor your miniNAS through this web interface.

Testing The Cheap NAS

Now that we’ve got OMV set up and running, let’s try it out and see how good, or rather how bad it is.

We first need to add our shared folder as a network location. This depends on the operating system you’re using but can be done from the top bar in your file browser on Windows 11:

Add A Network Location Windows 11

Then enter your shared folder’s network location address or use the browse button to find it:

Adding The Pi NAS Shared Folder

Once we have access to it, we can then try copying some files across to the NAS. Let’s start by trying to copy a 600 MB video file and see what speeds we get.

NAS Test Copying Speed

It seems to stabilise at an average of around 4.5MB/s. This is a bit less than I was expecting, but honestly isn’t terrible. It’s obviously not great for large files like this but if you want an easy network location to store documents and small files then this is quite usable.

NAS Test Miultiple Files Copied

I still need to do some experimenting with the speed to see where the bottleneck is as I expected this to be a bit closer to 10-15MB/s since the WiFi and USB speeds on the Pi Zero 2 W should manage significantly more than the 4.5MB/s I’m currently getting. But in any case, we have a perfectly functional NAS that cost $35 to build and we can easily add more storage, or more reliable storage in the future if we’d like to.

Another interesting aspect of this NAS is that it runs at just over 1W, so it’ll run for an entire year and only consume a few cents to a dollar’s worth of electricity.

NAS Power Consumption

Let me know what you think of my budget NAS in the comments section below and let me know what you think the first upgrade should be.

I 3D Printed A Raspberry Pi Case That AI Designed

I’ve recently watched a few videos where people have been experimenting with Dream Studio’s AI image generator. So, I thought I’d try giving it a few prompts to generate interesting desktop computer case designs that I could turn into a new case for my Raspberry Pi.

Like with any software package, there was a bit of a learning curve in getting meaningful results out of it. I quickly discovered that putting the words “Raspberry Pi” into the prompt typically resulted in some sort of green PCB showing up in the image – which didn’t resemble a Raspberry Pi at all and wasn’t all that useful for an enclosure.

DreamStudio - Raspberry Pi Prompt

I had better success using prompts along the lines of “desktop computer case” or “mini desktop computer” with words like “modern”, “futuristic” or “high tech”.

DreamStudio - Desktop Computer Case Design

Steampunk designs came up with some interesting results as well. I quite like this design that came up and might try to turn this into the case as a future project – this might be a project to get my resin printer out for.

DreamStudio - Steampunk Case Design

After an hour or so of generating images, I eventually got a few images that looked like they could be used for a case design, and this is the design that best caught my eye. So, I’m going to try to model this design and then adapt it to house my Raspberry Pi.

Dreamstudio AI Raspberry Pi Desktop Case Design

Here’s my video of the project, read on for the written guide:

What You Need For This Project

Tool & Equipment Used:

  • Creality Ender-3 S1 Pro – Buy Here
  • Gweike Cloud Laser – Buy Here
    • Use my discount code MK200 on checkout to get $200 off
  • Electric Screwdriver – Buy Here
  • TS100 Soldering Iron – Buy Here
  • Knipex Wire Strippers – Buy Here

Some of the above parts are affiliate links. By purchasing products through the above links, you’ll be supporting my projects, at no additional cost to you.

Modelling The AI Case Design

The AI design looked simple enough to 3D print but there are a couple of issues that I’ll have to work through. I’m not really sure what’s going on at the base of the case, it seems like part of the case is touching the desk at the front but then looks like it’s elevated at the back. So I have to work through these when modelling the case.

AI Design small desktop computer futuristic design

To draw up a 3D model of the design, I used Autodesk’s Fusion360.

I started off getting the general shape looking like the AI image. I then hollowed it out, and added the exterior features and a window at the front. I then dropped the Raspberry Pi in and made the port cutouts on the back and sides.

Fusion360 Modelling Of AI Generated Computer Case Design

To cool the Pi, I added a cutout to mount a 40mm fan onto the back of the case. This will push cool air into the case and it will then exhaust through the fine vents on the side and the gaps around the ports.

40mm Fan Cutout On Back Of Raspberry Pi AI Case

Download The CAD Files – Pi Case CAD Files

I’m not sure what the blue things inside the case are intended to be, but I’m going to cut those from some blue acrylic and stick them inside the case along with some small LEDs to light them up.

I’ve split the design up into a few different parts so that I can print them in black and white separately as I don’t have a dual extruder printer.

Making Up The AI Case Components

I printed the case components out individually in either black or white PLA. The bottom half of the case was a bit of a challenge to print with the small legs at the back. I tried a couple of orientations but eventually printed it upright with printed supports along the whole base.

3D Printed Raspberry Pi Case Components

The 3D printed parts need a few M2.5 threaded brass inserts to hold the Pi in place and to hold the two main case components together. We’ll just melt these into place in the prepared holes using a soldering iron.

I’ve ground two of the inserts down a bit for the lower profile arms on the front of the AI case that need to slot in underneath the Pi.

Ground Down Brass Inserts For Front Legs

With the brass inserts all in place, the case components are complete and we can start installing the Pi and fan components.

Installing The Raspberry Pi and Fan

For cooling, I’ve got a 40mm RGB fan which I’ve salvaged from my stash of fans on my only fans Pi case.

40mm RGB Pi Fan

I’m going to install a mesh cover over it as I think this will fit in well with the look of the vented side panel on the AI case.

Mesh Cover Over 40mm Fan

The fan is held in place with the M3 screws and nuts that came with it. I’ve installed the fan with the hub facing outwards so that it pulls air into the case.

Fan Secured With M3 Screws

Next let’s mount the Raspberry Pi. I’m using a 2GB Raspberry Pi 4 and I’m going to add a small heatsink onto the CPU to help with cooling. There is probably enough space within the case to fit in an Ice Tower cooler but I’d like to keep it as open as possible so that the blue acrylic pieces and fan are visible.

To hold the Pi in place, I’m using four M2.5 x 6mm button head screws which screw into the brass inserts that we’ve melted into the base.

This fan isn’t a PWM fan and I’d like to be able to turn it on or off depending on the CPU temperature, so I’m going to use one of these EZ Fan 2 modules designed by Jeremy Cook. This tiny module allows you to use a 2-wire fan like a 3-wire fan so that you can turn the fan on or off using one of the Pi’s GPIO pins. These are also great if you’ve got an older 5V Noctua fan that doesn’t have PWM control.

EZ Fan 2 Module

I’m plugging the fan into 5V, GND and GPIO14 with a short set of jumpers that I made up.

EZ Fan 2 Module Installed With 40mm Fan

Lastly, we need to glue the small front leg onto the underside of this case section. I’m just going to use some super glue to hold it in place.

3D Printed Front Leg Glued Into Place

That’s the bottom half of the case down, now let’s finish off the top half.

Completing The Top AI Case Half

To finish off the top half, we first need to stick these white accent pieces onto the side of the case. I’m going to use some superglue on these as well.

3D Printed Accents Glued Into Place With Superglue

We can also stick the front bezel onto the AI case while we’ve got the super glue out.

Now let’s make up the blue acrylic pieces. I laser cut these from 3mm fluorescent blue acrylic which I’ll stack together to form each of the three main pieces.

Laser Cut Blue Accent Pieces

I’ve made up a string of three 5mm blue LEDs and the three middle pieces have an extra cutout at the back for the LED to light them up.

To make each one up, we need to peel off the protective film, then clamp the stack of five pieces together, and finally add a few drops of acrylic adhesive to the cutout to seep in between the layers to glue them together.

Acrylic Layers Being Glued Together

Then we just need to do that two more times to make up three in total. I’ve also glued a white strip onto the base of each one to lighten them up a bit more when they’re stuck onto the black case surface.

Completed Blue Accent Pieces, White Strip Underneath

We can then glue the LEDs into place in each acrylic piece using some hot glue.

And then glue the pieces into place on the inside of the case.

To finish off the top of the AI case, we just need to add an acrylic panel to the front. I laser cut the front panel from a sheet of 2mm clear acrylic.

Laser Cutting Front Panel

I’m also going to stick this into place within the bezel using some super glue as we shouldn’t need to remove it.

Super Glue Front Panel Into Place

Now we just need to plug the blue LEDs into the Raspberry Pi – I’m connecting them to 5V and GND.

Connections To Pi's GPIO Pins

Then we can close the case up with three M2.5 x 6mm button head screws and peel the protective film off of the front panel.

I really like how the back fan has come out with the black mesh over it.

Completed AI Pi Case Back

First Boot Of The AI Case & Powering The LEDs

Now that the case is complete, we just need to add a microSD card through the slot in the front and we can then try boot it up and see what it looks like.

MicroSD Card With Raspberry Pi OS

The light-up blue inserts have come out really well and give the AI case a really unique look. The design is probably not all that practical but it definitely looks cool.

Booting AI Pi Case For The First Time

Using a simple script to set GPIO pin 14 high or low, we can also turn the fan on or off. I’ll probably adapt my PWM fan script that I use on my SSD case to simple on/off control for this, but at least the functionality is here and the Ez Fan 2 module is working correctly.

Overall I’m really happy with how this design turned out and I think I managed to get it looking closer to the AI image than I was expecting to be able to.

Let me know what you think of it in the comments section below, and also let me know if you think I should try making up one of the steampunk case designs that the AI generator came up with.

Rock 5 Model B, A Powerful New SBC From Radxa

Today we’re going to be taking a look at the Rock 5 Model B, a new SBC or single-board computer from Radxa which is based on the powerful Rockchip RK3588 SOC.

The Rock 5B is available in three RAM configurations, 4GB, 8GB and 16GB. I’ve ordered the 8GB to try out and I’ve also got their passive heat sink to cool it with.

Radxa Rock 5 Model B In Box

Here’s my video review of the board which shows some of the video playback capabilities, read on for the written review:

Where To Buy The Radxa Rock 5 Model B

The board is available through a number of online retailers, I got this one from ALLNET the 4GB board is $129, the 8GB $149 and the 16GB board is $189.

Unboxing & First Look At The Rock 5 Model B

The Rock 5 Model B comes in a shrink-wrapped plastic case with a branded sleeve.

Radxa Rock 5 Model B Unboxing

Inside the case is the Rock 5 Model B in an antistatic bag which is placed on a card spacer to hold it in place and protect the pins and ports on the bottom. There are no cables, adaptors or accessories included with the board.

Radxa Rock 5 Model B First Look

The RK3588 SOC has a 64-bit, 8-core processor which is made up of a quad-core A76 processor running at 2.4Ghz and a quad-core A55 processor running at a lower 1.8Ghz. The integrated Mali G610MP4 GPU can do up to 8K at 60 frames per second.

RK3588 Chip on Rock 5 Model B

Taking a look at the primary ports along the side of the board, we’ve got a 3.5mm audio jack, a single USB C power input, that also supports power delivery. I’m not quite sure what its power delivery capabilities are as the product page had 9V and 12V listed while their wiki says 12V, 15V and 20V.

Primary Ports on Rock 5 Model B

Next to that are 2 full-size HDMI ports, 2 USB 2.0 ports, 2 USB 3.0 ports and then a 2.5G Ethernet port, which is really great to see on an SBC. They also mention that it has POE support, what I presume this means is that they’ve brought out these pins which look to be in the same position relative to the GPIO pins as on a Raspberry Pi, so you can probably use a POE hat made for a Pi to power this – but I don’t have any POE hats to try out.

POE Pins On Rock 5 Model B

We’ve then got a white fan connector at the top to power the fan that comes with the active heat sink. Next to that is a 40-Pin GPIO header which follows the same general layout as a Raspberry Pi and is coloured coded which makes it a bit easier to identify the power pins.

Then there is a micro-HDMI input, which is a unique inclusion but essentially should allow you to input an HDMI video signal up to 4K 60 frames per second to display or record.

Next to that is a status LED and two buttons, one for power and one for recovery.

Rock 5 B Coloured GPIO Pins

Alongside the power buttons, we’ve got a white RTC battery connector and an M.2 E Key slot. This can obviously be used for a couple of add-ons but the most likely is going to be a WiFi module because the Rock 5B doesn’t have any onboard WiFi. I haven’t gone with this optional add-on as I prefer to use a wired connection and the included 2.5G Ethernet port is a faster and more reliable option.

Flipping the board over, we’ve got a prominent M.2 M Key slot that supports a 2280 NVME SSD.

Rock 5 B Back of SBC

Along the shorter edge closest to the M.2 slot are a CSI and DSI port for a camera or display and alongside those and next to the M.2 slot is a microSD card slot. The microSD card slot is a sort of “half slot” that only holds the pin area of the microSD card.

There is also a socket for an optional eMMC module if you’d prefer to use that to boot off instead of an SD card or an SSD.

Rock 5 B eMMC Storage Port

The board is designed in a Pico ITX form factor and is 100mm long and 72mm wide. Although this is technically a standard form factor, you’ll still have a hard time finding an enclosure for it outside of the ones offered by the manufacturer as it’s just a very uncommon size.

The passive heat sink is quite bulky so I don’t think we’ll have any cooling issues, even without a fan. They do have an option for a heatsink with a fan, which is a bit more compact but then you’ll obviously also have the fan noise.

Passive Heat Sink

The heatsink just uses some snap-in pins to hold it in place over the CPU and has thermal pads preinstalled.

Cooling Pads on Passive Heatsink

The RAM is split between the two black chips alongside the CPU and strangely the heatsink is offset from the centre of the CPU, but only covers one of them. I’m sure this won’t cause any issues it just seems a bit odd.

Passive Heatsink Installed On Rock 5 B

That’s all we need to do to prepare the board to be powered up, so we can move on to preparing the operating system on the boot drive.

Flashing The Operating System Onto A MicroSD Card

To start with, let’s get a microSD card prepared and then boot up the Rock 5 Model B.

Radxa provides images for Android, Debian and Ubuntu. I’m going to go with the Debian image for now and we’ll see how that runs. The Ubuntu image is a server OS and does not have a GUI/desktop.

Operating System Images Available For Rock 5 B

Flashing the microSD card is pretty simple, you just download the prepared operating system image, then flash the microSD card using a utility like Balena Etcher, then plug it into the board’s slot and it’s ready to go.

To power the Rock 5 B, I’m using a USB C adaptor with PD 2.0.

The first boot takes a little over 30 seconds and you’ll then be presented with a login screen. The default username and password are both Rock and you’ll then arrive at the Debian desktop.

Booted To Debian Desktop

If we open up HTOP, you can see we have 8 processor cores listed, which don’t seem to be doing much at the moment and then our 8GB of RAM and we’re not using any swap.

HTOP Runnings on Debian Desktop

Youtube Video Playback On The Rock 5 Model B

Next, let’s try playing back a Youtube video in the default browser – Chromium. I’ll try this at both 1080P and 4K video resolution.

For the first test, let’s set the monitor to 1080P and then open up Youtube.

Adjusting Display Resolution to 1080P

We can then set the video resolution to 1080P and open up stats for nerds.

Playing Back Big Buck Bunny In 1080P

Video playback in the window is really smooth with a few dropped frames and playback is similar when we open it up to fullscreen. You can get a better feel for the video quality by watching my Youtube video at the beginning of the post – at 1080P, you have a really good quality stream that you wouldn’t have any trouble watching.

Next, let’s try to step it up to 4K.

Opening up the same video in 4K with playback in a window, we already start dropping some frames and playback is quite obviously stuttering. Opening it up to fullscreen is even worse, dropping a significant number of frames and stuttering to the point where playback is not really usable.

Playing Back Big Buck Bunny In 4K

Like with the Khadas Edge 2, this is most likely because the browser is using software decoding instead of hardware decoding. This essentially means that we’re not using the GPU hardware for video playback but we’re relying on the CPU to do decoding through software, which is putting a lot of strain on it. We can see that if we open up HTOP while playing back the video, we’re basically maxing out our CPU continuously.

HTOP Indicating All Cores Maxed Out

So if you’re wanting to use the Rock 5 Model B for 4K video playback from an online source, you’ll probably want to use the Android operating system rather than Debian.

Running The Sysbench CPU Benchmark

Next I’m going to try running the Sysbench CPU benchmark on it and I’ll also do this with HTOP running alongside it so that you can see the load on each CPU core. We’ll give it 8 threads, one for each core, and set the maximum prime number limit at 20,000.

Running Sysbench Benchmark On Rock 5 B

When we run the test, you’ll see all 8 cores are maxed out.

Sysbench Benchmark Running

After 10 seconds, the benchmark is complete and the cores drop back down to idle. We managed to process a little over 5,300 events per second for a total of 53,600 events for the test.

Sysbench Benchmark Results On Rock 5 Model B

These numbers don’t really mean much on their own so I ran the test on the Khadas Edge 2 and a Raspberry Pi 4 for comparison.

The Edge 2 managed 5,150 events per second for a total of 51,500, which is about 4% slower than the Rock 5B in this benchmark.

Sysbench Benchmark on Khadas Edge 2

The Raspberry Pi only managed 195 events per second for a total of 1,950. This is obviously not a fair comparison as the Pi only has a 4-core CPU running at a lower frequency and is quite a bit cheaper than the Rock 5B. In any case, the Rock 5B and Khadas boards are both over 25 times faster than the Pi in this benchmark.

Sysbench Benchmark on Khadas Edge 2

How Much Power Does The Rock 5 Model B Use?

To measure the Rock 5’s power consumption, I used a USB C cable that supports power delivery. This shows that the Rock 5 Model B is indeed running on PD, indicated by the PD at the top. I found that the Rock 5B runs at 2W when idle and at 8-10W when the CPU is fully loaded.

Booting From An NVMe Drive

Lastly, I tried booting the Rock 5 Model B from an NVMe drive.

I prepared the NVMe drive in the same way that I did with the microSD card. I used the same disk image and flashed it to the drive using Etcher and an M.2 M Key to USB C adaptor.

Installing an NVME Drive

I then tried following their guide to reflash the bootloader on the Rock 5 Model B. You need to do this because the default bootloader doesn’t support booting from an NVME drive. They run you through a process using a utility called RKDevTool which you’ll need to load a configuration file, loader and SPI image into. You then need to get the Rock 5B into maskrom mode and then reflash it. I was able to do all of the initial steps and the utility could see the board, but it crashed whenever it completed the device test, which is when it then starts flashing the image.

Running RKDevTool to Reflash Boot Loader

I tried this on two different computers and with a number of different cables and had the same result, so I wasn’t able to get the board to boot from the NVME drive.

If I boot the Rock 5B form the microSD card with the NVME drive plugged in, we can see that the drive is being recognised but it obviously won’t boot from the drive without the bootloader being reflashed.

NVME Drive Being Seen By Rock 5 B

So it was a little disappointing that I wasn’t able to get this to work but hopefully there will be a fix for this issue soon.

Final Thoughts On The Rock 5 Model B

The Rock 5 Model B certainly has the potential to be a great choice for those looking for a powerful SBC with low power consumption. The RK3588 processor offers a significant performance improvement over a board like the Raspberry Pi 4, however, as with most of these alternatives, the Rock 5’s software and documentation still need a lot of work.

Most of the documentation and guides for the Rock 5 Model B are either at a very high level or are simply placeholders for development at this stage. I’d also like to see a full Ubuntu image for the Rock 5B as I personally prefer this OS over Debian.

With a starting price of just $129, this board is really good value for money given its specifications. The lack of WiFi is a bit disappointing, but I’m happy with the ability to add one through the M.2 E Key port if required and I really like that they’ve given us a 2.5G Ethernet port. I think the $20 increase to $149 is well worth it to double the RAM to 8GB. Most people won’t need 16GB of RAM, but it is nice to have this option if required.

Let me know what you think of the Rock 5B in the comments section below and let me know if there is anything you’d like to see me try to run on it.

Awesome Cyberpunk Case For The Raspberry Pi 4 – Pironman by Sunfounder

Since I created the first version of my Raspberry Pi desktop case back in 2020, a number of manufacturers have made spinoffs of the design, with some less spun off than others. Some even asked me to review the case design that they unashamedly copied.

Copy of My Raspberry Pi UPS Case

Then Sunfounder reached out a few weeks ago and asked me if I’d be interested in trying out their new Pironman case.

Unlike some of the others, this case, although bearing some resemblance, has actually been designed from scratch. They’ve also put some effort into designing a case that meets a number of the common things people look for in a Pi case.

Pironman Case Features

So let’s get it unboxed, take a look at what it includes and get it set up.

Here’s my video review which also shows some of the functionality of the case at the end, read on for the written review:

Where To Get The Pironman Case

Tool & Equipment Used:

Unboxing And First Look

The Pironman Case comes in a branded white box with an image of the case on the front and some specifications on the back.

Pironman Cyberpunk Case by Sunfounder

In the box, first up are the assembly instructions. I’ll go through the instructions in a bit more detail when putting the case together but at first glance, they’re quite well-written and are also illustrated to guide you through each step.

Pironman Case Unboxing

Below the foam insert is the case and components, with additional foam padding around the edges. Overall it is well packaged with very little chance of damage to the case or components.

Pironman Case Components

The main body of the case is a folded sheet metal design with a nice metallic silver finish and the ports or cutouts are all clearly labelled.

The side panels are 3mm clear acrylic and they’re sent with the protective film in place on one side so that they don’t get scratched.

Pironman All Metal Raspberry Pi 4 Case

It’s also got their Pironman logo laser etched onto the top front edge.

Pironman Raspberry Pi 4 Case, Laser Etched Logo

Included with the case are thermal pads for the cooler, ribbon cables for the carrier board, an I2C OLED display to show the Pi’s CPU, disk and ram usage as well as the temperature and IP address, a pack of standoffs and screws, an addressable RGB LED strip, an Ice Cube cooler which seems to be custom made for this case as it doesn’t have the screw holes to mount the fan directly onto it like their standalone cooler, some tools with the cooler brackets, a power switch, acrylic front panel cover and fan, a GPIO adaptor and USB jumper and finally, the main carrier board.

All Components Included With Pironman Raspberry Pi Case

So you can see you really get a lot with this case, but that also means that putting the case together is quite a process – mainly because there are so many parts.

The instructions are pretty good though and the screws and adaptors are all well-identified. So let’s get it assembled.

The case is designed for use with a Raspberry Pi 4 and also an optional M.2 SATA SSD. So I’m using a 2GB Pi 4 and a spare 240GB SSD which I’ve used recently on another build.

Assembling The Pironman Case

To get the case assembled, they include a small screwdriver but with the number of screws we’ve got, I’m going to rather use my electric driver.

Electric Screwdriver Instead Of Included Driver

I’m not going to go into too much detail on the assembly process here as it’s all in my video and mainly just follows the written instructions. I have however written about some of the issues I ran into and some of my thoughts on the components.

The assembly process starts with the carrier board. This is the best part of this design in my opinion. This board has an M.2 slot for a SATA SSD, pins to control the addressable RGB LED strip, an IR receiver if you’re going to use the Pi as a media player, an external GPIO header and a power button input. It’s also got an SD card slot that is brought out to the back of the case with a little adaptor so that you have the option to swap out the SD card without dismantling the case.

Pironman Case Custom Carrier Board

A ribbon cable connects the GPIO adaptor to the carrier board. This is to connect the Pi’s GPIO pins to the carrier board to control things like the display, LED strip, power button and fan. I don’t really like the way they’ve done this, I think it would have been easier to use an arrangement like the pogo pins used on some UPS shields.

Pogo Pins To Connect To Raspberry Pi 4

These ribbon cables are quite fragile and tear easily, although they do give you a spare, and it makes it more of a challenge to install this ribbon cable alongside the second for the SD card adaptor.

The Raspberry Pi is held in place on the carrier board using some M2.5 nylon standoffs and we can then plug all of the adaptors in.

Connections To The Raspberry Pi

Next up is fitting the Ice Cube cooler. I’ve said in a previous project that I prefer this to the Ice Tower cooler as it covers and provides cooling to the chips surrounding the CPU as well.

The fins on the heat sink are quite fragile and were already slightly damaged when it arrived. So take care not to put too much pressure on them.

Ice Cube Cooler Fins Are Fragile

The panels all go together with M2.5 x 6mm screws, which is quite easy, but there are a lot of them. I didn’t tighten them when I first installed them just so that there was a little allowance for movement to make sure they all lined up properly first.

And before installing the second side panel, we need to mount the fan to it. They include mounting holes for the fan on either side of the case, so you can go with either option. One issue I did find with this though is that the fan hub protrudes from the housing enough that it catches on the acrylic. So you can only install the fan one way around, pushing air out of the case.

Fan Blades Catch On Acrylic Cover

This probably doesn’t make much difference to the thermals but I like having the hub side of the fan visible as the opposite side has an ugly sticker on it. I tried pressing the hub down onto the motor a bit further but that didn’t make any difference.

Fan Sticker Visible Through Acrylic Panel

Last up is installing the optional M.2 SATA SSD on the bottom of the carrier board. This is an easy process with 8 screws on the removable bottom panel.

Installing The M.2 SATA SSD

Just to be clear, this is an M.2 SATA drive, not an NVME drive. A lot of people told me in a previous project that it was a waste to use an NVME drive that is connected through a USB 3.0 port. This drive, being an M.2 SATA drive, actually has a pretty similar speed to the USB 3.0 ports on the Pi at around 600 MBps.

There were some parts left over after assembly, which I assume are spares. The two black strips look like ones typically used for cable management but aren’t mentioned anywhere in the instructions, so I’m not sure what the intention behind them is.

Installing Raspberry Pi OS and their Pironman Script

With the case all assembled, let’s get it booted up, load the Pironman script and see what it looks like.

I used this drive previously, so it’s already got Raspberry Pi OS loaded and it’s still got my stats script on it, which looks like it works with this display as well.

Pironman Case Original Stats Script Working

On their website, Sunfounder have got instructions on how to set up the software to control their custom components. First, you’ll need to make changes to the configuration file for the power button and IR receiver to work.

Then you’ll need to install a script from their Github repository which will control the OLED display, turn the fan on and off at a certain temperature, control the RGB LED strip and activate a safe shutdown of your Pi when you press and hold the power button.

Pironman Case Configuration

Once you’ve loaded it then the LEDs inside the case light up and this looks quite cool.

LED Lights Working After Setup

The display also shows their custom stats screen.

Pironman Case Stats Script Running

I tried a quick stress test to check if the fan would come on, which it did when the CPU went over 50C.

Fan Running When CPU Temperature Exceeds 50C

I then also tried playing around with some of the RGB light settings. You can change the light sequence and colours and also how quickly they change or pulse.

The display goes to sleep after a period of time, which you can customise, and you short press the power button to wake it up again.

Stats Script IS Displayed With Short Power Button Press

If you long press the power button, it’ll shut down your Pi. The lights and fan stay on for a while after the Pi shuts down but do eventually turn off as well.

Pi Shutdown With Long Button Press

And finally, pressing the power button wakes the Pi back up again.

Pi Shuts Down and LEDs Turn Off After A While

Final Thoughts On The Sunfounder Pironman Case

Overall, I quite like the detail that they’ve put into the case design. It’s a good quality case that will last a long time, and it’s really got all of the optional extras that you’d want if you’re going to be using your Pi as a mini-computer.

Pironman Case By Sunfounder

After putting the case together and using it for a few days, there are a couple of things I’d like to see improved.

I like that the fan is mounted onto the side panel rather than on the cooler so that it is actually drawing fresh air into the case, but I would have made the exhaust vents a little bigger than the input as you don’t want to restrict the airflow out of the case. They’ve obviously done this so that you can put the fan on either side if you’d like to.

The other more significant thing is the general assembly process. I think they’ve made the design slightly more complicated than it needs to be. The metal housing could have just been two parts instead of four. It’s great that the bottom is removable to get to the SSD but the other three sides should all be a single piece. This would make installation much easier and would reduce the number of screws required.

I’d definitely recommend having a look at the Pironman case for your Raspberry Pi, it’s one of the better ones I’ve seen and is good value with the SSD carrier board included as well. Let me know what you think of it in the comments section below.

I Made An Only Fans Case For My Raspberry Pi

Every time I’ve made a new case for my Raspberry Pi, there are always a few comments suggesting adding another fan or making improvements to the cooling, so today I’m going to put these suggestions to the test by building a case that has as many fans as possible to find out if more fans really result in lower CPU temperatures.

Raspberry Pi SSD Window Case Design

Now this wouldn’t be a test without some sort of data to compare it to, so we need a baseline to see what the CPU temperature is in my usual Pi case design.

I’m going to be comparing three configurations;

  • A baseline small heatsink placed onto a Pi in my standard desktop case design with a fan on the side panel,
  • An Ice Tower cooler on the Pi like I use in most of my designs,
  • An Ice Tower cooler in a case where every possible space is filled with a fan.

I’m going to run each test at the Pi’s base frequency of 1.5Ghz and I’ll then overclock the Pi to 2.2Ghz and see how that affects the temperatures.

Heatsink Test At 1.5Ghz

For each, I’ll be starting at room temperature, which is about 25 degrees, and I’ll run a utility called CPU burn which maxes out the Pi’s four cores and I’ll leave this running until the temperature stabilises or we start thermal throttling.

Watch my video of the build and test below or read on for the write-up;

What You Need For This Project

Equipment Used

  • Gweike Cloud Laser – Buy Here
    • Use my discount code MK200 on checkout to get $200 off
  • Electric Screwdriver – Buy Here
  • Acrylic Bender – Buy Here
  • TS100 Soldering Iron – Buy Here

Designing The Fan Case

To start off, I had to work out how many fans I’d need. Each fan is a square of 40mm and is 11mm deep, and a Raspberry Pi is 85mm long and 56mm wide.

So to cover the full length of the Pi with the SD card sticking a little out the back we’re going to need 3 fans, and to cover the width we’ll need 2 fans. We also need a bit of height to leave space for the Ice Tower on top of the Pi, so I’m going to make it two fans high. I’m not going to put any fans underneath the Pi as they’re restricted by the desk and there is nothing to cool on the bottom.

So I’ve got space for 6 fans on each side as well as 6 on the top, and space for 4 fans at the front and the back. We can’t have fans blocking the ports on the front of the Pi, so I’m going to get rid of the bottom two fans in that area and I’ll add some port cutouts into the design. So we’ll need a total of 24 fans for this design.

Fan Layout Around Raspberry Pi

A not-so-quick Aliexpress order and two weeks later these arrived.

Box Of Fans Arrived From Aliexpress

Now I could just glue them all together but that’s going to be a challenge at the corners and is going to make mounting the Pi difficult, so we need some sort of frame to hold the fans in place. The easiest way to make up this frame is going to be with some 2mm clear acrylic that I can laser cut.

I drew up the design below in Inkscape.

Laser Cutting Design

Laser Cutting Frame Design For Fan Case

The design doesn’t add any restrictions to the fan’s airflow, it is there purely to hold the fans in place, so the hole for each fan is slightly larger than the fan diameter. It’s made up of two parts which will each be bent into a U shape to fit together and I’ll then need some 90-degree brackets in the corners to hold the two pieces together.

Making Up The Fan Case Components

I laser cut the two parts from a single sheet of 2mm clear acrylic.

Laser Cutting Fan Case Design

I then bent the parts using an acrylic bending tool to heat up a line between the notches cut into the sides and I used a wide 90-degree bracket to make sure that the bends came out square.

Acrylic Bending Tool To Bend Case

Both of these turned out to be a bit more difficult than I had hoped. I bent the sides on the first piece the wrong way around and had to go back and reheat them to bend them the other way. The second piece was longer than the element on the bending tool so I had to reheat it from both sides a couple of times before it was hot enough to actually make the bend. But I eventually got the two parts made up correctly in the end.

Now that I’ve got the parts in my hands, I actually think it’s going to be easier to hold together if I glue some brass inserts onto the base for the sides of the top section to screw into, so I’m going to glue an M3x10mm standoff into each corner which aligns with the corner fan screws.

Frame Of Case Built Up

Mounting The Fans Onto The Case Frame

Next I need to get all 24 of these fans mounted onto the case frame. To do this, I’m using the four M3 button head screws and nuts that came with each fan.

Fans Mounted With M3 Screws

I realised at this stage that I hadn’t really decided which fans would be pushing air into the case and which would be pulling air out, so I decided that it would be best to have an even split and since people often complain about air dead spots in my case design I thought it would be best to have all of the fans on one side pushing air into the case and all of the fans on the other side pulling air out of the case. This is so that there are no fans opposing or competing with each other.

Fans Pushing Or Pulling Into Case

I then mounted all 24 fans onto the two case halves, with all of the fans on the left blowing air into the case and all of the fans on the right pulling air out of the case.

With the fans all done, we can mount the Raspberry Pi and Ice Tower assembly into the case. With the bend in the acrylic, the ports are slightly too high so I’ve added a nut as a spacer onto the bottom of each stand-off so that the Pi sits a little higher.

I’m also adding a small rubber foot on each of the four corners of the base so that it doesn’t vibrate itself around my desk.

Installing Rubber Feet Onto Bottom Of Frame

I’ve got some 90-degree cables for power and HDMI so that these can run through the base.

Plugging Power and HDMI Cables Into Pi

The next challenge is how to power the fans. Each one runs on 5V and draws around 0.1A. They’ll run individually on the Raspberry Pi’s GPIO pins, but when there are 24 of them, we easily exceed the capacity of the Pi. We probably even exceed the USB C power adaptor’s capacity with the Pi running as well. So I have to rig up another power supply just to run the fans – this power supply can do 5V 2.5A which is perfect.

Power Adaptor To Power 24 Fans

Now I just need to connect each of the fans to the power supply. I’ve made up a few connectors to connect the fans up in groups in a way that doesn’t have them all running through a single set of jumper leads, which would overload the leads.

Power Cable and Jumper Lead Adaptors

I then used some zip ties to neaten up the wiring and try to keep the wiring out of the fan blades. This also turned out to be a lot more difficult than I thought. There isn’t a lot of room within the case, so every time I put the two pieces together, some of the wiring landed up in a fan. After a bit of frustration, I eventually managed to sort it out and get the fans spinning freely.

I’m not going to power it up just yet, let’s first backtrack a little and let me show you the results from my first two tests.

Testing My Original Desktop Case Design

I wanted to use the same Raspberry Pi across all tests for consistency, so the Pi that is currently in the fan case is the same one that I used earlier for these tests.

For the first test, I put a small aluminium heatsink onto the Pi and then put it into my desktop case. It’ll be cooled by a single fan on the side of the case.

I booted it up and then ran CPU burn with the CPU clock frequency at the standard 1.5Ghz. The temperature actually stayed lower than I expected and it stabilised at around 53 degrees after 3 minutes.

I then overclocked the Pi to 2.2Ghz and ran the test again. This resulted in a significantly higher running temperature but still didn’t thermal throttle and stabilised at around 75 degrees after 4 minutes.

Here are the results from the Aluminium Heatsink test:

Heatsink Test Results

For the second test, I put the Ice Tower onto the Pi as I usually do with my case designs. This also has a single fan which is mounted directly onto the side panel of the case, pushing air into the case and onto the Ice Tower cooler, and vents out on the opposite side.

Raspberry Pi Running With Ice Tower Cooler

The 1.5Ghz test stabilised at about 39 degrees after 2 minutes.

The 2.2Ghz test stabilised about 10 degrees higher at 49 degrees but took about 4 minutes to get there.

So these are the results from the first two tests, which we’ll be looking to beat with more fans:

Ice Tower Cooler Results

Testing The Fan Case

Let’s start out by getting the fans powered up.

Powering Fan Case

I wasn’t sure what to expect, but to me, it was somewhat underwhelming. You’ll need to watch my video linked at the beginning of the post, but I expected a bit more noise and to feel a lot more airflow around the case. It still looks pretty cool though.

It was also quite nice to see the fans all start off the same colour and run the same RGB loop for a few seconds before slowly drifting off into a mix of colours.

Next, let’s boot up the Pi and see how it handles the test.

Fan Case Booted Up

First, let’s run the test at 1.5Ghz. The fans were making a difference at the start, our starting temperature was a little over 3 degrees lower than with the Ice Tower. The temperature jumped up to 34 degrees quite quickly but stabilised quickly as well.

Next let’s reboot it at 2.2Ghz and try again.

Our starting temperature is about 7 degrees warmer than at 1.5Ghz, so let’s see what it stabilises at.

With the tests done, the results are in. The fan case stabilised at 35 degrees at 1.5Ghz and 44 degrees at 2.2Ghz, both after around 3 minutes.

Fan Case Test Results

Comparing The Results From All 6 Tests

Here are the results from all 6 tests:

Combined Test Results

So the fan case did have an improvement over the standard case, but not in a way that I’d consider a dramatic improvement. The temperature decreased by an average of 4 degrees when running the 24 fans in place of the single fan.

Only 4 Degree Drop In Temperature Between Ice Tower and Fans Case

Given that we’re now using over 2000% more power just to run the fans and that most Raspberry Pi’s are not running flat out continuously, I’d say a single fan on a decent size heatsink like the Ice Tower or Ice Cube cooler is more than enough – even for overclocking.

And If you’re really keen on keeping the temperature of your Raspberry Pi as low as possible, you’ll have more fun water-cooling your Pi. It’s also quieter, more power efficient and cheaper than buying 24 fans.

Water Cooling On Raspberry Pi 4

Let me know what you think of my fan case and let me know if there is anything else you’d like to see me try to cool my Pi with in the comments section below.

I Made The World’s Smallest Server Rack – With UPS and SSD Storage

Having your own home server rack or homelab is really useful, but you have to have a relatively large space to set it up, it generates a lot of heat and can be pretty noisy. So that’s why I built this, the world’s smallest server rack that fits right in on my desk alongside a drink or cup of coffee.

Worlds Smallest Server Rack Running On UPS

It runs Docker, so it can handle a number of containerised network applications, it’s also got a built-in UPS to carry it through a power outage for an hour or so and it’s got an SSD which is used for file and media storage.

So in this guide, I’ll show you how I made it.

Here’s my video of the build, read on for the written guide:

What You Need To Make Your Own Mini Server Rack

Tool & Equipment Used:

  • Creality Ender-3 S1 Pro – Buy Here
  • Gweike Cloud Laser – Buy Here
    • Use my discount code MK200 on checkout to get $200 off
  • Electric Screwdriver – Buy Here
  • Acrylic Bender – Buy Here

Designing The Mini Server Rack

This project came about because when I made up a case for my Raspberry Pi to house a UPS then people asked me to add an SSD and when I made one up for an SSD, then people asked me to add a UPS.

The problem is that both of these boards are designed to sit directly underneath the Raspberry Pi, the UPS because it uses these pogo pins to connect to the Pi’s GPIO pins;

UPS Pogo Pins To Connect To Pi

And the SSD shield because of the jumper to hook it up to the Pi’s USB ports;

SSD Shields USB Jumper

So this got me thinking of a way to mount all three on top of each other, and the solution that came to mind is some sort of rack mount enclosure. These don’t exist in sizes suitable for a Raspberry Pi, so I decided to design my own.

I designed the rack in Fusion360 to look somewhat like a server rack that would be used for a typical home lab. It’s got a tinted acrylic swing door on the front and tinted acrylic side panels. The top, bottom and back are all solid panels, with the back having a cable entry point and the top having a 40mm fan for cooling.

Designing The Rack Mount Server Case

Download the CAD files to make your own Mini Server Rack

Inside, we’ve got space for three racks, one for the Pi, one for the UPS and one for the SSD. I’m also going to mount an OLED display alongside the Pi to provide some stats on resource usage on the server.

Making Up The Server Rack Components

With the design done, I 3D printed the parts in black PLA.

3D Printing The Components

While they were printing, I also laser cut the door and two side panels from 3mm grey tinted acrylic.

Laser Cutting The Acrylic Sheets

So those are the main components for the housing made up, now we just need to add the racks to it to hold the electronics.

Electronic Components To Install In Server

The SSD will be on its own rack at the bottom as this can be plugged in or removed using a USB cable or jumper.

I’m using an M.2 NGFF shield with a 256GB Western Digital SSD.

250GB SATA SSD Plugging Into Shield

The UPS is a bit more complicated because of the pogo pins, so you can’t just slide it in underneath the Pi, it has to be physically screwed onto the bottom of the Pi. So, I’m going to have to combine these two racks into a single double-height rack.

The UPS I’m using is a Pisugar 3 Plus. This has a 5000mAh battery which can run a Pi alone for around 5 hours, but with the SSD connected as well as the fan and display running, I expect this to go down to about an hour or two. It can handle a continuous output of up to 3A, so it’ll have no trouble supplying power to the additional equipment and the SSD as well.

The racks are going to be made from 2mm black acrylic which I’m going to bend at the front. So I drew up these flat patterns in Inkscape to laser cut.

Inkscape Laser Cutting Rack Designs

You could also 3D print these trays but it takes a minute to cut both of them from acrylic rather than a few hours to 3D print them, so it’s easier to make changes or adjustments if I need to.

Laser Cutting The Acrylic Racks

To bend the acrylic, I’m using an acrylic bending tool to heat up a line along the bottom.

Heating The Racks With Acrylic Bending Tool

Once the acrylic is soft, we can bend the front up and use a 90-degree bracket to make sure that the bend comes out square.

We can do the same for the second rack.

Assembling The Mini Server Rack

Now we’ve got all of the parts made up and we can move on to assembling our mini server rack.

First, we need to melt some threaded brass inserts into the 3D-printed base and hinge for our assembly screws. To do this, we’ll use a soldering iron set higher than the melting point of our filament.

Melting Brass Inserts Into Place

We’ve got four M2.5x6mm inserts for the top cover screws, six more for the racks, two for the cable cover at the back, and finally two M2x4mm brass inserts on the hinge for the hinge pins.

Now let’s install our components onto the racks.

We’ll start by mounting the SSD shield onto the bottom rack.

SSD Shield Ready To Install On Rack

The SSD shield is held in place using the M2.5x6mm brass standoffs that came with it and an M2.5 nut on the bottom. I’m still going to use the USB jumper that came with it, but I’ll use this on the Pi and then use a short USB jumper with a 90-degree cable to connect to the SSD.

We can then slide the SSD rack into place at the bottom and secure it with two M2.5x6mm screws.

Installing SSD Rack Into Enclosure

Now let’s move on to the UPS and Pi rack. I was initially going to use the included nylon screws and some 6mm standoffs to mount the Pi on the rack but, to fit the OLED display in next to it, I needed the Pi to be at the top. So I’m going to replace the nylon screws with M2.5x6mm stainless steel screws for additional strength and I’m going to use two M2.5x12mm brass standoffs for each leg to the rack.

Adding Brass Standoffs Onto Pi & UPS

The battery also doesn’t fit in between the legs, so I’m going to leave off one of the front legs so that there is some room for it to fit in under the Pi.

UPS Battery Installed Beneath Pi

The OLED display is held in place using two M2x16mm screws at the top with a nut on the back of each and is held in place along the bottom by the cutout through the bottom of the rack.

M2 Screws To Mount OLED Display Onto Rack

The SSD’s USB jumper plugs into the front of the Pi and I’m using a short USB extension cable with a 90-degree connector on one end to connect to the SSD.

We can then hold the Pi assembly in place on the rack with some M2.5 nuts.

I’m going to use a short female-to-female ribbon cable to plug the display into the Pi’s GND, 3.3V and I2C pins. If you need some help with this step, you can follow my guide on connecting an OLED stats display to a Raspberry Pi.

I’m also going to add a heatsink to the Pi to assist with cooling.

Aluminium Heatsink Connected To Pi

Before we slide the Pi rack into place, let’s add the battery and plug it into the UPS.

The Pi rack is then also held in place with some M2.5x6mm screws, 2 per rack unit.

Mounting Top UPS Rack

Next, we can mount the fan onto the top cover. I’m using a 5V Noctua fan for this to keep it nice and quiet. I’m going to mount it on the underside of the cover with some M3x16mm screws so that it is pulling the warm air out of the case.

I’ve added a short pair of breadboard jumpers to adapt the connector on the fan to fit the Pi’s GPIO pins, I’m using 5V and GND. You can also use 3.3V if you’d like the fan to run a little quieter although it then moves less air so the Pi will run hotter.

To make up the door, we need to glue the acrylic sheet into the recess along the hinge, which we can do with some super glue.

Super Glue Hinge Onto Front Door Panel

Then I made up some adjustable hinge pins by cutting the heads off of some M2x10mm screws. We can then screw these into the brass inserts and screw them in or out to position the door correctly within the frame.

The USB C power cable runs through the cable entry hole at the back and then up to the Pi.

Plugging Power Cable Into Raspberry Pi

We can then close up the cable entry cover. I made this hole much bigger than what is required for the USB C cable so that I can add an HDMI cable or Ethernet cable in future if I’d like to use those ports on the Pi.

The side panels are just held in place using the guides that are 3D printed into the main body of the rack, so they’re easily removable if you need to get to the ports on the side of the Pi or the GPIO pins.

Adding Acrylic Side Panels To Server Rack

The door pivots on the hinges that sit within the 3D-printed holes in the base and top cover.

Adding Front Door To Server Rack

Then we can then close up the top cover with four more M2.5x6mm screws.

Installing Top Cover On Server Rack

I also 3D printed a cover for the USB jumper.

3D Printed USB Jumper Cover

That’s it complete, so now I can get the software loaded and boot it up.

Booting The Mini Server Rack Up

As I said at the beginning of the video, I’m running Docker on this Pi so I’ve got all of my applications running in containers. This makes it really easy to experiment with applications and services. I’ve even got my stats display running in a container, which I’ve also made available on Github. Here’s a great guide on installing Docker on your Raspberry Pi if you’d like to set yours up in the same way.

OLED Stats Display Running With IP Address Shown

The Pi Sugar UPS also has a dashboard that is available through a web page on the network. I really like that you can access a range of settings and controls remotely.

PiSugar Web Dashboard

You can use the PiSugar’s built-in real-time clock to schedule a wake time, you can also add custom button functions, set the battery level that will trigger a safe shutdown and even extend the PiSugar’s battery life by not charging to its full capacity.

PiSugar Web Dashboard Settings

There are a bunch of commands that you can use in scripts on the Pi to get information from or modify settings on the UPS. These are useful if you’d like to adapt the OLED display to display stats specific to the UPS as well.

Additional Script Commands For PiSugar UPS

The only thing that I think is missing from the dashboard is a reboot or shutdown button to allow you to remotely reboot or shutdown the Pi.

Other than that the server seems happy to run entirely on battery power from the UPS, even with the fan and SSD running.

Final Thoughts On The Build

I’m really happy with how this project has come out. There are however a couple of things I still want to try.

I’d like to add a low-profile 90-degree ethernet cable to the Pi to rather use a hardwired network connection. A hardwired connection is a lot more reliable and stable, especially for a server-related project like this.

The Pi seems to run quite hot, even though it is near the fan, so I want to swap out the heatsink for a slightly larger one – perhaps use a low-profile Ice Tower.

The stats script also seems to lock up after a while, I assume because it is conflicting with the I2C interface on the UPS, so I need to look into a fix for this.

Let me know what you think of it in the comments section below and also let me know what other things you’d like to see me include in the rack design for a future build.