10 ms·
There is no sane reason which would explain why you should not have bought a Pi. Open or not it would not make any difference to more than a small room full of
by superflyguy 10y ago
There is no sane reason which would explain why you should not have bought a Pi. Open or not it would not make any difference to more than a small room full of people. A bunch of people spent years designing hardware and negotiating with people to get the Pi built at a low cost and it's become the best selling UK computer ever with over 10,000,000 sales. It's succeeded at what it was supposed to do; provide an educational platform for kids.
- paulmd 10y agoIt's really doubtful that more than a tiny fraction of RPi sales have gone to kids. Be honest here, whatever the RPi Foundation's marketing, the overwhelming majority have gone to hobbyists. The RPi is uniquely unsuited to an educational environment anyway. The SD cards are unreliable, especially in combination with the RPi's poor power filtering and the cheapo phone adapters it's usually paired with. Anyone who has used a RPi has had to deal with filesystem corruption and SD card failures, intermittent USB bus brownouts, etc, and I can only imagine the nightmare of having to maintain a lab with 50 of the things. You can't PXE boot them (let alone remote-manage them) because they have no BIOS, just a blob on a physical card that needs to be swapped out. The Pi should have had eMMC day one, and shipped with a proper power adapter and better power filtering. But much like their choice of Broadcom SoCs - they made a political decision that they were going to market primarily around the $35 price point, and so they cheaped out on $5-10 worth of hardware and ended up with a device that was entirely unsuitable for their stated purpose. And the terrible thing is - the PC is not the sole component in the system anyway. The Pi still needs a case, a a monitor, keyboard, switches, etc, and if you are trying to stand up a lab for the first time it's not like you have 50 monitors or keyboards laying around for free, you need to buy those. So you are looking at more like $150 per system anyway, and the $10 you save on cheaping out on the hardware becomes a meaningless fraction of the total cost. Just buy the right hardware the first time. An ECS Liva is only like $75 anyway, it comes with a case, onboard eMMC, AC adapter, and wifi, you've made up the difference in cost in accessories included in the box. There were many other terrible design decisions as well - such as the choice of USB as a system bus, which is again entirely unsuitable, especially when you are running on a low-power processor where running the USB bus full-tilt eats a significant fraction of your CPU cycles. It's like that shitty Mac Performa x200 road-apple design with the split half-width left-hand/right-hand busses which couldn't talk to each other, it eats up all your cycles by just using your disk or network. Even if the processor on other boards is no faster in synthetic benchmarks - they have a proper system architecture with SATA and often USB 3.0 and gigabit ethernet that makes an enormous difference in real-world performance. http://lowendmac.com/2014/power-mac-and-performa-x200-road-apples/ http://lowendmac.com/2014/power-mac-and-performa-x200-road-a... Furthermore - the Pi was plagued by driver problems with its USB stack for years. It would randomly drop USB frames when operated at USB 2.0 speeds, and it took upwards of 2 years after launch for the Pi foundation to get around to pushing a fix (again, because they chose a processor for which they could not release documentation, and they did not employ enough staff to actually fix their issues). How on earth are you supposed to do education on it when they can't even get their system bus to be stable? https://www.raspberrypi.org/forums/viewtopic.php?t=5249 https://www.raspberrypi.org/forums/viewtopic.php?t=5249 https://github.com/raspberrypi/firmware/issues/19 https://github.com/raspberrypi/firmware/issues/19 https://github.com/raspberrypi/firmware/issues/9 https://github.com/raspberrypi/firmware/issues/9 You know what I would do if I was running an actual lab? ECS Liva Xs, or other cheapo x86 PCs running a standard stack. Or go down to your university surplus store and pick up as many generic Dell boxes as you need for $50 apiece, out the door, ready to work. The Pi is good for embedded hobbyist work (the i2c interface is very powerful), but it totally fails as a machine for teaching programming compared to Ye Olde White Box. I tried to run a pair of RPis as my fileservers for about a year and a half, and I finally just gave up and sold them. They aren't good for the "mini Linux PC" application at all, compared to properly-designed hardware that you can buy for only a little bit more money (or sometimes even less money, especially when you work out the total system cost). (note: Pi3s can finally PXE boot without a SD card, which is like the bare minimum requirement for running an educational PC lab without going insane)
- technion 10y agoSD card failures I'd love someone knowledgeable to explain why this happens. According to general opinion on the RPi forums, it's because SD card manufacturers cheap out all the time. I'd have something like a dozen SD cards running things like cameras over the years, and probably a hundred booting ESXi servers. And I've never seen a failure. Across three RPis, I've bought about seven SD cards, and from everything RPi users tell me, that's a totally normal failure rate. Edit: In regards to cheap whiteboxes, no such options allow access to GPIO ports. I've learn plenty of interesting things about soldering circuits by having these, without considering the Pi a PC learning tool.
- floatboth 10y agoYeah… also in particular microSD cards have been used in mobile phones for years and I haven't heard any card corruption stories about phones.
- deleted 10y ago[deleted]
- paulmd 10y ago> Across three RPis, I've bought about seven SD cards, and from everything RPi users tell me, that's a totally normal failure rate. Sounds about right. I went through maybe 4-6 cards on 2 Raspberry Pis in a year and a half. > I'd love someone knowledgeable to explain why this happens. According to general opinion on the RPi forums, it's because SD card manufacturers cheap out all the time SD cards are basically uniquely ill-suited to be used in a Raspberry Pi. First off, cheap SD cards have no wear levelling. The flash controllers are super primitive. They are designed to be written sequentially until full, and erased, like you would use a camera. A regular Linux operating system is not designed to moderate its writes, it will happily do all kinds of work and logging on /var and other places, doing tons of heavy random writes that put tons of wear on the card (write amplification/etc), and there is no levelling taking place. The flash cells just burn out. Real mobile OSs are much smarter about what they write to flash, and they have eMMC that usually has at least a slightly smarter controller optimized for more random-ish loads, and/or is totally under the CPU's control with a filesystem designed to work with flash. Next, flash doesn't like to be powered off during erases or writes. In some cases it can actually corrupt operations that were successfully completed. The flash cells do not get as much charge as they should and can decay prematurely. Nor does flash like operating under questionable power conditions either. The flash can think it's successfully completed the operation, the processor will keep on trucking, but if the voltage drooped too much, the write doesn't persist. In some cases, this can cause the flash to get trapped in a "bricked" state that needs a hard reset to clear properly (which can't be done with a SD card). http://superuser.com/questions/290060/can-flash-memory-be-physically-damaged-if-power-is-interrupted-while-writing http://superuser.com/questions/290060/can-flash-memory-be-ph... The Pi also has no/very little power filtering. Your phone doesn't ever run off the charger. It uses the adapter to charge the battery and/or feed the regulator circuit, the key being there is a regulator circuit here. The Pi does not have one. In short - the Pi is an absolute worst case in terms of power. Your average camera or phone has a battery, so the power is clean, full-on power faults are quite uncommon, and the device can monitor voltage and stop doing writes before things get critical. Not only is it really, really easy to accidentally or purposefully unplug the Pi, or flip the power strip off, but the shit-tier phone chargers that get used with it have terrible power filtering and tend to have wildly insufficient power delivery capacity. Under load, the voltage droops and the noise on the power line gets pretty intense. With the first-gen Pis, there was an additional physical issue with the SD cards. The cards are just made of plastic, they are meant to go into a slot in a camera or phone that physically supports them, they are not intended to just hang off into space. The Pi does actually get fairly warm, especially if you have it in a case, and hot plastic warps. The card loses contact half-way through a write and there goes your file system. http://likemagicappears.com/2014/03/11/sd_card_issues/ http://likemagicappears.com/2014/03/11/sd_card_issues/ https://www.raspberrypi.org/forums/viewtopic.php?t=39843&p=327342 https://www.raspberrypi.org/forums/viewtopic.php?t=39843&p=3... https://bigdanzblog.wordpress.com/2015/01/27/raspberry-pi-fails-to-boot-red-light-only-due-to-warped-sd-card/ https://bigdanzblog.wordpress.com/2015/01/27/raspberry-pi-fa... Adding a "UPS" board that can command a soft-poweroff, a decent microSD card (Samsung EVO are reputedly the most reliable on a Pi), and a "low-profile" microSD adapter that doesn't hang off into space quite as much reportedly make a pretty big difference in reliability, as does using a purpose-built adapter from a reputable vendor like Adafruit or something. Not running it in a case probably helps too. Again though, once you spend the money to fix the flaws, you could just buy something that just includes what you need to boot up right in the box. I really can't emphasize enough how much all of this is actually the result of poor design. If the Pi Foundation would have chucked a 2 GB eMMC chip on there and added a barrel connector and a decent power supply, these issues would be essentially eliminated. And IMO the issues are pretty much show-stoppers for any chance of reliable operation. > In regards to cheap whiteboxes, no such options allow access to GPIO ports. I've learn plenty of interesting things about soldering circuits by having these, without considering the Pi a PC learning tool. That's definitely true, but you can also buy a Bus Pirate that will be capable of adapting most simple embedded units to any PC. You really only need the Pi's GPIOs when you are doing something that involves really high throughput or really low latency. The examples I've heard are video streams and using a GPS board as a reference for an NTP server - they exist, but for your every day "talk SPI/I2C to a sensor" or "count freqency counts from a sensor" the Bus Pirate does very well.
- bostand 10y agoCounterpoint: The pi runs Linux inefficiently, draws too much power and gets too hot. All of these could probably have been fixed with minimal support from broadcom (and a bit more open thinking from them during the design). Open source is not a crazy idea by a bunch of fanatics, it had real world implications.
- christina_b 10y ago>All of these could probably have been fixed with minimal support from broadcom (and a bit more open thinking from them during the design). Support from Broadcom is unlikely to fix it, the BCM283x family of SoCs are just a huge mess and in my opinion are either suited for really specific applications (TV boxes) or as "toys". The ARM core itself is integrated very poorly almost as an afterthought, since it wasn't in the original design, the BCM283x family is just BCM27xx family VideoCore4 VPU+QPU combinations with an ARM core hacked (and I really do mean hacked) on top.
- bostand 10y agoYes, 2837 is a 1995 soc design with a 64-bit quadcore forced into it. Their multicore support was probably thrown together in an afternoon by a junior asic designer on a hangover. But some of the issues could have been worked around with better documentation.
- kingosticks 10y agoOut of interest, what is your situation where it 'draws too much power and gets too hot'?
- Girlang 10y agoI agree with you. The Pi is wonderful, we have half a dozen running at our company (including handling the phone system), and I've probably given two dozen as gifts to young people who want to get started in programming. Open shmopen. It's open where it matters. You can take all the code _you_ develop for it and run it easily on other platforms, too.