this post was submitted on 05 Jan 2024
45 points (97.9% liked)

Selfhosted

40296 readers
271 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I am worried that externally caused vibrations might damage my HDDs (NAS in the planning). The subway / metro runs under my building, and every time the train passes, this causes slight but measurable vibrations in the 50-100 Hz frequency range. It is more like a rumbling noise than the usual vibration of a passing train.

I've been researching the topic of vibration dampening on and off, and things like sorbothane popped up in my search. I also remember finding foam plates in an eye scorching yellow material.

My plan is to set up the case, fire up a measuring app on my phone (say phybox or the like) and test a few options. But I figured, I can't be the first person to be guarding against outside vibrations. :D

Other than the usual 3-2-1 and backup regularly, what can I actually do? I would like to make sure that the lifespan of the HDDs doesn't get too negatively impacted, so the chances of a catastrophic failure, as well as having to invest 1k EUR every couple of years is reduced as much as possible. Thanks!

top 27 comments
sorted by: hot top controversial new old
[–] scrion@lemmy.world 60 points 10 months ago (1 children)

I believe it doesn't really matter much whether you want to protect the environment from vibrations of the machine vs. protecting the machine from vibrations of the environment - in both cases, decoupling the systems is what you want to achieve.

Eventually, you want to build a TMD: https://en.m.wikipedia.org/wiki/Tuned_mass_damper

I personally had to deal with the case of a large format CNC machine transferring stepper motor vibrations into an adjacent office via the wall-mounted brackets it was sitting on. People started to complain shortly after installation since the noise was very audible in the otherwise quiet working environment.

The solution involved placing the machine on a plate mounted via rubber decouplers (see https://www.dayco.com/en/product/decouplers) which in turn was mounted to a shop-built TMD using a rubber core sandwiched between two foam plates. The rubber core works as both mass and absorbs additional vibrations. It was built following a paper, but unfortunately, that was around 7 years ago and I'm not sure I'll be able to dig the publication out again.

You can in fact simulate the TMD and do the tuning (see for example https://www.mathworks.com/help/simscape/ug/mass-spring-damper-in-simulink-and-simscape.html , though dedicated software packages also exist) but in all honesty, that will probably be overkill for your case.

Having your NAS sit on a 1/2" board of baltic birch plywood resting on a foam sandwich is probably going to do the trick in your case. You can easily create such a sandwich using foam, a rubber mat and some spray glue. Different foam densities will give different results and yield different "tunings" - you may have to play around with this a bit. I could imagine you'll most likely even be able to skip the second decoupling step (rubber feet/decouplers), in the aforementioned case the second decoupling allowed for another set of frequencies to be dampened (via a different overall rubber hardness) but also brought overall amplitude down.

Don't use super soft foam, as this will yield a wobbly base, something you probably want to avoid for your NAS. Also, make sure not to attach the base board to anything else apart from the foam, or you'll transmit vibrations again. If you don't like the appearance of the foam, you can build a small fence around it that goes up to the top of the base plate.

All that being said, there are also ready-made solutions like speaker dampening feet available: https://www.amazon.com/Tertullus-Speaker-Isolation-Feet-Anti-Vibration/dp/B09QC2L7N3

Most of them are made to decouple subwoofers, so they might fit into the frequency spectrum you specified. Those couls certainly be an affordable and rather quick way to solve the problem.

[–] khorak@lemmy.dbzer0.com 12 points 10 months ago (3 children)

Awesome, thank you for taking the time to include so many details. I can see myself easily building the aforementioned plywood+foam sandwich platform, sounds like a more solid platform to put the NAS case on (mid tower).

The subwoofer feet also look fun, I remember reading about them back in the reddit days. After revisiting my notes and the post, there were some concerns about harmonic vibrations and oscillations from the drive having an negative impact. But reading it again, I don't think that this will be a problem.

I think I'll start with the feet and see how they perform while I source the plywood and foam. Maybe there are also some foam / rubber mounts for the disks themselves, I should be able to find suitable one as it's a more common problem to have.

Do you have recommendations for how I should best measure the results? Preciously I looked into the raw acceleration data to see how strong the vibrations are, and then I looked into the spectrum to find the vibration frequencies. All with consumer / noob friendly tools (phyphox), hoping that the change will be measurable and the results - meaningful.

[–] randy@lemmy.ca 10 points 10 months ago (1 children)

I work in railway noise and vibration mitigation, and @scrion@lemmy.world has given you a great starting point. When we build rails and want to mitigate ground-borne noise and vibration (typically up to ~200 Hz), we generally mount the rails on soft pads and add extra mass to isolate the rails from the surroundings. The exact same approach will work at your computer. We don't typically use tuned mass dampers for ground-borne vibration, so I think that will be overkill for you, but you can try if you like.

I wanted to suggest that, in addition to the feet/foam/plywood, you can also add a big chunk of something heavy to help with isolation. Like put a heavy rock on top of the foam, and your computer on the rock. The trick is this: if k is the stiffness of your foam, and m is the mass of everything on top of the foam, then your isolating frequency is at √(2k/m). All frequencies above the isolating frequency will by mitigated (the further above, the more they're mitigated), while all frequencies below will be amplified.

(Quick aside if you actually want to calculate frequency with √(2k/m): check that your units for k and m are compatible, you should end up with a result in units of 1/s, which is actually radians per second, then multiply by 2π radians per cycle to convert to Hertz).

When it comes to measuring results, since your problem is in low frequencies, you can probably use your phone's accelerometer assuming it reads fast enough (the sample rate must be at least double the highest frequency you care about). Mount it as rigidly as you can to your computer, since if the connection is soft, the phone will be in its own isolating system. The quickest way to test your isolator would be to hit close to the base with a hammer; impacts excite a wide range of frequencies equally, so in the frequency domain you should see vibration amplitudes following a shape something like these.

But as @scrion@lemmy.world notes below, you don't really care about your isolator's response, you care about what trains are doing to your computer. However, he said one thing I disagree with: it's not the amplitude of the acceleration that you care about, it's the amplitude of energy, and therefore velocity. This article gives a good introduction to ways you could analyze that. But now we're getting way in to the weeds on what should be a simple project!

One last aside: if the vibrations in your building are bad enough, you could raise it as an issue with the metro operator. The US Federal Transit Administration sets standards that are commonly followed even outside of the US (see Table 8-1 in their Noise and Vibration Manual); if your measurements show vibration exceeding those limits then they might pay me to fix it :D.

[–] scrion@lemmy.world 4 points 10 months ago (1 children)

Hey, great that you chimed in, I agree with the points you're making. As for my remark regarding amplitude, what I wanted to convey was: in the measurement scenario using the PhyBox smartphone app, OP should see an overall smaller signal envelope if the NAS was properly decoupled, compared to the previous plot.

As for your comment regarding the Nyquist theorem, PhyBox maintains a list of devices and their sensors so it would be possible to lookup the available sampling frequency. There are other factors potentially limiting the sample rate (e. g. switching offl microphone access for the app on Android), but it's a good starting point.

https://phyphox.org/sensordb/

However, I think we agree this should be solvable without much theoretical effort.

[–] randy@lemmy.ca 1 points 10 months ago (1 children)

Wow, I hadn't heard of phyphox before (hadn't even noticed @khorak@lemmy.dbzer0.com mentioned it in the OP). That's very cool and I've installed it now.

[–] khorak@lemmy.dbzer0.com 2 points 10 months ago* (last edited 10 months ago) (1 children)

I'm wondering, now that you've seen the app, do you have some practical advice on how to measure the difference without having to spend a few hours researching and refreshing on high school physics? It seems that my only option is to run the "Acceleration without g" experiment and work on the csv export.

A probably naive approach would be to filter out values below a certain threshold (a 'low pass filter' of sorts to deal with a noisy sensor) and then try to meaningfully sum the acceleration by time period. But just as I wrote this I realized that I can't simply sum a few values from several rows and call it a day.

The article you linked explained the idea behind the pseudo velocity well, I'm wondering if I can.. "sum the area" (assuming interpolated data) under the various measurement points. Without completely nerding out and investing too much time :D My sensor seems to have a rate of 200Hz, so it should be good for measuring vibrations up to 100Hz.

Edit, it's integrals, right? This is actually exciting, haven't touched math since university. Also here's an example of how the acceleration graph looks like when the phone is on the heating / radiator (more or less worst case): Screenshot from phyphox with acceleration sensor data

[–] randy@lemmy.ca 2 points 10 months ago (1 children)

None of the included experiments look to be exactly what you need. For characterizing your isolator, the included Acceleration Spectrum is close, though it records continuously, making it difficult to use to record impact response. For evaluating actual train vibrations, the user-defined Integrated Acceleration might be a start, but it doesn't include the filtering needed to get good information. You could define your own experiments, but that's probably even harder than analyzing the CSV data on your computer. At least on your computer you can change your analysis freely and immediately see results, rather than re-running the experiment every time.

[–] khorak@lemmy.dbzer0.com 2 points 10 months ago (1 children)

I've been a bit busy so I haven't had the time to figure out what and how much I need to compensate so the sensor data is more useful. One of the sensors seems to be detecting something reminiscent of a sine curve, so this will involve some extra high school math to find a function to cancel it out. Busy dad etc, maybe next week. In the mean time I started putting together the case and ordered the springy subwoofer legs. Here is how a simple plot of the raw acceleration looks like.

It's obvious which one is the before and after. The second one even includes two trains arriving back to back.

Now I need to figure out a few things:

  1. repeatable experiment (hammer? dropping something heavy from the same height?)
  2. make the Z-axis reading more useful and compare velocities
  3. add some foam/plywood and rubber feet on the disks

the after-graph shows barely any noticeable vibrations

[–] randy@lemmy.ca 2 points 10 months ago

Thanks for the update and graphs. That is an amazing improvement. In the "after" plot, it looks like any acceleration from the train is well below the noise level of your accelerometer. So, within the limits of your measuring equipment, you've effectively eliminated all train vibration. If I were in your place, I would declare success and move on with life! Don't even bother with foam and rubber feet, because this configuration is working great.

But you could analyze further if you really want; there could be some train signal hiding in all that noise. Since there's periodic noise in the Z axis, you could take a reading during a still time (computer off, no trains) and see where your spikes are in the frequency domain. Then you could apply a filter (or filters) to cut out that periodic noise.

But unless you're really into learning about signal analysis, I'd say you could skip it.

[–] scrion@lemmy.world 7 points 10 months ago* (last edited 10 months ago) (1 children)

Honestly, I think your approach using the MEMS accelerometer in your smartphone is fine - just make sure to tape the back of your phone firmly to the board to get a rigid connection. This will be of particular importance if you want to do any kind of tuning, as you might measure spurious frequencies if the device is not properly attached.

Smartphone accelerometers are actually used in civil engineering / industrial applications to determine frequencies of e. g. bridges or check for bearing wear. If you are interested, here are some papers:

https://www.spiedigitallibrary.org/conference-proceedings-of-spie/9804/98040C/Identification-of-the-operational-frequencies-of-300-bridges-using-smartphones/10.1117/12.2222097.short#_=_

https://www.scielo.br/j/lajss/a/ZnWZ8T86HHBLFvdksCh7g9s/?lang=en

https://www.mdpi.com/1424-8220/19/14/3143

https://www.mdpi.com/1424-8220/15/2/2980

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9824767/

That being said, the accuracy of the frequency readings is not super important for your application, as what you are after is pretty much only a reduction in amplitude. I would assume spinning hard drives show different responses to different vibrational frequencies, but I did not have the time to research this myself. However, here are two papers that explore what you are trying to do, which I will link since they also mention a few related papers that show the impact of vibrations on hard drives:

https://link.springer.com/article/10.1007/s00542-012-1592-z

https://content.iospress.com/articles/shock-and-vibration/sav00458

This would in theory incentivise to optimize dampening certain frequencies, but I suspect you will quickly get into the realm of overengineering / premature optimization, as the dampening might be good enough to tune out all relevant frequencies without simulations or tuning etc. However, it's still certainly a worthwhile effort for educational purposes though.

As for a practical approach, I'd probably simply start out with some super cheap foam obtained at the nearest home improvement or crafts store and see how a sandwich using that affects signal amplitude. You could even introduce artifical vibrations using a DC motor with a weight mounted off-center on the shaft, which you can get ready-made for next to nothing on eBay ("vibration motor", ~ $2).

If you want to get into tuning / experiment / analysis territory, I would like to include additional motivation. Not only might proper decoupling increase the lifetime of your drives, but it could also improve performance. I will include the following video as humorous proof of that:

https://www.youtube.com/watch?v=tDacjrSCeq4

P.S.: I firmly believe that research should be freely accessible, so I feel obligated to mention that all papers linked above are, if not available for free on their respective webpages, obtainable via a certain scientific hub.

[–] PipedLinkBot@feddit.rocks 1 points 10 months ago

Here is an alternative Piped link(s):

https://www.piped.video/watch?v=tDacjrSCeq4

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I'm open-source; check me out at GitHub.

[–] seang96@spgrn.com 2 points 10 months ago

HDDs latency will go up from external vibrations (even yelling at your system will do the trick). This would be a good direct source to see if the vibrations are negatively impacting it.

[–] Strit@lemmy.linuxuserspace.show 8 points 10 months ago (2 children)

Maybe some foam under the case could elliminate some of those vibrations. Like pieces of a yoga mat or similar mats.

[–] MNByChoice@midwest.social 4 points 10 months ago

Also consider rubber feet.

[–] h3ndrik@feddit.de 1 points 10 months ago

There are also heavy mats available in the hardware store, to put your washing machine on.

[–] invertedspear@lemm.ee 4 points 10 months ago

You probably don’t need anything. Laptops using disk have been in use in bumpier environments for decades prior to SSDs.

But let’s say you do. Bolt some eye hooks to the top of your case and suspend it with paracord. It’ll turn vibration into sway and your disks will happily keep on turning.

[–] possiblylinux127@lemmy.zip 3 points 10 months ago

You could put the case on something flexible like a rubber mat to reduce vibrations. Another option is to do a all SSD build.

The last option is to just blow up the train and the rails.

[–] Decronym@lemmy.decronym.xyz 3 points 10 months ago* (last edited 10 months ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
NAS Network-Attached Storage
RAID Redundant Array of Independent Disks for mass storage
SATA Serial AT Attachment interface for mass storage
SSD Solid State Drive mass storage

[Thread #404 for this sub, first seen 5th Jan 2024, 14:35] [FAQ] [Full list] [Contact] [Source code]