There are alternatives to RPi that do what you want, odroid-h2plus for example.
Broken connectors, duff microSDs, bricks.
They don't use them now, preferring python on windows.
Do you mean the microSD cards tend to wear out, or that they’re DOA?
If the former — I’m pretty sure there’s an option to load RaspberryOS into a RAM-resident mode (like a live CD) where regular OS usage won’t hit the disk at all, and only a “Local Documents” partition is mounted writable, with nothing configured to implicitly write to it by default.
If the latter — trust me, the same is true of eMMC, or any other Flash media ordered in bulk quantities. You just have to QA them on arrival. Set up an RMAed-parts box with a shipping label in advance; you’ll need it.
> broken connectors
The microSD connector? In an educational context, that shouldn’t be end-user exposed. It’s essentially a maintenance port. Stick some tape over it.
In the computer labs of the 90s, kids would break the CD-ROM drive trays, too. MDM software was developed that would, among other things, lock out the CD-tray eject mechanism unless/until a teacher enabled it (presumably for working through some whole-class “multimedia” product that never materialized, because who’d trust kids to insert the CDs?)
SD cards and USB flash drives are manufactured with lower-grade flash memory than SATA and NVMe SSDs. The stuff that wears out in RPi usage is the stuff that was rejected for desktop usage. So having a large failure rate is not the only option, if you can expose a SATA or PCIe port. It's a little disappointing that they cannot even offer end users that upgrade path.
It's really a terrible computing experience compared to using a simple off the shelf windows box running python with full single-sign-on to GCPW. They don't crash and the cables are never yanked around because they are AIO boxes and the storage never goes wonky. Teachers prefer them because the first 30 minutes of a 80 minute slot isn't getting 30 raspberry pi's limping again.
They could use a different power connector that doesn't cause this confusion, or they could design Pis to use less power and therefore work properly with more USB power supplies.
A USB connector, at this point, is a PHY (like a serial DB-9 connector), not an inter-ecosystem compatibility promise (like a FireWire or SCSI port.) Lots of things use USB for lots of different incompatible use-cases. They just happen to share a connector.
But on the other hand, you can also think of it like a regular PSU: all motherboards connect to all PSUs, and there’s no way for a PSU and motherboard to communicate to “lock out” a mismatch. And a PSU will seem to work for a given configuration of motherboard+CPU+peripherals, until you drive that configuration hard enough to overdrive the PSU, and it shuts off.
The solution in both cases is the same: you overbuy on PSUs. A good high-wattage-rated power supply (whether a USB one or a desktop molex one) will power anything below that wattage requirement just fine. USB PSUs do negotiate power draw with the client device, so you can run a Pi off a big-brick laptop-class USB charger without damaging it.
And that’s mostly why Raspberry uses USB power, I think: if you already have a big beefy USB PSU from something else (as most early-market adopters do), you can use it to power your Pi for playing around, without having to buy the Pi its own PSU, if you’re not sure you want/need to set it up for its own standalone use-case.
(Also, the Pi will run just fine on a wimpy 5V1A iPhone charger if you don’t tax it very hard. Just like a cheap desktop PSU will power a gaming rig with a beefy GPU, if you never open a game. And most embedded use cases, e.g. PiHole, don’t tax the Pi very hard. So there’s a lot of cases where people get along just fine with the cheapest possible configuration, where forcing them to buy an actual power adapter would make things a lot more expensive for no gain.)
> or they could design Pis to use less power
You know that they stop selling old-model Pi’s, right? It’s not because they want to. It’s because those chips stop being manufactured upstream; and Raspberry doesn’t do enough volume to drive production of SoCs all on their own.
Raspberry is constrained by what parts they can put in a Pi that are both available and sufficient for the use-cases their customers have (e.g. driving monitors at native resolution.) Those chips have minimum power requirements. The power requirements never go down, because there’s no high-volume customer with exactly Raspberry’s use-case (where that use-case is “using process-shrinks to build a graphical desktop SoC of the same performance at ever-lower current draw, rather than achieving ever-higher performance at the same current draw.” An SoC process-shrink that is taken as-is with no commensurate re-layout for increased perf, is extremely rare in the industry. Not rare in microcontrollers, but an MCU can’t drive a desktop computer.)
You might suggest they undervolt the newer chips — and they do! — but there’s only so far you can undervolt a chip before it just stops functioning at all. (Especially an SoC, that contains DRAM that must get refreshed, IO controllers that must drive peripheral lines with to-spec line voltage, etc.)
I'm just nitpicking your otherwise great post here but wouldn't the IO voltages be entirely separate from the core voltage? Or do they all need to be kept within a certain range of each other?
Is it such a terrible "learning" Experience that yanking the power cable out is a bad idea as others have said the pi's should have better power supplies.
I believe the compute module is somewhat better in that it uses eMMC rather than SD cards.
It was built like a tank.
- https://electronics.stackexchange.com/questions/27619/is-it-... - https://www.reddit.com/r/raspberry_pi/comments/ex7dvo/quick_...
microSD is a mess in this regard. Wear leveling is less common there and only present in very specific and expensive niche models.
[1]https://www.amazon.com/SanDisk-Industrial-MicroSD-UHS-I-SDSD...
RPi3+ has had no problem so far, and I'm not upgrading to RPi4 out of fear of it becoming an unstable mess again.
My guess: The VL805 USB 3.0 UAS is broken.
I've stopped complaining because I already know how the issue manifests and how to solve it.
A SD-card is not a proper replacement for a drive, it's a fine storage medium.
USB could remain available through USB OTG and it would sit in the middle between the RPi4 and the Compute Module 4. Using the USB power socket for OTG is doable already on the Pi4, but to do it in a fully supported way would need some extra components to properly handle USB-C configuration. Still cheaper than an H2plus
Whilst education is still important, particularly on the charity side, these days the RPi Trading division explicitly targets multiple markets, for instance, the compute boards specifically targeted at industrial usage. This product is described in their own press release as targeting the christmas toy market amongst others.
MMC and TransFlash at this point is a synonym for SD Card when someone cannot refer to them for license/certification reasons.
The alternatives to RPi don't have nearly as rich selection of polished software, vibrant community and ecosystem as Raspberry Pi has. The best parts (besides hacker-orientedness) of RPi are its uniformness and popularity.
But yeah, I would also love this to be built in on something like the RPI. Closest option according to my research is probably the Rock Pi, but then it's not really straight forward to boot from it etc...
[0]: https://www.raspberrypi.org/products/compute-module-4/ [1]: https://www.raspberrypi.org/products/compute-module-4-io-boa...
https://www.pine64.org/clusterboard/
It's a bit sad the Pi foundation dropped the DDR form factor, though, it was a good idea IMO.
For this, they could have gone with an EOMA68 form-factor, that would have been awesome: https://www.crowdsupply.com/eoma68/micro-desktop
It also has a firmware bug where it cannot boot unless there is an (empty, unused) SD card in the slot, which is annoying!
[1] https://rwmj.wordpress.com/2020/09/24/raspberry-pi-4-running...
The Samsung T5 and T7 are frighteningly fast USB-attached portable SSDs - some simple tests of mine had them at around 335MB/s. On paper the T7 should be twice as fast, so it's interesting that they tested so close (the T5 was even a little faster, as high as 350MB/s), but they are both totally good enough.
It sounds like literally all your problems would be addressed by using the official power supply and a USB-connected SSD - although your problems might very well be solved just by using the official power supply and a decent SD card.
SATA and NVMe interfaces are something some nerds who aren't the target audience for this hardware would like but they don't address the real-world problems you mentioned at all.
Geekworm Raspberry Pi 4 X872 M.2 NVMe SSD Expansion Board Compatible with Raspberry Pi 4 Model B only, Support X735/X710/X765/X725
I used to have the low-power indicator show up all the time in the past, but it seems the usb-c power supply has resolved that.
Additionally usb boot + usb3 speed has made running completely off of usb instead of sd a good solution. There are also pretty fast yet small form factor drives like the samsung fit to choose from as far as physical size.
Gives you an option to install os on external storage. You can set it up to dual boot multiple distros if you wanted.
I agree pi4 would benefit from better storage options, but for the money it's still a impressive package.
RPi4 is great... small cheap, basically a full pc in a small box, with low power usage, low heat production, no noise, and yes... with a shitty storage solution.
GPIO is a bit trickier, since most devices don't break it out, but for some purposes the audio jack is usable. There's also USB-GPIO adapters but they can be a bit pricey (although if you're interfacing with something like an ESP32 BLE works really well)
(M600, sort of a NUC)