Category Archives: Raspberry Pi

Building a Fast Pi File Server

I just did a blog on booting a Pi 4 Compute Module from an NVME drive.  I’ll provide a Build Of Materials (BOM) for duplicating this project.  Here are the primary components:

Compute Module 4 Build of Materials

ComponentCost Description
CM4008000$75CM4 Lite 8GB No Wifi, No Bluetooth
NVME PCIe Adapter$11NVME Adapter
Samsung EVO 970 Plus 2TB$203NVME Drive
CM4 IO Carrier Board$35Carrier Board for CM4
SD Card$9SD Card (optional). Not required if your CM4 has eMMC.
Power Brick$9Power Brick. Just picked the first one I saw on Amazon. Any 12v , 2 amp or more will do. Get a 5.5mm connector.

So for just over $300 you can have an amazing file server.  Also if you back off the 2TB Samsung EVO970 to a 1TB drive you can save $100 roughly.  You can buy a cheaper Compute Module as well IF YOU CAN FIND ONE. A 2GB one is fine for serving files. For around $200, or a bit less you can have a solid, and adequately fast file server.
Continue reading

Booting a Raspberry Pi CM4 From an NVME

This is another one of those things………..All the information is out there.  Several good sources have blogged about it, but NO ONE has put it in a Dummies Guide for the rest of us to follow.

NVME support and NVME booting is now built in to Raspberry Pi OS.  If you have a Compute Module Lite you can use the SD Card Copier program to copy your SD card to your NVME drive and boot to the NVME by removing the SD card, however if you have a Raspberry Pi 4 Compute Module with eMMC you have to change the Boot Order according to the docs

NOTE:  THIS IS SPECIFIC TO THE COMPUTE MODULE 4.  THERE IS AN EASIER WAY TO CHANGE THE BOOT ORDER WITH A REGULAR RASPBERRY PI IN PI OS.  DON’T GET THE METHODS CONFUSED.

It’s not hard to do this.  And even if you use an SD card it might shave a little time off the boot to not have it looking for other boot sources first.  I recommend doing the following steps anyway so the NVME drive is first in the boot order.

First and foremost I will assume you have a booting Raspberry Pi CM4:

  • Raspberry Pi CM4 either with eMMC booting or via SD Card. (This example will be from SD) I have an 8GB with no WiFi or Bluetooth.
  • NVME PCIe Adapter – This one works fine.
  • SSD NVME – Bang for the buck I recommend the Samsung EVO 970 Plus I’ll be using the 2TB version of this card.
  • A micro USB to USB cable.
  • Power supply of 12 volts and probably a minimum of 2 amps.  I am using an old router brick that is 12v. 1.5 amps with no issues so far.  I do recommend around 20 watts of power for the board, adapter board, and SSD.

Once booted up normally with the adapter and nvme drive connected let’s check to see if it is recognized with these two commands:

lspci
lsblk

lspci and lsblk results (click pic to enlarge)

You can see the nvme drive is detected.  Good!

Continue reading

Is It Time To Abandon Raspberry Pi?

The Raspberry Pi is a single board computer that came out in 2012 and cost $35.  The intent was to teach computer science and coding to school age children.  The program and the Pi itself  is (or was) a raging success.  Hobbyists flocked to the low cost board that ran Linux and created myriads of projects that were fun, useful and educational.   I’ve been raving on them since 2012.

I’m ready to stop raving.

Why?  Because you can’t get them anymore.  To exacerbate things even more the CEO of Raspberry Pi (Trading) Ltd. came out on April 4th on their website and said that current production was going to businesses that have their livelihood dependent upon Raspberry Pi.

I’m sure a more reasonable translation is “these are our biggest money producing customers and phooey on the individual consumer”.  That is of course my quote.

Continue reading

Raspberry Pi Compute Module 4 Boards – Where Are They?

Pi Compute Module 4

The Raspberry Pi Compute Module is an interesting concept mostly designed for embedded solutions.

A regular Raspberry Pi gives you an HDMI slot, a camera slot, GPIO Pins, USB, audio, etc. but a CM4 with the proper board can give you a PCIe slot, onboard SATA, or onboard NVME M.2

But where are those boards?

I’m looking for a board that will do NVME M.2 natively for a 3.15″ SSD.  I simply can’t find one.

You can take the official Raspberry Pi IO Board and add a PCIe adapter to achieve this but it is kind of a kluge the way it sits in the slot and to date I’ve seen no specific cases that would hold the board securely.

Plus if you give up that PCIe lane to the adapter you can’t use it for other cool things.

What’s a geek to do?

Continue reading

Raspberry Pi Compute Module 4 NAS With SATA Card

I got the inspiration to build up this Raspberry Pi NAS with a Compute Module and SATA adapter from Jeff Geerling.  His blog page is here (linked with permission).  If you like Raspberry Pi even a little bit this guy pushes the Pi to the extreme.  His computer, networking, and Linux skills are exceptional and his delivery is easy to understand.  If you visit his blog click the YouTube icon on the right side of the page and visit his channel.  

Decided to turn my Pi Compute Module 4 into Network Attached Storage (NAS).  A real NAS.  While a Raspberry Pi NAS won’t light the networking world on fire it is more than adequate to serve up files.  I want to put this NAS out in my Shed for two reasons.

  • Redundant backup in case the house burns down
  • Use Squeezelite client to stream audio to my shed stereo, a circa 1980’s Technics Receiver.

