Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

TBH the thing I hate most about this category of SBC is the reliance on SD cards. They are both too unreliable to trust and so slow that they often bottleneck the SBC. Buying them is often a crap shoot too, I've purchased cards batches of cards from the supposed reputable manufacturers that were all over the board when benchmarked, and rarely did they hit the claimed speed spec. I would love if there was an alternative that was not as much as a jump as those SSD flash drives or NVME drive. Maybe OS grade eMMC M.2 drives the size of those wifi cards?


Did you read the blog post? :)

"One of the most exciting additions to the Raspberry Pi 5 feature set is the single-lane PCI Express 2.0 interface. Intended to support fast peripherals, it is exposed on a 16-pin, 0.5mm pitch FPC connector on the left-hand side of the board.

From early 2024, we will be offering a pair of mechanical adapter boards which convert between this connector and a subset of the M.2 standard, allowing users to attach NVMe SSDs and other M.2-format accessories."


> Did you read the blog post? :)

As you keep spamming this here, did you read the HN Guidelines[0]?

  > Please don't comment on whether someone read an article. "Did you even read the article? It mentions that" can be shortened to "The article mentions that".
[0]: https://news.ycombinator.com/newsguidelines.html


The guidelines mention that.


Did you read my comment? :)

I did read that they were going to support M.2., and I have gotten around my issues with SD cards in the past using SSD-grade USB drives and NVMe adapters. My comment was about how crap SD cards are, and how this class of SBCs (including the PI 5) often use them as their default storage (as in, not needing an adapter or special firmware to boot). My final statement was my wish for a high speed durable storage standard that was better than SD cards without having to spend more money than the SBC itself on storage, although looking today on Amazon it seems that NVMe drives have gotten way cheaper, no idea of those are quality though.


You can netboot a Pi. Every Pi in my house netboots. I have a whole bunch of them. Some play games, some play videos, some play music, and a few other minor things. Because they all netboot, you can change what each one does by renaming a file on the server and then rebooting it. It's great.


Every new Pi model needs a bit of time for the Netboot firmware to be worked out. I would research the RPi5 before you bought it today.


Are they using like a RAM disk then or are they mapping a network drive for storage while they're running? I've always been curious about setting up netbooting but beyond a failed experiment a long long time ago I haven't really tried.


You made me curious: what do use them for exactly?


One is the "smart" part of my smart TV. One powers my hifi. One connects my non-networked printer to the network.

One is an NTP server which gets the time from GPS, although that one will probably be retired soon, internet time works fine.

I used to have one inside a MAME cabinet but I upgraded it to a "real" PC because the Pi isn't really powerful enough for modern versions of MAME.


What do you use for the smartTV (distro)? And do the big streaming players work happily?


I use LibreELEC. I don't watch streaming TV, I have traditional cable and an HDHomeRun Prime box which acts as a cable-ethernet interface, which Kodi will happily connect to.


What sort of issues do you see from netboot vs. booting of a USB SSD?


Do you have a guide or any tips on how to do this?


It's called PXE boot.

You need a server to host the ISO (via http/ftp/tftp or whatever you prefer) and a DHCP server that will distribute the ISO URI to the client.

Configure the client to boot from the network in the bios and put it in the same LAN as the dhcp server.

That's the gist of it.


Raspberry Pi's don't use PXE boot, they have their own proprietary system. The kernel is fetched by TFTP, along with a config text file which species an NFS location to mount as root. Boot then continues from there.


You can even boot from USB


This device has a PCIe 2.0 x1 connector now, so NVMe drives should be usable now.

The Compute Module 4 series have been able to support eMMC chips, so I don't see why they wouldn't continue with the 5 if/when it shows up


> This device has a PCIe 2.0 x1 connector now, so NVMe drives should be usable now.

It's a fiddly FPC connector though, which isn't a great contributor to mechanical robustness.


Oh yeah, I've lost quite a few camera projects to these connectors with cables breaking, slipping out of the connector and whatnot. Maybe just a bad choice of cables, not sure.


FPC is used in billions of devices with perfectly fine robustness. As long as it isn't part of some flexible mechanism (e.g., a flex display, or something folding), it should be just fine. If you toss it into a box with the FPC flopping in the breeze then I'm sure it would be terrible, but... don't do that?


FPC is used in billions of devices-- that are professionally assembled, usually assembled only once, well-enclosed, and careful attention has been given to strain relief. It's cheap and compact and allows very small assemblies.

It's not so hobbyist/tinkerer friendly, where you're likely to put a lot of cycles on the connector, bend things back and forth, and end up with an enclosure that does not protect everything as well as one would like. Indeed, you have a sibling comment talking about breaking lots of FPC going to cameras.

Mechanical/connector failure is a small but noticeable share of the SD robustness problems on SBCs. I would expect FPC to be worse.


Again, this sounds overblown. Obviously the cables are somewhat fragile and you can't just be a brute with them... but the alternative is making a PCB that is much larger to accept a M.2 slot. It just isn't possible in the current footprint from what I can tell.

