Ever since Pat decided to buy the Prusa I3 MK3S back in 2020, I’ve been wondering if I should buy a new 3D printer. This wonderment has been exacerbated a few times when I was bottlenecked by fulfilling orders from my Tindie store.
First I Preordered the Prusa XL
All the stars seemed to align back in November of 2021 when Prusa announced the Prusa XL. The Prusa XL was supposed to be bigger, faster, and way more advanced than my Prusa MK3. The announcement claimed printers would start shipping in “Q2/Q3 of 2022.”
The day of that announcement, I paid the deposit, and then I began waiting for the preorders to begin getting fulfilled. In the time that I spent waiting, a few other things happened:
Bambu Labs successfully crowdfunded and delivered on the Bambu Lab X1.
My computer’s GPU, a NVIDIA GeForce GTX 1080 Ti, began to show its age.
As of the writing of this blog, Prusa is still not shipping what I wanted: the multi-tool version of the Prusa XL.
Once Prusa let me know that the earliest I’d see my printer was May of 2023, alternatives quickly came into focus. I could buy the Bambu Lab X1-Carbon Combo ($1,450) and an AMD Radeon RX 7900XTX GPU ($999) for far less than the 5-tool Prusa XL ($3,500) that I planned to buy. Even better, there wouldn’t be a risk of the eventual delays that have followed.
When I realized I could have nearly everything that I wanted, that I wouldn’t have to worry about more delays, and that I could save $1,000 in the process, I canceled my preorder for the Prusa XL and immediately bought the Bambu Lab X1-Carbon Combo and an AMD Radeon RX 7900XTX GPU instead.
What does Brian think of the Bambu Lab X1-Carbon?
As of the writing of this sentence, I’ve logged hundreds of hours of print time on my Bambu Lab X1C in the months following its delivery. Getting the printer unboxed, set up, updated, and printing took less than an hour. Most of those hours of print time have been 3D-printing things for my new 3D printer, but I have fulfilled a few Tindie orders of my ESP32 D1 Mini cases too. If these first 175 hours are any indication, I’m quite impressed!
The X1C is incredibly fast: Just for fun, I had a “race” between my Prusa MK3 and the Bambu Lab X1C. I started printing this Adjustable Spool Holder for Silica Gel / Spool Weight on each printer using each slicer’s .20mm standard profile. I was able to print almost 4 of these spool holders on the Bambu Lab X1C in the time it took to print one on the MK3.
The Automatic Material System (AMS) is genuinely impressive: I have wanted the option of multiple material prints for quite some time. From what I’ve learned in reading about others’ use of multiple filament systems (prior to the AMS) has been that they’re finicky and underwhelming. In those 175+ hours of 3D-printing, I’ve probably done hundreds—maybe thousands—of filament changes, and the only issue that I ran into was emptying a spool of filament, and it handled that quite gracefully.
The X1C’s enclosure lets me print other materials: My first printer was tiny and came with an enclosure and hot end capable of printing higher-temperature materials like ABS. When I replaced that printer with the Prusa MK3, I attempted printing ABS but had a really difficult time doing so. Eventually, I decided to print almost solely in PLA. I’ve printed a lot of ABS since getting the X1C, and I think it’s exciting that I don’t have to worry about any 3D prints melting while they bake inside my car here in Texas.
It took nearly all Sunday to #3dprint this little Spider-Man figurine for my son. I’m impressed with how it turned out and how well the Bambu Labs X1C churned through it. pic.twitter.com/mCWztN9RnV
Things Brian doesn’t like about the Bambu Lab X1-Carbon
As much as I like the X1,C there are a few things about it that worry me a bit.
Bambu Lab is a very new company: Bambu Lab exists because of the success of their Kickstarter, and there’s a chance that they might not exist for long. I don’t necessarily know how valid of a concern this should be, but it’s a risk that needs to be mentioned.
There are very few user-serviceable parts available: Should my X1C falter outside of its warranty, my right to repair would be seriously hindered by a lack of available replacement parts. My only repair option might very well be to send it back into Bambu Lab, which would be disappointing.
Bambu Studio is nice, but it’s not PrusaSlicer: Technically, Bambu Studio is PrusaSlicer, since it was forked from PrusaSlicer’s source. They’re both similar enough that I can use them both, but dissimilar enough that I definitely prefer PrusaSlicer. I’m worried how long it may take for PrusaSlicer’s new features to get incorporated into Bambu Studio.
Prusa is open-source (for now?) and Bambu Lab is not: Up until now, Prusa has embraced the concepts of open-source, and that’s been to the benefit of both Prusa and its customers. Bambu Lab is not following in this model. It’s very much proprietary and could have the potential to be quite limiting.
I immediately began to worry that the Prusa MK4 might have been a better printer for me. I’m no stranger to Buyer’s Remorse, and thanks to a series of concerning missteps, Prusa Research helped me realize that the Bambu Lab X1-Carbon was the ideal printer for me.
A tiny bit of proofreading, a newfound commitment to honoring promises made to its customers, and a firmware release might be all it takes to break this recent pattern. But until that pattern is broken, I’ll continue to be glad that I purchased the Bambu Lab X1-Carbon Combo.
Is Brian getting rid of his Prusa MK3?
Heck no! I’m flustered and discouraged by what I’ve seen recently from Prusa Research, but that doesn’t completely erode goodwill accumulated from years of hassle-free printing!
My plan all along was to give me the option of simultaneously restocking my Tindie store while enabling me to work on other 3D-printing projects. A second printer has always been my plan, and I do love when a plan comes together!
Final thoughts about the Bambu Lab X1-Carbon
Over the past two months, I’ve been a 3D-printing maniac. I’ve been really enjoying working with the Bambu Lab X1-Carbon. I’d probably be printing this much regardless of what 3D printer I bought. But maybe I wouldn’t have printed this much stuff:
Two weeks from when this blog is published, I won’t be surprised one bit if I’ve managed to eclipse 200 hours on my X1C. I already have a few projects in mind for my office, for my Tindie store, and I’m half-tempted to print a whole new MK735 case for my DIY NAS.
I’m genuinely excited to 3D-design something and crank out iterations until I’m pleased with how it turned out. I’m ecstatic that I won’t feel have to choose to either print something for fun or restock my Tindie store.
Are you looking to add a second 3D printer to your setup? I certainly think that either the Bambu Lab X1C or P1P are fantastic values. But I also think you should check out the Sovol SV06 like Pat did. Much of the value is just having a second printer!
Are you thinking about buying a Bambu Lab X1-Carbon, a Bambu Lab P1P, a Prusa MK4, a Prusa XL, or something else? Come join us in the #3dprinters-lasers-cncs channel in The Butter, What?! Discord server and tell us all about it!
I’ve been building—and oftentimes giving away—DIY NAS builds for over a decade now. I started doing this because I was frustrated when I was planning my very first DIY NAS. I had something in mind, but when I looked to others for some inspiration, I didn’t find any. To my surprise, I found that most of the people in the community did not see the value in what I was wanting to build. Undeterred, I decided to share that build on my blog, and the surprising popularity of that first blog has inspired a whole series of yearly DIY NAS build blogs.
I like to think that my key criteria for building a DIY NAS build has been pretty consistent over the years; that criteria is:
Small form factor
Room for six or more 3.5” hard disk drives
Passively-cooled CPU for quieter operation
My desire for a diminutive, quiet, and power-efficient DIY NAS was born from a lack of space in my office from ten years ago. My office has grown considerably since then, but I still value these features and strive to meet them with each of my DIY NAS builds.
Motherboard and CPU
The minute I learned about the Topton N5105 NAS Motherboard, I knew that it was going to be in the DIY NAS: 2023 Edition. In fact, I was so excited about it that I ordered it the very next day after learning about it. When I couldn’t find any US-based vendors, I was inspired to buy some from the manufacturer and to open a store on eBay and see if I could sell some myself!
Nearly every one of my ideal criteria for a DIY NAS is checked off by this incredibly interesting motherboard. It supports up to 8 drives (2x M.2 and 6x SATA), it fits a small form factor, and its CPU sips power. The only criteria that it does not meet is that the CPU requires a fan. The icing on the cake on the Topton N5105 NAS Motherboard is that it includes four 2.5Gbps network interfaces. For what you’re getting, I believe that the Topton N5105 NAS Motherboard is a fantastic value to use in a DIY NAS build.
The JONSBO N1 has room for a MiniITX motherboard, requires a SFX power supply, has room for up to five 3.5” HDDs, and room for an additional 2.5” HDD. Personally, I’d like to see room for at least one more 3.5” HDD but I’m not deducting points for that. My criteria of six 3.5” HDDs was established back when you were lucky to get a 2TB HDD at $200. In 2023, we’re regularly seeing hard drives five times as big (or bigger) under $200. I believe it might be time to rethink this particular criteria. Unless you’re a serious data hoarder, five drives in 2023 can be more than plenty!
I spent most of 2022 being excited about building a DIY NAS inside of the JONSBO N1, and that anticipation paid off at the end of the year!
For the ECC zealots out there, I agree ECC RAM is a better choice—but that doesn’t mean it is a requirement. I tackled this quite a few years ago when I shared why I chose Non-ECC RAM for my own DIY NAS back in 2012. In the years since, I’ve built up and replaced all of that hardware a couple different times, and I happen to be using ECC RAM today.
However, I stand by what I wrote back in 2014. For the DIY NAS: 2023 Edition, the motherboard, CPU, and RAM added up to just over $350. I’m reasonably confident that an equivalent motherboard, CPU, and ECC RAM would wind up being twice as expensive. Even if you wanted to spend that extra money, I think there’s more value in spending it differently than there is in spending it on ECC RAM.
For the past few years, I’ve divvied the storage devices into two categories: storage for the boot drive and the devices for the storage of your data.
In last year’s DIY NAS build, that line got a bit blurry as I partitioned the SSDs and used a slice of them for the boot device and then used the leftover space as storage for my VMs and containers. While I’m happy with how this has worked out, I’m not necessarily certain if I’d encourage others to do the same. It’s not a supported solution and requires going in and modifying the installation script prior to installing TrueNAS.
I think that the most debatable choice that I made was picking a boot device. In the JONSBO N1 there is room for five 3.5” HDDs and one 2.5” HDD. The Topton N5105 NAS motherboard supports up to 6 SATA devices and two M.2 devices.
Because I like having redundancy on the boot drive, I opted to pick up a pair of 250GB PNY CS1030 NVMe SSDs (specs). 250 GB of capacity is definitely overkill for the capacity, but at around $20, the price was in the right ballpark.
If maximizing data density were my goal, I probably would’ve picked a single SATA SSD like the 240GB Crucial BX500. That would create the possibility of using the motherboard’s two M.2 slots for a pair of NVMe SSDs for some additional storage capacity to the NAS.
For the sake of writing this blog, I pulled out five of my retired 4TB HDDs and loaded them into the DIY NAS: 2023 Edition. These are just excess drives that have been either upgraded or removed because their SMART test results have been suspicious.
It has been a while since I actually bought storage for one of DIY NAS builds. Most of the money spent on a NAS will be spent on hard drives, and the amount of capacity you’ll need depends on how much data you’re hoarding and how quickly you’re adding to it.
If I were building this for my own use, I think I’d be pretty interested in mirrored pairs of higher-capacity drives. I’d leave the fifth drive bay empty and use a spare hard drive to sneakernet large chunks of data between machines. For my needs, hard drive capacity has steadily outpaced how quickly I’m accumulating data. I no longer need half a dozen drives to hold all of my data like I did when I got started.
Motherboard manufacturers have been cutting costs by skimping on things like SATA cables for years. But with the Topton N5105 NAS motherboard, they’ve taken it to a new level!
The motherboard didn’t come with any SATA cables whatsoever. In this scenario, this is actually preferable because the amount of room in the JONSBO N1 case requires that you use right-angle SATA cables.
It is very common for small form factor cases to require a small form factor (SFX) power supply too. Being somebody who’s a big enthusiast for small form factor DIY NAS builds, I understand and accept this reality—but I kind of wish that weren’t the case. I’d gladly trade a bit of case volume for a wider choice of compatible power supplies.
In picking out the power supply, I did some back-of-the-napkin math and attributed about 10–20W to the Celeron N5105 CPU, 5–10W for the each of NVMe SSDs, and up to 25W for each of the five 3.5” HDDs. I probably would have been fine with a 300W power supply, but I opted for the 450W power supply to be safe.
My biggest concern in building the DIY NAS: 2023 Edition was that I’d discover that Linux support of the hardware found on the Topton N5105 NAS motherboard would be lacking.
The Topton N5105 NAS motherboard was enough of a value that I gambled the hardware would be supported by TrueNAS SCALE, and thankfully, the gamble paid off. But had it gone a different direction, I would’ve gladly switched to another NAS appliance like UNRAID, OpenMediaVault, or building a NAS from the ground up using a recent flavor of Linux.
It’d be overly melodramatic to say that I breathed a big sigh of relief after I installed TrueNAS SCALE without any issues and had the NAS up and running, but I was definitely relieved.
Hardware Assembly, BIOS Configuration, and Burn-In
Most years, I include a time-lapse video of the assembly, but I wound up needing surgery to repair a partially torn rotator cuff. It was rather difficult to assemble the DIY NAS: 2023 Edition by itself–there was no way I was going to be able to set up my overhead camera rig!
That being said, assembling the DIY NAS: 2023 Edition was fairly straightforward. Building small form factor computers isn’t easy, but this year’s DIY NAS was easy enough that I managed to do it without aggravating my bad shoulder!
The only changes that I wound up needing to make in the BIOS were changes to the boot order. That’s a really simple change that’s usually straightforward. But the BIOS provided on the Topton N5015 NAS motherboard proved to be a bit more challenging than most other BIOS versions. It wound up taking a little bit of spelunking through the BIOS menus to find the boot order. It wasn’t difficult, but it wasn’t as easy as it should be.
The night before my shoulder surgery, I finished assembling the DIY NAS: 2023 Edition, booted it up for the first time, kicked off Memtest86+, and then promptly forgot all about it as I recovered from my surgery.
Nearly 76 hours later, it’d completed a total of 42 successful passes!
Normally, I’m inclined to do some CPU stress testing. But seeing as how the answer to “the Ultimate Question of Life, the Universe, and Everything” matched the number of successful Memtest86+ passes, I decided that the three days’ worth of running Memtest86+ was sufficient burn-in all by itself.
As I’m writing this blog, the uptime on the DIY NAS: 2023 Edition is over 60 days and would’ve been longer had I not been keeping it up to date with updates to TrueNAS SCALE since I started building it. The machine has been completely stable.
Each year, I like to do a few different benchmarks to validate that the DIY NAS is performing up to my expectations. I’m not particularly interested in tweaking for the absolute best performance; these benchmarks are more a matter of validating that what I built is sound.
The first thing that I benchmark is network performance. The first and most likely bottleneck for a DIY NAS is going to be the network. TrueNAS SCALE includes the iperf3 binaries, so I grabbed the Windows binaries for my desktop PC and directly connected the DIY NAS: 2023 Edition to the unused 2.5gbps interface on my desktop computer. After setting up static IP addresses on each end, I ran iperf3 both as a server and as a client on this year’s DIY NAS. Unsurprisingly, iperf3 was able to fully saturate the 2.5gbps connection between my desktop PC and the NAS.
After that, I skip right to benchmarking throughput to a drive mapped to a Samba share hosted by the DIY NAS: 2023 Edition using CrystalDiskMark. I was pleased to see that the 2.5gbps network connection was pretty much saturated on both sequential reads and writes to the drive I mapped to an SMB share on the DIY NAS: 2023 Edition.
For fun one day, I worked through a series of tasks and noted the peak wattage during each of those tasks. In addition, I captured the average wattage of the NAS being idle for an hour. Here’s a graph of the wattage over the 24-hour period from the beginning of these tasks.
I went through some of the metrics captured in Home Assistant and the peak wattage recorded during each of those tests. I also grabbed the peak and average wattage when the NAS is idle. Lastly, I grabbed some data for a 36-hour period of time–including these tasks–and captured the maximum wattage, average wattage, and total consumption over those 3 days.
S.M.A.R.T. Long Test
Note: The ZFS scrub was comically fast because the pool was empty. I don’t believe that what I’ve captured here is a quality measurement; please take it with a grain of salt!
Lastly, I wanted to share just how much less power the DIY NAS: 2023 Edition is using compared to my own desktop computer (Animal), my own TrueNAS SCALE machine and my homelab machine (Deskmeat). So I charted out the power consumption of the 24 hours following the beginning of these tasks.
What Does Brian think of the DIY NAS: 2023 Edition?
It does not matter. Regardless of how much effort I put into parts or how carefully I work to assemble the DIY NAS, there’s always something that I believe can be improved with every DIY NAS that I build. The DIY NAS: 2023 Edition is no exception.
It is pretty much maxed out. The CPU is integrated, so you’re not upgrading it. There are no PCI-e slots for expansion on the motherboard, so you’re never adding a GPU, a 10GbE NIC, or a HBA for additional SATA ports. Pretty much the only viable upgrade option would be to upgrade from 32GB of RAM to 64GB of RAM.
It is a tiny bit noisy. The DIY NAS: 2023 Edition has sat right next to my current DIY NAS for over a month now, and with 2 fewer drives and way less utilization, it’s still the noisier of the two machines. However, it never approached the threshold where I thought it was noisy enough that I wanted to do something about it. Regardless, this felt like something I should mention.
Of these complaints, the first one is the most worrisome. Upgrades aren’t actually impossible, but if you’re wanting more CPU, or PCI-e slots for other components, then you’ll need to shop for a new motherboard. The other two weaknesses seem a bit nitpicky.
Saturates the 2.5 gigabit network. This wasn’t that surprising. I expected that it should saturate the 2.5 gigabit network. But given that 2.5Gbit interfaces are becoming more common and the price-per-port on switches has dropped to around $20, it was very encouraging.
The DIY NAS: 2023 Edition is inexpensive and carries a lot of value. At under $630 the entire build is less expensive than last year’s motherboard alone. A sub-$1,000 DIY NAS build is entirely possible witha pair of 10 TB NAS HDDs.
The cost of the four prior DIY NAS builds without any storage was $1565 in 2022, $1728 in 2020, $1379 in 2019, and $1890 in 2017. At $630, the cost of the DIY NAS: 2023 Edition is between 33% and 46% of the cost of those systems!
Each year, I strive to put together something with a quality price-to-performance ratio, and I think the DIY NAS: 2023 Edition really hits that mark. I think it could easily be argued that this year’s build is one of the best in terms of its value.
Let me know what you think!
It should go without saying that I’m impressed by the DIY NAS: 2023 Edition, but what do you all think? If you’re interested in building your own DIY NAS, does the DIY NAS: 2023 Edition seem like something you would want to build? Has the DIY NAS: 2023 Edition sparked your curiosity and inspired you to build a unique DIY NAS of your own? Let me know in the comments or come tell us about it in the #diynas-and-homelab channel in The Butter, What?! Discord server.
As I have more than 10 times in the past, I’m giving away the DIY NAS: 2023 Edition and a $100 giftcard for some TrueNAS schwag! The team at iXsystems deserves a shoutout for sponsoring the giveaway and spicing it up! In prior years, this was a luck-of-the-draw raffle, but I’m changing things up this year.
For this year’s giveaway, I’m tasking entrants with answering this question:
If you won the DIY NAS: 2023 Edition, what would you do with it? What sort of problems would it solve for you?
Share your answer somewhere publicly accessible on the Internet: in a blog, a Tweet, post it to Mastodon, talk about in on TikTok, vlog about it on YouTube, live stream it on Twitch, etc. Then submit your entry by filling out the DIY NAS: 2023 Edition giveaway form.
As the giveaway runs its course, I’ll be consuming each entry, promoting everyone’s entries on social media, and eventually picking a winner. The winning entry will find a way to set itself apart from the others. The creativity and quality of the entry will be critical! Please keep that in mind when choosing the platform and crafting your entry.
As an example, it’s hard to imagine that a Tweet that says “To store files!” could be more compelling than a YouTube video from a dog rescue group that needs more capacity for videos that they create to help abandoned dogs find their forever homes.
Each year, I like to write a blog—and hopefully build—two different NAS builds for two different budget points. Firstly, a powerful, small, form factor NAS that would meet all of my storage and other homelab needs. And secondly, the EconoNAS: a budget-friendly NAS build that outperforms off-the-shelf NAS products.
The EconoNAS has always intended to act as a template for other budget-friendly DIY NAS builders, which is more capable and has a more attractive price tag than the off-the-shelf NAS products.
Building a budget-friendly NAS in this economy is a challenge!
At several points in 2022, I’ve said to myself “I’m going pick out parts for the DIY NAS: EconoNAS 2022!” I started shopping online, compared it to the previous EconoNAS, became disappointed, and decided to set the entire build aside to work on a later day.
A number of factors exist today that continue to make an EconoNAS difficult to come up with. Corporate greed, inflation, a lack of new product offerings from Intel/AMD, supply chain disruptions, and the lingering impacts of COVID-19 have all worked against the concept of building an economical NAS which is unique from the prior year.
Each and every time I worked on picking out parts, I realized I was basically just rebuilding the DIY NAS: EconoNAS 2020 over and over again.
The last EconoNAS was one of my favorite NAS builds, but it was not perfect! My biggest complaint about the DIY NAS: EconoNAS 2020 was its price tag. Since publishing it 18 months ago, many of the components’ prices have steadily climbed to the point where I feel it at the border of no longer being economical.
The DIY NAS: EconoNAS 2020 might have been expensive, but it was quite capable. It was hands down the most capable EconoNAS that I have ever come up with. Even though it is quite expensive, its capability makes it a really good value.
Ultimately, I decided to take last year’s EconoNAS and reimagine it by focusing on making it as economical as possible.
Disclaimer: Just like last year, I did not actually build this myself. I’ve done everything else in my power to crosscheck the compatibility of these parts. If I were building an additional NAS, I would not hesitate to buy all of these parts myself. Hopefully somebody can share their experience building something similar down in the comments below!
Motherboard and CPU
Since the Athlon 3000G’s initial release, AMD has yet to release another AM4 CPU which seems equally (or better) suited for an economical NAS build. I was a little disappointed that AMD’s latest CPU release did not include a comparable inexpensive dual core and four thread CPU with a reasonably low thermal design power (TDP).
If I didn’t change the CPU, then why change the motherboard? The only reason I could think of for changing the motherboard would be if there was a significant price difference.
The product listing for the Gigabyte Aorus M (specs) has hovered right around $100—right near where its price sat at the end of 2020. As I worked on this blog, I saw the price go down as low as $79.99. Combined with its price, this motherboard’s specifications still make it ideal for the EconoNAS:
6x SATA 6Gbps connections
Up to 128GB of DDR4 RAM
Potential support for a vast range of CPUs (Note:Newer CPUs require an updated BIOS. See the supported CPU page for details.)
3x PCI-e slots
1x PCI-e x16 running at x16
1x PCI-e x16 running at x4
1x M.2 slot
In the previous EconoNAS build, I chose to get 32GB of DDR4 RAM. This choice was quite extravagant for a budget-friendly build. The focus for this year’s EconoNAS is budget, so I decided to trim the amount of memory.
At first, I was tempted to go with 8GB of RAM because that’s more than enough to meet the minimum requirements of the TrueNAS products, OpenMediaVault, and UNRAID alike. However, more RAM in a NAS is beneficial enough that picking a 16GB kit (2x8GB) of Crucial DDR4 2666MHz RAM (specs) seemed like a good value.
Operating System Drive
When it comes to being economical, picking out a boot drive can be especially difficult. Especially when many NAS products use the entire boot drive’s capacity. Higher-capacity NVMe and 2.5” SATA SSDs are the best value (dollars per GB), but much of that potential value is wasted if the entire drive is consumed by the NAS distribution. There are many viable options; here are my two favorites:
Buy an inexpensive (~$20) SSD without much capacity and use 100% of it for the boot device.
Spend a few dollars more ($30-$50) to buy a much larger SSD (ex: 512Gb NVMe SSD for $40 or 1TB NVMe SSD for $77). Then split the NVMe into partitions, use one of the partitions for the OS drive, and use the remaining capacity for your own purposes.
The second option is a bit more complicated and often not recommended (or supported) by the NAS products. So for this year’s EconoNAS, I opted to go with the first option and selected a 16GB Intel Optane NVMe SSD (specs). At a little over $1/Gb it is not a tremendous value, but the capacity is sufficient for its purpose, it is relatively inexpensive, is high performance, it frees up a SATA port, and frees up a drive bay.
Update!Thanks to an eagle-eyed reader pointing it out, I’m realizing that I overlooked the fact that the Gigabyte Aorus M motherboard manual clearly states that using an NVMe drive will prevent you from using 2-3 of the SATA ports. An inexpensive SATA SSD like the Kingston 240GB A400 is probably a much better idea for the boot drive!
Case and Power Supply
As far as value goes, it’s hard to beat the case used in last year’s EconoNAS, the Fractal Design Node 804. It is a fantastic case and at the time it was selling for a fantastic price. To save some money in this year’s EconoNAS, I opted to go with the Antec VSK3000 Elite (specs), which is almost half the price of the last EconoNAS’s case.
With an inexpensive 5.25” to 3.5” drive adapter you can fit up to five 3.5-inch hard drives, a Micro-ATX (or Mini-ITX) motherboard, and an ATX power supply in this case. It’s a fairly small-ish form factor case from a reputable brand which helps make it ideal for this budget-friendly DIY NAS build.
For the power supply, I searched around a bit for an inexpensive 80 Plus-certified power supply that seemed to be well reviewed and found the Enermax Cyberbron 500W (specs). 500W should be an ample amount of power to supply to the CPU, up to five 3.5” HDDs, and the rest of the components in the parts list.
The particulars of storage are really quite specific to the needs of the DIY NAS builder. As a result, I haven’t been including storage drives in my build suggestions. I do have a couple suggestions which I think will help you in choosing your storage media:
How much data do you want to store on your NAS?
At what rate is your storage growing?
How difficult would it be to replace what you plan to store on your NAS?
The answers to these questions should help point you toward the total capacity of your NAS, the level of hardware redundancy you’ll want to have within your NAS, and hopefully help you realize that you’ll likely need a way to potentially back up the contents of your NAS if you really care about your data.
All that being said, here are few decent deals on hard drives that could go well with the DIY NAS: EconoNAS 2022:
If you’re looking for HDD deals, you can join the #deals channel in the Butter, What?! Discord server. I and others regularly share good deals in this channel that we find elsewhere.
Another change I’d make in the 2022 EconoNAS is to change which TrueNAS product is in use. For this build, I would highly recommend TrueNAS SCALE. There’s a lot of reasons to like TrueNAS SCALE, but above all others I think that the fact that TrueNAS SCALE is built atop Debian makes it ideal for an Economical NAS build. The hardware support for consumer-grade hardware is much better in Debian that it would be under FreeBSD (used by TrueNAS CORE).
TrueNAS CORE and TrueNAS SCALE have been pretty comparable for my own use. However, I think it is worth pointing out that with regards to file sharing, others (and I) have found that TrueNAS CORE outperforms TrueNAS SCALE in benchmarks. With regards to actual real-world use, I have not noticed this performance at all on my own DIY NAS running TrueNAS SCALE.
All that being said, I fully expect that TrueNAS SCALE is more than capable of saturating the gigabit network interface found on the motherboard.
What does Brian think of this 2022’s EconoNAS?
At its roots, the DIY NAS: EconoNAS 2022 started out as a carbon copy of the last EconoNAS. This time around, I put an emphasis on shaving dollars off the price tag. I’m a tiny bit disappointed that I ended up recycling old material and I’m also a bit disappointed that this EconoNAS can only accommodate five 3.5” hard drives.
Everything that I was excited about for the prior EconoNAS is still valid. Thanks to the AM4 socket and an up-to-date BIOS, there’s a ton of room for CPU upgrades. The two empty DIMM slots mean that RAM upgrades are possible too. The empty PCI-e slots mean that a 10Gb NIC, an HBA to support more HDDs, and potentially a GPU could be added to make this economical NAS even more powerful.
Most importantly, I’m excited that I managed to shave more than $275 (41%) off the price of the prior EconoNAS. My goal with every EconoNAS is to build something—storage included—that is $500 or less. You could buy three refurbished 4TB HGST enterprise drives with the $125 left over. A 4TB-12TB, 5-bay NAS, with lots of room for future upgrades for under $500 seems like a great deal to me.
I always worry that I might be a bit biased, so I spent a couple hours digging around the Internet looking at off-the-shelf NAS products. I searched for NAS machines with 5 drive bays and also for NAS products that are less than $400. Here’s what I found:
The 5-bay NAS products that I found were all considerably more expensive than this EconoNAS. But many of them also included premium features like 10GbE or 2.5GbE network interfaces. Considering how easy it is to build an inexpensive 10GbE network, I don’t think those features justify their hefty price premiums. The majority of these more expensive NAS machines also failed to measure up to the AMD Athlon 3000G and 16GB of DDR4 RAM in the EconoNAS. Comparing this EconoNAS build to the products that were a similar price ($300—400) wasn’t even a fair fight. All of these machines had four (or fewer) drive bays, meager CPUs, and a fraction of the RAM.
In my opinion, off-the-shelf NAS machines’ only two benefits not accounted for in the EconoNAS are product support and hot-swap drive bays. As infrequently as you’ll need to swap HDDs, I think this a NAS’s most overrated feature. I think there’s definitely value in having a product support team to contact if you have questions, but that value diminishes pretty quickly if you’re willing to type the same question you’d ask into Google and read through the results that come back.
What do YOU think of the DIY NAS: EconoNAS 2022?
But enough of what I think! How much would you expect to be charged for a NAS with the following specifications?
AMD Athlon 3000G CPU
16GB DDR4 2666MHz RAM
5x 3.5” Drive Bays
Intel 16GB Optane M10 NVMe SSD
Loads of upgrade options
If you were building it yourself, what improvement would you want to make on the DIY NAS: EconoNAS 2022? A bigger case? A more powerful CPU? What about more RAM? The biggest advantage of a DIY solution is that you get to make these decisions on your own rather than let a company make that decision for you.
But the Aufero Laser 2 wasn’t the only thing included in the package for me to review! Next to the laser engraver was the Ortur YRR 2.0 Rotary Roller. The rotary tool was so interesting to me, I felt it needed its own blog!
Ortur Black Friday Deals!
Aufero Laser 2 for $169.99 to $469.99 (Use coupon code: Aufero for an extra $30.00 off.)
A rotary tool is an accessory to be used with a laser engraver. The accessory is comprised of a pair of rollers. This rotary tool is plugged into the laser engraver’s motherboard in place of the Y-axis stepper motors.
As the laser engraver sends commands to move the Y-axis, the rotary tool’s wheels spin and rotate your material while the laser moves back and forth the X-axis and engraves the material.
It takes some configuration and tweaking in the laser engraving software (LightBurn or LaserGRBL), but once that setup is done, the rotary tool enables users to engrave cylindrical objects like mugs, glasses, tumblers, baseball bats, etc.
The Ortur YRR 2.0 Rotary Roller comes in a kit that comes completely disassembled. Assembling that kit is fairly straightforward thanks to the documentation, Ortur’s assembly video, and other various guides shared by content creators on the Internet.
I assembled the entire thing after breakfast one Saturday morning. The assembly was complete before I had finished my morning cup of coffee.
Configuration and Use
While assembling the Ortur YRR 2.0 Rotary Roller seems to be well-documented, hooking it up to your laser engraver, configuring your laser engraving software, and the positioning of the rotary tool aren’t part of what’s covered in any documentation from Ortur. This is my only complaint about the Ortur YRR 2.0.
Considering that both the laser engraver and the rotary tool are made by the same company, I expected that there would be a myriad of directions for using the Ortur YRR 2.0 with all of Ortur’s different laser engraving products. I was a tiny bit disappointed when I realized this, but in retrospect I’m a bit glad these directions weren’t included! I enjoyed tinkering with the engraver and gradually coming to an understanding of how it works.
I enjoy when my interests overlap. I especially enjoy when they happen as blog topics. For example, 3D-printing parts for my quadcopters, using home automation to monitor my 3D printing, and most recently 3D-printing parts to use with my laser engraver as part of this blog!
Relocating the built-in roller guide to accommodate longer material.
Raising the entire laser engraver up above the Ortur YRR 2.0 and the material being engraved.
I was able to conquer both of these challenges with my 3D printer; I even designed one of the solutions myself.
Firstly, I used these awesome Lego-like risers by Enduro512 on Printables.com. There were a variety of heights for the risers which make adjusting for different diameters of material a breeze. Secondly, I wound up 3D-designing a base that the Ortur YRR 2.0’s roller guide can attach to. This way the roller guide could be placed independently of the Ortur YRR 2.0 and support a much longer piece of material.
Here's some behind-the-scenes content for my next #laser#engraving content. I put my #3Ddesign skills and #3dprinter to use to keep this baseball bat level before I try and engrave it.
Want to buy the Ortur YRR 2.0 Rotary Roller but you’re a little wary by the lack of documentation on configuring your software and using the YRR 2.0 for the first time? Don’t be. There’s information out there that fills this gap, and if you’re willing to tinker, then it’s not that difficult to get set up without that documentation.
I tinkered and muddled my way through getting the Ortur YRR 2.0 working and thought I’d share a few tips that I think might be helpful for you too:
Have a bunch of material to practice on. I bought a couple closet rods at the nearby big box hardware store and then cut it down to quite a few different 6” pieces.
Complement these tips with others’ content, experiment with the Ortur YRR 2.0, and you will be well on your way to understanding how to get it to work best for you!
What’s Brian think about the Ortur YRR 2.0 Rotary Roller?
While I would’ve liked if there had been a bit more documentation to help me get started, I also enjoyed the extra tinkering with the Ortur YRR 2.0 that I needed to do in order to get it working. I wound up investing some of my raw material and time in the process, but I’m pretty happy with the returns from that investment.
Having an Ortur YRR 2.0 enables you to engrave an entirely different shape of material. It accomplishes this fairly inexpensively, without a tremendous amount of effort to assemble or effort dialing it in. I do not have a tremendous amount of experience with laser engraving, but I had it working fairly quickly.
If you own a laser engraver and you think it’d be fun to engrave mugs, drinking glasses, baseball bats, tumblers, stemware, etc., then I would encourage you to strongly consider the Ortur YRR 2.0 Rotary Roller!
Between the two of us, we have a decent collection of machinery that we can use for different methods of fabrication. For a long time, I’ve been wondering what I might buy next (other than my Prusa XL 3D-printer, of course). I had narrowed down my most likely choices, and it has been a coin flip between my own CNC machine and some sort of laser cutter.
Ortur Black Friday Deals!
Aufero Laser 2 for $169.99 to $469.99 (Use coupon code: Aufero for an extra $30.00 off.)
The only thing that’s held me back from making this purchase is its cost. Both in the shape of the impact to my bank balance and the investment of my time learning to use each machine. A machine the size I’d want to work with the materials I want to work with is going to be expensive, and I have little to no expertise with either kind of machine.
So when I was contacted and asked if I wanted to review the Ortur Aufero Laser 2, I saw it as an excellent opportunity to try and answer this question once and for all!
Several years ago, I reviewed a very inexpensive laser engraver, the NEJE DK-8-KZ. It was fun to review, but it wasn’t very capable. Its limitations prevented me from incorporating it into any of my making. Skimming through its specifications, I realized that the Aufero Laser 2 was much, much, much more capable than what I had used in the past:
Workable area: 390mm × 390mm
Laser: 4500—5500mw Short Focus Laser Module (LU2-4-SF)
Speed: 0—10,000 mm/min
Cuttable materials: Plywood, pine board, paperboard, black acrylic, leather, felt cloth, etc…
On paper, I thought that the Aufero Laser 2 seemed quite capable without breaking the bank!
Before agreeing to review the Aufero Laser 2, I was curious about what was in the box. I was also curious about how challenging it would be to assemble it and to learn how to use it. As part of my preparation, I went spelunking through the first page of Google results and found myself encouraged by the fact that nearly each search result said that the laser engraver was easy to assemble. But given my level of competence, would I think it was easy to assemble too?
The assembly of the Aufero Laser 2was exactly as I expected: incredibly simple. There were a handful of bolts, two at each corner of the frame’s four corners, and a pair of bolts (and washers) on each side of the engraver’s X-axis. The laser module’s installation was incredibly straightforward. A few power cables needed to be plugged in to the laser module and each of the stepper motors. Finally there was a tiny bit of cable management that needed to happen.
The assembly did not take much time, and I was ultimately successful, but not without a couple relatively minor problems.
Laser Module ground cable: The laser module power cable’s ground is held in place by one of the four screws that go through the laser module’s plastic lid and down into the module’s metal body. The problem being that there’s a tiny countersink in the lid so that the screw sits flush. After trying to tighten that screw all the way back down so it sat flush, I noticed that the ground was being deformed and coming loose as I tightened it more and more. However, that screw is quite long, and I quickly realized that I would not need to tighten that until it was flush for it to properly perform its function. I backed the screw out, straightened out the ground connector, and then screwed it in tightly enough that it held place, but not so tight that the ground connector deformed again.
Short X-Axis Bolts: The four bolts that attach the X-Axis to the frame seemed quite short. I had a very difficult time getting the included M5 nuts to bite down on those bolts with the included wrench. A difficult enough time that I am pretty certain that I stripped the threading on two of the nuts. Thankfully, these M5 nuts are the same size as what I use to hold the propellers on my 5-inch quadcopters. I have a collection of spare colorful aluminum M5 nuts and decided use four of those rather than the M5 nuts provided in the kit.
As you can see from this time-lapse video, I spent the largest amount of time struggling with the bolts on the X-axis. I invested that time because I was interested in being thorough in this review. For others buying the Aufero Laser 2, I’d recommend using a proper 8mm driver to try and avoid the issues I ran into by stripping those M5 nuts.
I was a tiny bit concerned about cutting through the cardboard and into my table below it, so I set the laser engraver atop another layer of cardboard. I didn’t secure the piece I was cutting very well, and the laser module’s shield moved my cardboard piece a bit. The power setting also wound up being a bit conservative. It definitely engraved into the cardboard, but so faintly that you could only make out the text at certain angles.
My second engraving job was a bit bolder. I decided that I wanted to engrave my site’s logo into the cardboard but then to also cut that around the logo out of the cardboard entirely.
IIt took me a couple attempts to accomplish this well. On the first attempt, I left the laser power at the same setting for the engraving and so it was very difficult to see my logo again. However, the power of the cut was nearly perfect. It cut straight through the cardboard and even scorched the second layer of cardboard that I had beneath it.
My second attempt at engraving my face into the cardboard and then cutting around it was even better. The laser was moving fast enough and set a low enough power that it engraved—but did not burn—the top layer of the cardboard box.
While the result was still on the faint side, I was still rather impressed with how it had turned out. I had expected that cardboard would char quickly and that my attempts would all turn out quite well done. I was super impressed that the top layer(s) of the cardboard were removed but nothing was charred by the laser.
As soon as I agreed to review the Aufero Laser 2, I started brainstorming things to try and create as part of this blog. A long time ago, I had a laminated QR code with an NFC tag that had our house’s WiFi credentials in it. When guests visited, we could just hand them that card and they could join our WiFi access point. I decided that I wanted to engrave something similar into wood.
I’m really impressed with the Ortur Aufero Laser 2. Before this review, I was interested in buying a laser cutter but I had no idea what I was doing. I was especially a bit worried about the cost, as powerful laser cutters get expensive very quickly.
Before being made aware of it, I was mostly oblivious and unaware of laser engravers like the Ortur Aufero Laser 2 existed. If I had known about it sooner, I’m pretty certain that I would already own one. Especially knowing exactly how much it can do.
Using the Aufero Laser 2 has me very interested in buying an even bigger laser some day down the road. When—or if—that day comes, I am confident that buying the bigger laser will not replace the Ortur Aufero Laser 2.
But watt wait, there’s more!
The Ortur Aufero Laser 2 was not the only thing that was sent to me. I was also sent the Ortur YRR 2.0 Rotary Roller for cylinder engraving. Once I finish this blog and tidy up my studio, I’m going to get busy using the rotary roller, thinking of ideas to put it to use, and reviewing it too!
In my case, I have several ESPresense base stations in different rooms that are tracking my Apple Watch SE and reporting the watch’s location back to Home Assistant as I move around the house.
ESPresense was the final piece of the puzzle that I needed to fully automate the lights and ceiling fan in my office. Since setting it up a few months ago, I rarely—if ever—have needed to use either switch.
Flashing the ESP32 development board with ESPresense.
Configuring and deploying ESPresense Base Stations.
I am going to try and remove obstacles!
My experience with ESPresense has been so positive that I wanted to try and provide a shortcut around as many of these minor obstacles as I can for other Home Automation enthusiasts.
No 3D printer? No problem!
A few people have contacted me asking about how they can buy a 3D-printed case for their ESPresense Development boards. I encouraged them to see if there’s a 3D-printer at a nearby makerspace or library that they can use.
But that advice might not be very helpful. Learning the workflow of 3D printing and then successfully 3D printing requires an investment of time. Places that do on-demand 3D printing could be an option here, but they’re usually pretty expensive.
Unit price for the ESP32 D1 Mini cases is $3.00 when ordering 5 or more.
This friction-fit case snaps together around the ESP32 D1 Mini. There are two holes in the case so that you can see the ESP32 D1 Mini’s LED and to access the reset button. There are seven different styles for both the top and bottom sides of the case: solid, horizontal bars, vertical bars, diagonal bars, ESP32, Bluetooth logo, and WiFi logo.
Let me start off by saying this: It is not difficult at all to flash ESPresense to an ESP32 development board! As part of writing my first ESPresense blog, I probably flashed and re-flashed different ESP32 development boards 20+ times as I tinkered with the project. I absolutely never ran into any difficulties.
That being said, I’ve bricked my fair share of different devices with seemingly innocuous firmware updates. I’ve also accidentally bought the wrong hardware for small electronics projects like ESPresense too. If you’re worried about buying the hardware and flashing it with ESPresense, then consider buying one of my ESPresense Base Stations. Each base station includes:
An ESP32 D1 Mini pre-flashed with the latest ESPresense release.
Like I did with the ESP32 D1 Mini cases, I am selling the ESPresense Base Stations on Tindie. I am hopeful people will find some value in being able to skip having to be concerned about sourcing the hardware and flashing ESPresense on their own.
Unit price for the ESPresense Base Stations is $12.00 when ordering 5 or more.
I’m pretty curious about branching out! In the home automation for the lights in my office, I have a separate motion sensor that I use to turn on the lights and my ESPresense node to keep the lights on until just after I leave the room.
There are empty pins on the ESP32 D1 Mini and ESPresense supports: PIR motion, radar motion, temperature, ambient light, weather, and weight sensors. For other rooms in my house, I’d love to add a motion sensor to my ESPresense Base Stations and combine those two functions into a single piece of hardware. It’d be especially fun if that meant I got to 3D-design a new case to accommodate additional sensor types.
Ever since first installing up Home Assistant, I’ve been wanting to automate turning on my ceiling fan. I very easily threw together this Node-RED flow. On each update of the temperature from office’s Zooz 4-in-1 sensor, it will use the temperature to decide whether to turn the fan on or turn it off.
There’s a shortcoming with this flow, though. Turning on a fan doesn’t lower the temperature in the room, it only makes it feel cooler thanks to the evaporative effect of air moving over your skin. The only time this automation would be beneficial was if someone (me) was already in the room.
Room-Specific Presence Detection in Home Assistant
But my phone doesn’t necessarily know what room I’m in. I don’t think the GPS is accurate enough, and I definitely don’t want to try and figure out the GPS coordinates for the boundaries of each of the rooms in my house. This is problematic, but even more problematic is the fact that my phone isn’t always near me. I routinely leave my phone in other rooms as I nomadically wander around my house during the day.
I was in need of an easier—and better—method to implement room-specific presence detection inside Home Assistant.
What is ESPresense? On their website, they say it’s “An ESP32 based presence detection node for use with the Home Assistant mqtt_room component for localized device presence detection.”
ESPresense accomplishes its goal by providing an interface to easily flash their firmware onto an ESP32 development board, which enables the ESP32 board to monitor nearby Bluetooth low-energy devices. Scatter a few of those ESP32 devices across your house and set up the Bluetooth device(s) in Home Assistant you want to track and you’re ready to unlock the room presence achievement!
I have two Bluetooth devices that are pretty much attached to me all the time: my Apple Watch SE and my Medtronic 770G Insulin Pump. Of those two devices, I figured the watch was the better device to use ESPresense to track.
Altogether, I wound up spending $60 and some time on my 3D printer to add Bluetooth tracking to 5 different rooms in my house. I definitely could’ve done it cheaper too. I didn’t really need all the USB power adapters or cables, as I probably have plenty of both stashed somewhere in the house.
Flashing ESPresense onto my ESP32 boards was a snap from their Install page. Their website allows you to flash the ESP32 with the latest version of ESPresense from right inside the browser and to open a serial terminal connection to the ESP32 after it is done flashing.
For the most part, everything went as smoothly as I expected from the documentation. I thought I’d share a few things that I encountered along the way that might have made it even smoother.
Bluetooth Chatter: I have a lot of Bluetooth devices in my office: my insulin pump, watch, phone, work laptop, personal laptop, smart speaker, etc.. Figuring out the Bluetooth details to create the sensor in Home Assistant wound up being a bit of a challenge. I used a couple different methods to try and sort that out.
MQTT Explorer, connected to my MQTT server on Home Assistant, and monitored the espresense\devices topic.
Took my laptop, watch, and an ESP32 board to a room with no BLE devices and used the ESPresense Terminal to determine the Bluetooth IDs
Bluetooth Scanner Apps were recommended a couple different places, and I expected them to be helpful. But I didn’t exactly find them to be especially useful—but everyone’s mileage may vary!
ESPresense’s very active development and automatic updates: By default, the auto-update feature is enabled on the ESPresense base station. It is also a very active project on GitHub. The combination of these two factors might occasionally work against you. On the day I was setting everything up for the first time, a release happened that caused my ESP32s to repeatedly crash and be quite unreliable. I wound up disabling the auto-update and using the ESPHome-Flasher to flash an earlier, more stable, version.
Each base station required calibration: This should be expected—especially in areas of the house where there were base stations near each other. I had to fine-tune each base station’s Maximum Distance to Report (in meters). It’s good to point out that this is an approximation based on the Bluetooth signals RSSI (Received Signal Strength Indicator). I ended up using Home Assistant’s developer tools to monitor the state and attributes of the sensor I created while I walked around each room.
When it was all said and done, I had ESPresense base stations in my office, the master bedroom, the living room, and our dining room.
What about that Ceiling Fan Automation?
Incorporating presence condition into the automation was a snap! I wound up adding a node to that flow to check which room ESPresense detected my watch was in. In order for the fan to get turned on in my office, two conditions would now need to be met: the temperature would need to be over 75 degrees and my watch would need to be nearest to the ESPresense base station in my office.
We had a rather warm day last week, and the automation worked great. I was working on writing this blog and noticed that the fan turned on. As the day progressed, I wandered in and out of my office to do other tasks. It was awesome to see that the ceiling fan was on when I was in the office—but off when I was somewhere else.
I enjoyed implementing ESPresense enough that I went ahead and ordered another 5-pack of the D1 Mini ESP32 boards. I don’t necessarily need them, but I like the idea that we could have ESPresense base stations in every room in our house. Adding presence detection in Home Assistant for about $12 per room is a tremendous value!
Reliable room-based presence detection is going to open the door for creating better automation that hasn’t been available to me before:
Motion detection and room presence to turn the lights on in my office, keep them on, and turn them off shortly after I leave the office.
Create new automation to automatically turn off the lights in my office when it’s empty
Using my iPhone’s charging status and room presence in the bedroom to deduce whether I’m in bed.
Personalize automations for other members of the household.
What other kinds of ideas am I overlooking? If you had presence detection enabled in your smart home, what kind of Bluetooth devices would you use for presence detection? What kind of tasks would you automate using presence detection? I’d love to hear what you think; share your ideas in the comments below!
About two months ago, I was putting the finishing touches on assembling and burning in the DIY NAS: 2022 Edition. Since then, I’ve been working on a couple tasks:
Build some confidence in the hardware that I purchased.
Establish some confidence in the two latest TrueNAS SCALE release candidates.
From the beginning, my plan was to create a fresh install of TrueNAS SCALE, export my 7-drive pool from my old NAS, import it into the DIY NAS: 2022 Edition, and rebuild everything from scratch. In addition to that, I also wanted to move my virtual machines from my Homelab server onto this new DIY NAS.
Since building it, the DIY NAS: 2022 Edition has been stable. However, I’ve had one hiccup. I experienced a single read error on two different hard drives one night (2 read errors total). One of those errors pushed the total error count of one of the two hard disk drives past a threshold, and ZFS kicked the drive out of the pool.
Out of an abundance of caution, I ran long SMART tests on both drives, examined the SMART data, and felt confident that I would be able to put the supposed degraded drive back into the array. After the resilvering was complete, I ran another set of long SMART tests on both drives, and haven’t had any issues since.
In the couple weeks since they occurred, I haven’t seen anything like it since, and I’ve been using my NAS pretty heavily since then. I’m not at all concerned about these errors. I often use my blog as a personal reference, so I’m noting them here for when—or if—they occur again.
Above everything else, I needed TrueNAS SCALE to be able to replicate all of the features of TrueNAS CORE that I rely on. In the event that I couldn’t get SCALE to do this, I was not going to make any compromises and I planned to revert back to CORE immediately.
It took me a handful of hours spread over a few days to recreate all of this from scratch on the DIY NAS: 2022 Edition. Setting everything from scratch was effortless, thanks to the SCALE UI. The folks at iXsystems have done a commendable job at making the management interface consistent between SCALE and CORE that rebuilding my NAS from scratch was a straightforward task.
TrueNAS SCALE quickly demonstrated to me that it was up to the task to meet all of the needs that FreeNAS and TrueNAS CORE have done so well since building my very first DIY NAS.
I was not able to consolidate all of my Virtual Machines onto TrueNAS SCALE
Between my Homelab and TrueNAS CORE machines, I had a few Virtual Machines: a Tailscale VM that I used as a Relay Node, Plex, and my Home Assistant virtual machine. I chose to deprecate the Tailscale Relay Node VM. I installed the “official” Plex app, I had some misadventures with the Nextcloud “apps” (more on that later), and ultimately wound up creating a new Nextcloud Virtual Machine to run on the DIY NAS: 2022 Edition.
After all of that, the only thing left running on my Homelab machine was my Home Assistant VM. I have a lot of Zwave home-automation devices which are controlled by a Zooz S2 USB stick (ZST10 700). On my Homelab machine, I’ve been passing through this single USB device to the Home Assistant virtual machine. But when it came time to do the same under SCALE, I learned it was going to be a bit trickier.
Currently, you cannot pass through an individual USB device using the SCALE interface. You can do it from the command-line, but anything you do at the command-line will get wiped out the next time the virtual machine restarts. The supported workaround is you need to pass through the entire USB controller to that virtual machine. Technically, I could potentially make this work but I’m currently unwilling to implement it. Redirecting the entire USB controller doesn’t seem like a very good solution. I’m fairly certain that other USB devices (keyboard, mouse, my UPS, etc.) that I wanted to plug into my NAS would get redirected to a virtual machine.
For the time being, I’m giving up my hope of decommissioning my Homelab server. I will continue to use it to host virtual machines that TrueNAS SCALE can’t support until SCALE resolves these requests. From the speculation I’ve read, it’ll be quite a few months before SCALE will support passthrough of an individual USB device to a virtual machine.
I installed two official apps from the TrueNAS SCALE catalog; Plex and Nextcloud. As I mentioned previously, Plex was up and running without any issues in mere moments. The official Nextcloud app was a bit different.
Because my apps and VMs are being installed to an SSD mirror, I needed to use the Nextcloud option to use an external data source (a dataset on my 7x drive array). But anytime I picked the options to use an external storage location, the file-permissions inside the Nextcloud folder wound up being incorrect. It took a little bit of tinkering inside the container to change the file permissions for both the Nextcloud directories as well as my external data in order to get it working.
Because I worried that any future updates of the Nextcloud app would mean I’d need to be updating those permissions, out of curiosity, I thought that I’d try the Nextcloud app from a different catalog: TrueCharts.
Regardless of the state of the documentation, I was able to get their Nextcloud app functional on my NAS using my external storage. However, what I really wanted to do was share my Nextcloud app with friends and family using Tailscale, and that wasn’t working for me. I never thought this was TrueCharts’s fault, but I lacked the expertise to get to the bottom of it on my own, and I was going to need some help.
I’ve been a member of the TrueNAS Discord server for a while before installing SCALE. I was curious about listening in on what people had to share about SCALE. I was especially curious to hear about what people were doing with “apps” under SCALE. One of the recurring themes was users who were frustrated with how TrueCharts’s Discord server was being moderated. I mostly chalked it up to people being frustrated, but the repeating pattern was troubling.
When I ran into issues with TrueCharts’s Nextcloud app not listening on my NAS’s Tailscale IP address, I experienced this firsthand. Aware of the emphasis on following rules, I read through everything that I could, scoured each channel’s pinned posts, and searched all the past threads before creating my own support thread. Within a few moments, I was told what I was doing was hacky, unsupported, my support thread was archived, and I was told to go ask my question in a different “experts” channel. I quickly found that I lacked the ability to even post in the experts channel, so I messaged the moderator who gave me those directions. Their response was to scold me for using direct messages. Without any other options, I decided to delete the TrueCharts Nextcloud app and leave their Discord server.
A week or so later, I got a chance to privately discuss this experience with a different moderator of the TrueCharts Discord. It was a pleasant conversation, and I appreciate their admission that it was handled poorly and must have been either a bug or a mistake.
My experience with TrueCharts sapped any interest that I had in their app catalog. Even worse, it had a negative impact on my opinion of TrueNAS SCALE. I hope that the TrueCharts community matures, grows, and evolves to the point where experiences like mine are rare. However, that journey is just beginning for TrueCharts. Until they complete that journey, I’d recommend exploring all other possible options before relying on anything from the TrueCharts app catalog.
Things seem to break in TrueNAS SCALE when running Tailscale on the host
One of the biggest reasons that I’ve interested in TrueNAS SCALE is to install Tailscale on the host and use Tailscale to access my NAS from outside of my network and to share the VMs and apps that I’m running on my NAS. In migrating over to my new NAS, I learned that I wasn’t going to be able to share my Tailscale relay node with my friends and family. To accomplish what I wanted to do, I’d need to install Tailscale on the host itself.
It’s unsupported, but it is possible to install Tailscale on the TrueNAS SCALE host, which is an improvement over CORE. For a while, it even seemed to be working okay. I could access the official Plex app and all of SCALE’s hosted services (the web-management interface, SSH, SMB shares, etc.…) but in the days after installing Tailscale, I wound up running into several other problems:
Tailscale got wiped out when I upgraded TrueNAS SCALE from 22.02-RC1 to 22.02-RC2
The Nextcloud app from TrueCharts only listens on the IP address of the host itself; any traffic to the host’s Tailscale IP is ignored.
I had one instance where my SMB shares stopped being accessible until I stopped Tailscale.
As I've been tinkering with my new #DIY#NAS, it's been interesting to realize how quickly implementing @Tailscale has become essential–and how willing I am to move away from thing(s) that make Tailscale's use more difficult. https://t.co/CGgCVp8Gz3
This has been a tremendous disappointment to me. Tailscale has been so easy that I figured if I could get it installed on the host, everything on the host would be accessible on my Tailnet. But that didn’t turn out to be the case. I knew what I was trying wasn’t supported and I wouldn’t get much help for it, so I searched for a Tailscale feature request(s) on iXsystem’s JIRA page to upvote and found this:
If I want to host something on my NAS and share it via Tailscale, it will need to go in its very own virtual machine. This is how I was handling sharing things with TrueNAS CORE, and I’m content to keep doing it while using TrueNAS SCALE. I’m not thrilled with this, but I can accept it—for now.
Will Brian be using TrueNAS SCALE in 2023?
For as long as I have been using TrueNAS CORE (or FreeNAS), it has met all of my requirements. I’ve never even seriously considered looking at anything else. I like the ZFS file system, I like how easy TrueNAS CORE makes it to manage ZFS, and I remain excited about the possibility of completely consolidating my Homelab and NAS machines onto one platform.
But the minute I saw the “hyperconverged” buzzword in SCALE’s marketing material, my expectations for SCALE shifted a bit. After installing SCALE, I expected that I’d be able to retire my Homelab machine. I also expected that I’d be able to access and share all the applications hosted on my TrueNAS machine using Tailscale. Unfortunately for me, those expectations haven’t been met—at least, not yet. If the following happens this year, I’ll be really excited:
Incorporate support for Tailscale on the host for accessing/sharing the core SCALE services and any apps.
Enable features to leverage KVM’s pre-existing support for passthrough of unique USB devices to a Virtual Machine.
Expansion of the list of “official” apps in the TrueNAS SCALE catalog.
A maturation of the TrueCharts community to err on the side of inclusion, rather than exclusion.
Development of other catalogs of apps to compliment and compete with the current catalogs.
At the end of this year, I fully expect that I’ll still be using TrueNAS SCALE. By the time 2023 rolls around, I fully expect many of these items either have been resolved or a roadmap laid out for their resolution under SCALE.
Don’t let the words I’ve invested in the two areas that I’ve been disappointed with TrueNAS SCALE mislead you. Overall, I’m incredibly satisfied with TrueNAS SCALE. It fell short on a couple of my expectations, but I was also expecting that SCALE would far exceed what I have historically asked my own NAS to do. If I were asked to make a recommendation, I’d encourage others to take a look at TrueNAS SCALE first. I think its hardware support and its unrealized potential make it a great choice for DIY NAS builders today.
That being said, SCALE did not live up to my expectations, too. If my expectations aren’t being met by the end of this year, it will be time to seriously consider alternatives like UNRAID, Proxmox, or even building my own homebrew server from scratch.
After reading about my experience with TrueNAS SCALE, what do you all think? If you’re a TrueNAS CORE (or FreeNAS) user, are you excited about switching over to TrueNAS SCALE, or are you sticking with TrueNAS CORE? If you’re a prospective new builder, do you have a preference for SCALE or CORE? I’m interested to hear what you think down in the comments!
As my DIY NAS kept reliably functioning, I decided that I would stop being patient and I would force the issue via upgrades. I calculated that the best upgrade for my NAS would be to max out the RAM. At the time, I was operating under the assumption that there would be all sorts of inexpensive secondhand DDR3 UDIMMs on eBay. But much to my chagrin, there was none to be found—especially inexpensively. Buying the four 16GB DDR3 UDIMMs to upgrade to 64GB of RAM (from 32GB) was going to cost me $800!
I wasn’t opposed to spending $800 (or more!) to upgrade my NAS, but I would need to get more value out of the upgrade then just doubling the amount of RAM, so I decided that the purpose of this DIY NAS build would be to replace and upgrade what has served me so well the past few years.
Every year, I spend a ton of time searching for the ideal motherboard for a DIY NAS build—and every year it is a challenge. Once I decided that I would be keeping DIY NAS for my personal use, it became almost impossible to find the perfect motherboard. I spent hours trawling through manufacturers’ websites, online vendors’ advanced search functions, and staring at my bank balance, looking for a motherboard that met this criteria:
Mini-ITX form factor
Integrated CPU, preferably passively cooled
Onboard support for at least 9 SATA drives
A substantial processor upgrade over my old Avoton C2550
No felonious assault of my bank account
I was searching for a unicorn. After trawling through every single MiniITX motherboard from 5—6 manufacturers, I concluded that my ideal motherboard doesn’t exist. My criteria narrowed it very quickly down to motherboards that were prohibitively expensive or would’ve required considerable concessions to my criteria. To make matters worse, the motherboards that were closest to meeting my criteria simply could not be found in stock anywhere.
Unfortunately, the Supermicro X11SDV-4C-TLN2F would not support all 9 of my HDDs/SSDs. However it did carry a feature my current motherboard doesn’t have—two onboard 10Gb network interfaces—which freed up the PCI-e slot for an HBA, which kept a viable candidate. The integrated Xeon D-2123IT was quite a bit more powerful than my current Atom C2550, and the CPU is passively cooled. The fact that a few vendors had it listed at a somewhat reasonable price ($550—$600) encouraged me to place an order.
If finding the motherboard was difficult, actually buying it at a reasonable price was damn near impossible. Everywhere I found it listed either had an exorbitant price tag or the vendors with a reasonable price tag wanted you to wait for them to custom order it from Supermicro.
At first, I went the special order route—but chose to cancel my order after weeks went by with no updates and the supposed estimate kept incrementally going up the more time went by. I wound up finding the Supermicro X11SDV-4C-TLN2F listed on eBay and decided to buy it from there for about $650, but that listing has since climbed up up to nearly $800!
Most years, shopping for the case for the year’s DIY NAS build blog is as much of a challenge that the motherboard is. Not because good options don’t exist, but because I seem to have used most common NAS cases already. When a manufacturer makes a good design, it will continue to be popular for years to come without much (or any) refinement.
3 independently cooled chambers, motherboard, hard drives, and power supply.
Case’s grill-laden design allows for excellent airflow.
Don’t have a 3D printer? Or don’t want to spend the time (and money) to manufacture and build your own DIY NAS case? I don’t blame you, 3D-printing a DIY NAS case is no small feat! If it is helpful, I wrote a blog about my favorite DIY NAS cases that contains a few ideas of other cases you might want to try.
Picking out a power supply for this year’s DIY NAS build was easy, too! Thanks to all of my DIY NAS building over the years, I’ve accidentally bought one or two ATX power supplies when I actually needed an SFX power supply instead. I have been saving those extra power supplies, assuming I’d eventually be able to use one of them.
In this case, I had purchased a SilverStone ET550-HG (specs) for a prior DIY NAS build. The 550 watt power supply should be more than ample to power my current DIY NAS which, is currently being powered by a 300 watt power supply.
I’m hopeful that the SilverStone ET550-HG’s 80 Plus Gold certification will be an upgrade in terms of power efficiency and that its fans run quieter than the 1U Power supply that I’m currently using today.
The whole reason I decided to keep the DIY NAS: 2022 Edition for myself can be found in RAM. Originally, I wanted to upgrade my DIY NAS from 32GB of RAM up to 64GB. As part of doing that upgrade, I decided I’d swap my NAS into the MK735.
As part of the new NAS build, I still wanted to reach 64GB of RAM. I achieved this by using 4 of the Micron 16GB DDR4-2666 ECC RDIMM (specs). While 2666MHz RDIMMs are supported by the Supermicro X11SDV-4C-TLN2F, they will only operate at the fastest speed supported by the motherboard, 2400MHz. It just turned out that when I was shopping, 2666MHz RAM was priced more competitively than its 2400MHz counterparts.
Host Bus Adapter and Cables
Because I had nine SATA drives that I wanted to bring over into the DIY NAS: 2022 Edition, a Host Bus Adapter (HBA) card was going to be required. If I were building my own NAS from scratch today, I probably would not have gone this route. Instead, I probably matched up a pair of SSDs with 6x 12TB (or larger) HDDs to achieve the same amount of storage that I currently have.
To achieve what I wanted, I was going to need to buy a HBA. In the DIY NAS: 2020 Edition, I purchased an IBM M1015 HBA and used it to make sure that every possible drive bay of its case could be filled. In order to use the IBM M1015 with TrueNAS, it is suggested that you reflash it in IT Mode to give the filesystem unfettered access to the drives themselves. Flashing that firmware wasn’t a tremendously difficult task—but it was challenging enough that I searched for something that had already been flashed for use with ZFS and I found this on Amazon: LSI 9211-8i P20 IT Mode for ZFS FreeNAS unRAID 6Gbps SAS HBA (specs). Spending $10—20 more than I spent on the IBM M1015 was an easy decision when it took me two to three hours just to flash the IBM M1015.
Up until last year, I’ve been running the OS on USB flash drives (often mirrored across two thumb drives) on all of my DIY NAS builds. For a while now, this has been in contradiction to the suggested hardware recommendations. There’s apparently enough being written to the OS drive now that USB drives are likely to wear out, especially inexpensive flash drives.
Inexpensive SSDs are not difficult to find—but the really inexpensive ones are selling out and never being sold again, which makes it a challenge for me to recommend a particular model. Equally challenging is that SSDs are increasing their capacity and value. Assuming you can find an appropriately sized SSD (32-64GB) or SATA DOM, you’re not really getting the best value when buying it.
For me, that was just too much potential value in buying a pair of Crucial MX500 1TB to store the operating system on. At the time I bought the SSDs, I figured that I’d try and maximize their value by pre-partitioning the SSDs to use for the OS, ZFS cache (L2ARC or SLOG), and/or some fast storage on the NAS.
Do think this will work out? Or do you think these drives will wind up being 99.97% wasted? Keep on reading to find out!
NAS Hard Disk Drives
The most important part of your NAS build are the hard drives. Regardless of your budget, your storage will likely wind up being the most expensive component of your DIY NAS. It’s also impossible to make a one-size-fits-all recommendation to every prospective DIY NAS builder. Rather than make specific recommendations of what hard drives to purchase, I like to make suggestions:
Measure and project your storage needs: How many hard drives you need for your DIY NAS ultimately depends on how much storage you currently need and how much you project that will increase over time. Oftentimes, spending more money now will be cheaper in the long run.
Understand your data’s importance: Knowing the importance of your data is critical to choosing how many HDDs. Ask yourself, “What happens if someone steals my NAS?” Your answer to this question should help you understand what your hardware redundancy and backup plan should be. If your data is critical to you, your budget should include both hardware redundancy and some sort of off-site backup.
Buy CMR Hard Drives for use with ZFS: Many Western Digital customers were shocked when their so-called “NAS-grade” drives were unreliable in their NAS systems as a result of Western Digital surreptitiously sneaking SMR technology into their Red products. Typically, the easy way to avoid this is by purchasing NAS-grade hardware, but the better advice is to buy drives using Conventional Magnetic Recording (CMR). Personally, I don’t really care if my HDDs are NAS-grade or not; if I find consumer-grade CMR HDDs, I’d happily store my data on them.
I purchased some hardware you probably won’t need, too!
Once I decided to keep this DIY NAS for my own use, I knew I would be buying a few components that I wouldn’t necessarily recommend that others buy.
RJ45 to SFP+ Transceivers
Five years ago, I built out an inexpensive 10Gb network using some secondhand 10Gb SFP+ network cards and setting up a point-to-point network between my desktop, my Homelab machine, and my NAS. About a year ago, I added a 10Gb SFP+ to my network, which simplified things quite a bit.
I’ve been impressed with putting LEDs inside computers. I think, when done well, they look pretty awesome. But I have never been tempted to do it myself. I don’t think a computer should be a focal part of your office’s decor. My preference has always been that computers are black or beige boxes, preferably out of view. But ever since starting The Butter, What?! Show with Pat—I’ve been looking for ways to make the background of my office a bit more interesting to look at and to try and feature my enthusiasm for DIY NAS topics. As a result, I had a brainstorm and asked myself “What if I put LEDs into my DIY NAS?”
We livestream the recording of The Butter, What?! Show on the first Tuesday of every month at 9 p.m. Central Time. What we wind up recording gets broken up into weekly episodes that are published to YouTube on Mondays. Come join us!
I bought the same LEDs that I’m currently using on the back of the sound-absorbing panels in my “recording studio.” I’ve been happy with how the SUPERNIGHT LED Strip Lights have worked out so far. I’m pretty certain that I’ll have quite a few feet of LEDs left over. What sort of LED lighting projects should I incorporate into my Home Automation? Let me know in the comments below! To round out my LED product purchases, I picked up a 4-pin molex to 2.1mm barrel jack to power the LED controller and LED strip from the computer’s power supply.
Hardware Assembly, BIOS Configuration, and Burn-In
Normally, when describing the assembly of a DIY NAS build, I strive to be really detailed for people who might choose to build their own DIY NAS using some of the parts from my blueprint, especially the case. 3D-printing and building the MK735 has been one of my favorite projects, but it took a lot of time, effort, and materials. I don’t expect that many people reading this blog will be using the MK735, so I am keeping the assembly notes a bit brief.
The two most difficult parts of assembling my DIY NAS in the MK735 was mounting the motherboard itself and the HBA. The trouble that I ran into in mounting the motherboard was twofold. First, it fits like a glove—there’s very little play for the motherboard once it is down in its tray. Second, you wind up threading the holes as you drive the screws into them for the first time. That makes putting the motherboard’s screws in pretty challenging—if I had to do it all over again, I’d remember to pre-thread each of these holes. However, it’s important to not over-tighten the screws too. Otherwise, you might strip the hole itself.
There’s enough room for the HBA, but I found that I couldn’t connect the cables when the HBA was installed. This is due to the MK735’s very compact nature—and I always expect these kinds of challenges when working with a small form factor case. Removing the HBA, installing the cables, and then bending the cables 180 degrees around the edge of the HBA allowed me to install the HBA.
I wound up deciding that I would save the installation of the LED controller and LED lights for a future blog. I think there’s an entire blog’s worth of content between installing the LEDs, incorporating them into my home automation via HomeAssistant, and automating some NAS-specific tasks. Plus there’s some exciting overlap with our Ooberlights project too!
Here is a time-lapse video of the hardware assembly, TrueNAS installation, and the configuration I did to set up a simple share on the DIY NAS: 2022 Edition. And if you’re really interested, I also made a nearly real-time version of the assembly video too after a few people had requested it previously.
In the DIY NAS builds of the past, I seem to recall a sneaky BIOS configuration change that needed to be made in order to get the DIY NAS to function. I noted that and said to myself, I need to remember this when I write the blog! Every year since, I’ve kept this heading in the blog for similar sneaky configurations, but I’m still relieved that pretty much the only change I ever make in the BIOS is to change the order of which devices it’ll boot from—and this year’s NAS build was no different.
Typically, my DIY NAS builds aren’t in my possession for very long, so I like to torment the hardware a little bit to make sure there’s nothing wrong with it. However, since I’m planning to use the DIY NAS: 2022 Edition as a replacement for my current NAS, I can be a little more relaxed with my burn-in. I plan to run the DIY NAS: 2022 Edition (using some old drives) next to my current NAS for an extended period and evaluate its performance. Once I’m fully confident in the new machine, I will migrate my drives and settings over to the new NAS.
Regardless, I always burn-in any computer I build by running Memtest86+ for three single-threaded passes, and this year’s NAS build was no exception.
I have been excited about TrueNAS SCALE since its announcement. What is TrueNAS SCALE and how does it differ from TrueNAS CORE (formerly known as FreeNAS)? I haven’t really used TrueNAS SCALE enough to pretend to have any expertise, but here’s a really high-level at stab some important features from my point of view (a DIY enthusiast):
Maturity: TrueNAS CORE (FreeNAS) has been around for a long time and TrueNAS SCALE just recently produced its first release candidate.
Operating System: TrueNAS CORE is built atop FreeBSD and TrueNAS SCALE is built atop Debian
Both use ZFS: OpenZFS is at the root of both CORE and SCALE. In my opinion, that makes them both pretty interchangeable for my usage.
SCALE’s “hyperconverged” approach seems ideal for what many DIYers—myself included—are hoping to do with their NAS and/or Homelab builds.
I’m less incompetent using Linux than I am using FreeBSD.
SCALE should allow me to retire my separate Homelab server
Migrating KVM VMs over to my TrueNAS SCALE box
Replacing existing VMs (Plex, HomeAssistant, Nextcloud) with Linux Containers
Installing TrueNAS SCALE
In picking out components for the DIY NAS: 2022 Edition, I chose to buy a pair of Crucial MX500 1TB SSDs because the value of larger SSDs couldn’t be passed up. But in its current form, TrueNAS SCALE partitions and uses 100% of the OS drive’s space—which negates that potential value.
When I decided to use a pair of 1TB SSDs to act as the OS drive, I was determined to try and find a method that would allow me to create an appropriate-sized partition the SSDs for TrueNAS SCALE and then partition the remaining space to use for fast storage and/or ZFS caching (L2ARC and SLOG).
At any rate, I found this guide to partitioning a SSD as part of the TrueNAS Scale install in the /r/truenas sub-Reddit. Effectively, you modify the TrueNAS installation script to constrain the size of the boot partition created during the installation. After installing TrueNAS, you use the command-line to partition the remaining space, create a ZFS pool from those new partitions, export the pool, and finally import the pool using the TrueNAS SCALE web-interface. Following this guide worked perfectly for me, with one wrinkle: the specific line which needed editing. In the 9 months since this post was shared on reddit, the contents of /usr/sbin/truenas-install have changed. The author probably predicted this would change and shared the script’s location in the source code repository—so it was easy to go figure out where that line could be found in the current version of the script.
I named the pool made out of partitions on the SSDs “fast” and then created a new pool out of 7 high-mileage spare HDDs left over from my upgrades to larger hard drives. I created a RAID-Z2 pool named “slow” out of these old drives. After that, I created a new Local User for myself, created a Local Group called shareusers, and added my account to that new group. On each pool, I created datasets (fast-share and slow-share) and set the datasets’ permissions so that the shareusers group could read, write, and delete files contained in that dataset.
Finally, I opened up each share in Windows explorer, created a file, renamed that file, and then deleted that file to confirm that the share and file permissions had been set up correctly.
Just like that, my very first TrueNAS SCALE machine was up and running and ready to meet some network-attached-storage needs!
What’s Next, Brian?
In most years, I’d spend the end of the blog sharing some of the conclusions that I’ve reached based on the performance of the DIY NAS build, its cost, and its comparison to other products like it. I’m every bit as confident in making these declarative statements with the DIY NAS: 2022 Edition, but I’d rather take the opportunity to show it in 2022. So what’s next? More DIY NAS blogs, that’s for sure! I’m going to be running the DIY NAS: 2022 Edition in parallel alongside my current NAS for a while. Typically, I rush to do some throughput testing in an effort to demonstrate the performance of the new machine for prospective buyers. But because I’m keeping the DIY NAS: 2022 Edition for my personal use, I’ve got a few ideas for new blog topics:
Comparing/contrasting the performance of my old NAS and the new one.
Using TrueNAS SCALE’s “apps” to retire Virtual Machines
Consolidating my NAS and Homelab onto the same hardware
Incorporating my NAS into my Home Automation
What other kinds of DIY NAS/Homelab content would you be interested in? If you’ve been interested in building your home server, what’s been holding you back? I would love to hear about your own DIY NAS and Homelab journeys in the comments below. Even better, come join the Butter, What?! Discord server and share your thoughts in the #diynas-and-homelab channel!
For most of the past five years, one of my favorite hobbies has been flying first-person view (FPV) quadcopters. It’s been a fun little obsession which ticks off a lot of my favorite things: going fast, doing tricks, building things, and perpetually tweaking them.
I’ve also had the chance to hang out a few times with Alex Vanover, of Drone Racing League fame, and each time he’s encouraged me (and everyone else) to get out to Dallas Drone Racing’s, field and start racing. I give Alex credit for convincing Pat to try racing a couple years ago—and one of these days, I’ll join them in racing. I’ve got parts for two racing quadcopters that have been waiting to get assembled for a couple months now.
However, I am NOT a Racer
Let’s get this admission out of the way early: I am slow—very slow. Real quadcopter racing looks like this DVR recording of Alex Vanover’s FPV feed. This is what Alex saw in his goggles while running some laps on a track set up for a recent MultipGP race:
I won’t even burden you with a comparison video of my own DVR footage what I call “racing.” Among the people that I fly with regularly, just about everybody is better and faster than I am. Ultimately, the person that I’m competing against is myself. As long as I’m consistently improving, I’m perfectly happy with how I’m performing. If I just so happen to beat Pat along the way, well, that’s just icing on the cake!
I feel the need, the need to understand my speed!
If I’m to improve, there’s no shortcut. I need to spend more time flying fast, predetermined courses. Being able to invest the time it takes to improve will always be my biggest challenge. I have far too many responsibilities, hobbies, and other distractions working against me. However, there are some efficiencies to be found.
A few of us race in Velocidrone every Thursday night for fun. I’m convinced that this extra “stick time” has been a tremendous help improving my flying both virtually in the simulator and also in real life. If you’re interested in joining us on simulator night, come join our Discord server’s #drone channel!
But what’s also been helpful is the timing built in to the simulator. Being able to discern between what feels faster and what’s actually faster is huge. Recently, Joshua Bardwell reviewed the ImmersionRC LapRF Puck on his YouTube channel. I was nearly ready to buy the LapRF Puck based on Joshua’s review, but then he mentioned that a do-it-yourself open-source lap timer existed and provided links to it. Knowing that DIY solutions existed piqued my curiosity, so I checked it out!
Disclaimer:While I ultimately had a great experience with the hardware for the Delta 5 Race Timer, the software wound up being a bit of a different story. Itseemsas if the Delta 5 Race Timer is a bit of a digital ghost town. There haven’t been any recent changes in Github, no responses to issues submitted, the Facebook group seems to be either gone or closed, and most of the tutorials are a bit dated. If you’re interested in building your own DIY race timer—please make sure to read all of my blog to avoid what I ran into!
The Delta 5 Race Timer seemed like it was right up my alley! It’s an open-source project to build your own DIY race timer using a custom PCB and some fairly common electronics components. Here’s a parts list and prices of the components (or equivalent components) that I wound up ordering. Thanks to my stash of bits and pieces from prior Raspberry Pi, Arduino, quadcopter, and custom computer projects, I was able to avoid having to buy several of the components.
Just by looking at the Delta 5 Race Timer’s parts list, it was fairly obvious to me that I could potentially get some great value out of investing a few extra dollars and a little bit of work at my soldering station! Especially when I realized that I already owned most of the wires and connectors, a Raspberry Pi, and a spare Arduino Nano or two. Regardless of how many components I already owned, I still think the DIY race timer is a great value:
All things considered, the assembly of the hardware went smoothly, despite my clumsy solder-work. Part of what compelled me to take on this project was realizing that it would also provide some great practice to increase my soldering skill by a little bit.
TweetFPV on YouTube has a great three-part tutorial on assembling the Delta 5 Race Timer’s hardware and software.
It took me an entire Saturday evening after my son went to bed to assemble the Delta 5 Race Timer hardware using 4 nodes. But I’m reasonably confident that if I were to do it again, I would be considerably faster. Nothing about the build was complicated, but my soldering is pretty slow, inefficient, and required a lot of double-checking. While I may have been slow, the work paid off! After soldering everything together, but before putting in the video receivers and Arduino Nanos, I powered it up and measured the voltages with my multimeter. I was pleasantly surprised to see that the appropriate voltages were being read on the different points in the PCB. Later on that week, I put it all together and powered it on for the first time:
My biggest disappointment in this project was that the Delta 5 Race Timer appears to be abandoned. The project itself has many open issues, hasn’t had any new changes in the Github project in over 2 years, and there are a number of issues that have been opened without really receiving much attention. At first I was a little concerned, but I figured that I had enough knowledge that I could follow the old directions and get it working.
I wound up running into one of the open issues on Github, and while I managed to apply some Google-fu and seemingly moved past a problem, I’m not really certain if I actually solved that problem or caused a different problem. I never could get the Delta 5 Race Timer web interface functioning. The logs were full of error messages that made me think that my Raspberry Pi’s operating system had packages that were much newert than what would work with the Delta 5 Race Timer project. After tinkering with it for a few hours across a couple days, I was beginning to worry that I’d need to seek out someone in the FPV community to let me copy the SDCard image from their working Delta 5 Race Timer.
Thankfully for me, one of my Google searches lead me down a rabbit’s hole and I stumbled across someone asking questions very similar to my own. Somebody had a very simple answer to that question; they suggested that the person go take a look at a project called RotorHazard instead of trying to get the Delta 5 Race Timer functioning.
The minute that I saw the RotorHazard project page, I breathed a sigh of relief knowing that I was not going to have to fumble through resuscitating a project that had gone stale and that I wasn’t well-equipped to accomplish. You might be asking, “What’s RotorHazard?” and I read this answer from someone on their Facebook page: “RotorHazard is basically Delta 5 Race Timer 2.0”. Given what I’ve seen of the RotorHazard so far, I think that answer might be a bit basic and too modest!
After skimming through RotorHazard’s project page, I began to wish that I had come across it much sooner. Thankfully, there wasn’t any harm done, as the Delta 5 Race Timer hardware setup is 100% compatible with RotorHazard. If I had the chance to do it all over again, I probably would be inclined to build my own using the RotorHazard S32_BPill PCB instead. The hardware design seems more sophisticated, and I especially liked the fact that the RotorHazard PCB can support up to 8 video receivers as opposed to daisy-chaining two Delta 5 Race Timer PCBs together to get 8 nodes. The RotorHazard S32_BPill PCB’s features include replacing the 4 to 8 Arduino Nanos with a single STM32 processor.
Beyond these key attributes, there’s an assortment of other features that I would have also been interested in:
Better 3D-printed case design with more cooling
Support for power/battery monitoring
Compatibility with LED strips and other LED options
All that being said, I don’t plan to make any changes to my hardware in the near term!
The weekend prior to publishing this blog, Pat came over and we set up an indoor track inside my house. We set up my RotorHazard race timer, and within a few minutes, we were racing laps around the track that we laid out in my house. We had to tweak the calibration of the video receivers and adjust the placement of the RotorHazard timer once or twice. But once we had everything dialed in, we were having a riot racing around the house.
We were testing out @briancmoses's new DIY race lap timer last night. It detects our quads going over the finish line based on the signal strength of our video transmitters. How cool is that? She even reads our times out loud!
It was awesome listening our times get read off by my laptop as we zipped around the somewhat-complicated course that we set up. Moreover, I can totally see bringing this out to an open field and setting up a crude course outside and doing the same exact thing.
Thanks to having quite a few of the parts laying around the house already, I was able to buy enough parts to build an 8-port race time for about $125-150. Because of the size of our group and the extra effort it takes to get eight quadcopters in the air at the same time, I opted to only include 4 ports in mine. But if I ever wanted to grow mine to eight ports, I have enough spare components to make it happen.
I plan on doing a bit more research. My next goal is to use the Raspberry Pi 4’s wireless interface to act as a WiFi access point. That way when we’re in the field, I can fire up the race timer and access it from my laptop, without any Internet access.
I really enjoyed our racing session. We didn’t really do any “real” racing, we wound up using the “Open Practice” mode. Nevertheless, it was a riot racing Pat (and myself) around the house. As more of my drone-flying buddies are fully vaccinated, I’m looking forward to inviting a couple more people over and see what it’s like with four pilots racing at the same time!
What do you all think? If you’re interested in racing, what do you do to try and measure your own speed when casually practicing? Is this a project that you’d be interested in building on your own? Is a product like the ImmersionRC LapRF Personal Race Timing System more suited for what you’re wanting to do? Or maybe you’re timing yourself a different way? Let us all know in the comments below!