I have a mini-ITX case and guts to put a “real” server out there but my shed is a woodworking shop and push come to shove I’d rather gum up the fan and overheat  $100 worth of Pi and Compute Module IO board than to blast a $450 server motherboard.  Besides lots of sawdust it gets wicked hot and wicked cold in the shed too. This computer is going to get dirty and this is a choice of economics as much as anything.

Making a Pi NAS is easy but it also ends up being a spaghetti mess and unless you design and 3D print a custom case the Compute Module just isn’t organically designed to fit any standard case out there.  We gotta get creative.

My cheap case is a Mini ITX case.  How I dealt with the installation was to keep the 500 watt power supply intact and to 3D print a case for the Compute Module IO board.  Then I just double side taped that to the inside of the enclosure.  Here’s a quick video of the build with details to follow.

Continue reading

Pi Compute Module Build

I built my first Raspberry Pi Compute Module 4 project.  A 1TB NAS Drive using an NVME drive.

CM4 with NVME on PCIe Connector

These are the required parts:

ITEMDescriptionCost
CM4 2GB RAM 32GB eMMCRaspberry Pi Compute Module 4 CM4102032$55
Carrier BoardRaspberry Pi Compute Module CM4 IO Board$35
Power Supply (various sources)12 volt minimum 1.5 amps, 5.5 mm barrel plugHad one laying around. Maybe $10-$15
PCIe to M.2 AdapterXiwai Low Profile PCI-E 3.0 x1 Lane to M.2 NGFF M-Key SSD Nvme AHCI PCI Express Adapter Card$8
NVME SSDSAMSUNG 970 EVO Plus SSD 1TB, M.2 NVMe $109

Let’s talk about the parts somewhat.

Continue reading

Raspberry Pi Compute Module IO Board and PCIe devices

I’m writing this blog because of something I learned the hard way and that I just did not understand.  I, of course, hopes this helps someone else.

I just start playing with the Raspberry Pi Compute Module and Carrier boards and I recently received the Official Pi IO Board for the Compute Module 4.  I decided the first thing I wanted to do was make use of the PCIe slot on the board.

And that’s where the trouble began.

There are LOTS of great web pages on Pi Carrier Boards and PCIe configuration but this issue slipped me up for over a day.

I ordered an NVME adapter and a Samsung EVO 970 Plus NVME drive and the adapter arrived first.  So I decided to go ahead and get it set up and ready for the NVME drive.

And this is really where the trouble began.

Continue reading

Raspberry Pi At 10 Years Old

The Raspberry Pi debuted on February 29th, 2012.  Wow, has it been 10 years already?  Makes me feel old.

The original concept of the Pi was to teach British schoolchildren how to program and code.  What really made it stand out was the COST which was $35.  It also used Linux which meant it was relatively fast and ran on limited resources.  The original Pi had some bottlenecks, especially around USB and Ethernet but it did all work and at a $35 price tag it was ripe for hacking and that’s just what the geeks did.

My first Pi was a breeze to set up and my first project was something called Logitechmediaserver (LMS) and Squeezelite which was a streaming media server and client for Pandora, Spotify, and a now defunct music platform called MOG.  A comparable platform these days is something called Sonos.  I challenge you build a Sonos System for as cheap as you can build an LMS server.

If you plugged in a Digital to Analog Converter (DAC) to the USB of the pi you could stream to any stereo aux input.   To this day I have several Pi LMS clients in my house.   Our current house has built in speakers all over the house and we can stream anything we want to them.  Right now I just use Spotify and TuneIn.  They have since added Tidal to their lineup as well.

Continue reading

Geekpi CM4 Router Board – Challenges

I got my first Raspberry Compute Module 4 and installed it in a Geekpi CM4 Router Board.  And then cue the fun.  It is cool but it isn’t quite ready for plug and play prime time.   It was quite a challenge to get everything running.

First of all there are several images to download on the GitHub page and I just wasn’t sure which one to use.   The image that supposedly allowed the OLED display to work somehow or another didn’t have a working ETH1 wan port after installation.  A router without a wan port isn’t worth a shit and it sure isn’t a router.  Pardon my French.

So then the image with the ETH1 wan port working didn’t have a working OLED display.  FML.   In the great scheme of things the OLED being functional isn’t that important and that’s the direction I decided to go.  Then I figured out how to get the OLED on which is a hack.

Here’s how it happened:

Continue reading

Raspberry Pi Compute Module Discussion

I bought my 1st Raspberry Pi when the 1st version came out.  I think my intention was to make a streaming music server out of it, which I did using logitechmediaserver. Logitechmediaserver is a MUCH CHEAPER implementation of Sonos.  You’ve heard of Sonos, right?  Ever since them I have used the Raspberry Pi for all sorts of things.  Off the top of my head I can list:

  • Music Server
  • File Server with Samba
  • Temperature and Humidity Platform (with added sensors)
  • Hot Tub Hot Water Sensor and Alarm
  • 433 MHz Weather Station
  • Motion Cameras
  • NAS Server with OpenMediaVault
  • Dakboard (showing news feed, weather, calendar, etc)
  • Police Scanner with OP25
  • Streaming police scanner with IceCast
  • Home Assistant for Home Automation
  • Software Defined Radio Spyserver
  • PiAware for tracking aircraft
  • Satellite Tracking
  • 3D printer server with Octoprint
  • CNC G Code Sender
  • Kodi Media Server

I bet you that I’m missing a whole lot of stuff too.  That’s all I could think of quickly.  But that’s a lot. Raspberry Pi variants have served me well over the years, helped teach me Linux, and is still a workhorse around my house.

So why would you get a Raspberry Pi in a Compute Module footprint?  I’ll try to answer that.

Continue reading