Also, other connectors for this type have surprisingly low durability. Most M.2 slots are rated for extremely low mating cycles. Amphenonol, who I would considered to be an high quality manufacturer, rates their M.2 slots for '25-60' mating cycles total. Less than 100. Most manufacturers do not even specify the number of mating cycles.


> but the alternative is making a PCB that is much larger to accept a M.2 slot. It just isn't possible in the current footprint from what I can tell.

I'm not saying they made a bad choice; they're facing a lot of constraints and have a lot of IO to get out while staying hobbyist friendly.

> Also, other connectors for this type have surprisingly low durability. Most M.2 slots are rated for extremely low mating cycles.

Sure, but I don't -need- as many mating cycles for M.2, as it'd be screwed to the board and done. Whereas if I'm dealing with a Pi stackup and coming in and out of the case, I'm likely to get through the couple dozen cycles I'm allowed with FPC. And if I'm putting it on a vibration-intensive environment like a quadcopter, I need to be pretty dang careful with mechanicals.

> Again, this sounds overblown.

Everything's a tradeoff. Flex is cheap and small and offers versatility. It's also delicate and annoying.


PCIe 2.0 x1 is only 250 MB/s max. That seems like it may not be enough?


Double that.


You mean it's 250MBps in each direction?


No, 500 MB/s, see also https://en.wikipedia.org/wiki/PCI_Express#Comparison_table

250 MB/s is for PCIe 1.


Thanks!


FWIW, I boot my Pis almost exclusively from USB. Not that that's... great in terms of speed or reliability, but it's something.


This. I've had an always-on Pi 3 since 2016 and after countless random corruption issues from various micro SD cards, I moved to booting them from old USB2 flash drives, first an 8gb then an 16gb one. Never had an issue with them and they've been solid. I only had to mess with the flash drives when I had to do an OS upgrade.

Also, those micro SD cards were always fine after a format/partition and I can still use them in other devices just fine. I've read before that the Pi has a tendency to corrupt micro SD cards through its reader, and IIRC it's related to power issues.


For my Pis that change, I try to boot form USB. For Pis that don't change, I just make their / immutable.


I have a Pi 4 and Pi 400 and boot them from NVMe (via USB).

Combined with a portable LCD, it's a low-power dev workstation on a battery. ^_^


Reducing logging, logging to ram and writing to the sdcard once a day helps longevity a lot, especially with quality sd cards.

99% of the time it's the verbose logging of application servers that is the culprit of sdcard failures.

https://github.com/azlux/log2ram


Agreed. I recently had the rather unpleasant discovery that when samsung called their SD cards “high endurance”, they actually meant 3-6 months, and that half of the video on my dashcam was missing.


Why aren’t you talking more about the GPU?


wow how does no one get this pun from his username?


I've recently stumbled upon a SBC with a M.2 slot... Then promptly closed the tab, to stop the temptation to get another shiny dust collector. But they exist.


NVMe SSDs are so cheap now that you are literally wasting your time by not using them.


I haven't had much trouble with the SD cards. The thing is, writing to them all the time means your chances of corrupting the filesystem is higher (like any filesystem). I would try to make the filesystem read-only as much as possible. There are settings for this.


I am aware of the write endurance problems of sd cards, but I've had numerous cards that are cooked fresh out of the box, even from 'good' manufactures like Samsung. I don't like having to do binning for the manufacturer.


My experience so far is that cheap small storage (usb thumb drives and sd cards, essentially) should be bought in person from a reputable store.

Those I’ve acquired this way worked well, those I’ve brought off online stores almost always had problems or short lives (or both).


It would be nice if there was just an improvement to reliability and speed of SD cards. I’ve used SBCs with eMMC built in (non-removable) and using them is a lot more complex compared to just flashing a new SD card image as needed. Based on the forums it takes a lot more effort for support as well, so from this point of view I’m not surprised raspberry pi has kept as cards as the main option.


I've had some really cheap cards fail but have mostly had better luck with name brands.

One of the things I do is to configure hosts to use the overlayfs (read only fileystem) where appropriate and that helps to reduce wear on the SD cards.

I don't use then where I want a responsive system and use USB/SSD or NVME/SSD instead.


If an sd card is too slow and too unreliable for you, considering the full price of a raspberry pi (including case, fan, psu etc) you might be better served by some intel based small computer, like a thin client or some small form factor computer (hp, dell, lenovo have many models, that can also be acquired super cheap on ebay and similar).


With the 3 and newer you can boot from USB drives instead of SD cards. It’s a bit of a faff to set up but it works great.

I had to do this when I was doing some long-running I/O intensive operations and it was basically killing the SD card storage.


You can take a look at orange pi 5 plus. It has M.2 for WiFi and M.2 for SSD, both PCI-E. It's in $100+ category though.


I have not broken a "max endurance" SD card yet. But they're pretty expensive.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: