It’s like $100 per board now once you add a power supply and a case. More if you also add storage. Cheapest Intel system on Amazon is $139. The whole point of the entire thing was its affordability. That was kind of lost along the way.
The lower-end, power-efficient market is being rapidly devoured by the ESP32. A $20 Pi will still use much more power than an ESP32 while also being less reliable and still 3x the price.
The RPi company looked into the future and saw microcontrollers eating the lower end of the market, which is why they are now chasing performance.
Unfortunately IMO they are not executing on this well. The RPi 5 requires 5V at 5 amps to run properly. It's now near-impossible to run via the 5V header pins, no existing power supplies can support it, and at 25W of power consumption the Intel systems you mention are now serious competition.
They designed and built their own microcontroller. This chasing performance narrative doesn't make sense.
And let's be real, it doesn't have 25W power consumption. You can attach enough things to it to get to 25W if you try really hard but that's hardly the same thing. The latest cheapo Intel parts are contenders (at ~10W, where the pi 5 actually operates) and if you just want perf you're better off with that. But if you want a low-level connectivity, a rich community, docs, and tailor-made projects, you still want a pi.
The RP2040 isn't a very compelling microcontroller though. The only interesting thing about it is the programmable peripherals, but we've seen that before, e.g. from XMOS and in practice the protocols & peripherals you're going to use 99.9% of the time are completely standard - I2C, SPI, I2S, UART, counters/PWM, etc. For the rare case you need something custom and high speed there are really cheap FPGAs now.
The ESP32 supports all of those protocols and Wifi and Bluetooth, and it has low power sleep modes. And there are RISC-V versions which is quite nice from a a warm fuzzy point of view.
I think RPi still has a place for hobby electronics projects where you want GPIO. I don't think people are going to use it as a standard computer (desktop / media server / etc) though.
> I think RPi still has a place for hobby electronics projects where you want GPIO.
But any sane design would offload the IO to a more capable MCU that has more than a single SPI channel, among other weird limitations.. Sure, hobbyists often do weird things, but the niche for RPi is pretty much 'basically a computer, but you could theoretically blink an LED' - the actual experience of using those peripherals is much worse that what you'd have in Arduino or Platformio. Try attaching an interrupt handler to a GPIO pin on Linux, now you need to write a kernel module :)
RPi's niche is really as an SBC supported by mainline Linux and a giant community. That's why it had supply shortages - that's a huge value add to the electronics industry and the money was too good to resist pivoting to commercial users over education and hobbyists. Grabbing an Altium/KiCad/etc footprint and slapping a compute module on a board while prototyping with a Pi is still the fastest way to go to market with a well supported Linux CPU. All the other manufacturers have really really shitty BSPs in comparison, even if you're just offloading everything realtime to an MCU.
ESP32/ESPHome may have taken over the lower end with its easy config but there's still no real Pi competitor. A decade after the first RPi release, I still dread using any other platform when I have to design a board that requires more compute than an ESP32.
> All the other manufacturers have really really shitty BSPs in comparison, even if you're just offloading everything realtime to an MCU.
The irony here is that other SOC/SBC makers are focused more on throwing a barely stable design onto AliExpress for $20 than investing in good upstream support that would allow them to charge a premium.
Raspberry Pi wasn't always able to charge a premium, that benefit came from years of investment into software and community. I have not yet seen another SOC vendor or board partner realize this in any significant way.
> The TS-7250-V3 is an industrial grade SBC based on the NXP i.MX 6UL with a 696MHz Arm® Cortex®-A7 core and 512 MB or 1 GB DDR3 RAM
This is their latest "High performance industrial grade embedded computer" that I can see on their website
Of course you'll have good upstream support for something as old as the i.MX6UL, it's been out for 8 years (7 years at the time they released the TS-7250-V3).
No wonder Raspberry Pi has upended the market, when a single core Cortex-A7 is the competition.
Even an Allwinner chip that has a terrible BSP at release has good upstream support 7 years later.
> All the other manufacturers have really really shitty BSPs in comparison,
I disagree.
The NXP (i.MX line) and the TI (am62x) and the STM32 MP1/2 all have good mainline support.
What you say is true of most of the Chineese chips and of mobile chips but if you go with mainstream suppliers targeting the industrial / automative markets these days mainline Linux support is good at the SoC level. At the SoM level some are better than others but it's not that hard to pull the approriate DTS into your mainline kernel build even if it isn't already upstream.
RPi is probably better for hobbyists but that's not due to the mainline status but a community more in tune with hobbyists than the more industrial products.
I've built professional embedded Linux systems based in i.MX5/6/8 and STM32MP1 with mainline based BSP rather than vendor stuff but have only ever used the RPi for one off tools.
> the niche for RPi is pretty much 'basically a computer, but you could theoretically blink an LED'
I honestly think that's where most of the demand is. It's an aspirational product, like a jacket you could theoretically go up a mountain in or a watch that works underwater or whatever.
That's not an interrupt but an event sent from kernel's gpio subsystem. It may skip some events and there's not much guarantee on the delay between the interrupt itself and event userspace gets.
XMOS was around for a long time, but for whatever reason I never saw it used much. There are so many RP2040 projects floating around on github now, showcasing the programmable IO ports. That's very helpful if you want to tinker with something yourself.
RISC-V. But really ARM is a totally legit choice at the moment, not out of touch at all, and I say that working for a RISC-V company.
The entire ARM ecosystem is far more mature than RISC-V, plus the main RPis are ARM so they have experience with it and probably access to ARM people.
The main reasons to use RISC-V currently are cost and customisability. There are also some quite high quality open source RISC-V cores you can use off the shelf.
RISC-V is only really directly helpful for those building their own silicon (sure "anyone" can implement a RISV-V core in a FPGA but that won't give you the performance of an ASIC).
If you just want to buy a chip and put it on your own board you don't really care that much about the ISA as long as the toolchain, bootloader, kernel support is there and stable (which is pretty much the case with RISC-V now).
But if you're desiging your own silicon the ability to make or modify an existing open source RISC-V implementation can give you the flexibility that currenlty only the very largest players in the ARM ecosystem that have architecture licenses have (I think that's pretty much limited to Apple, Qualcomm, Samsung).
I expect the smaller but important players like NXP, ST, TI will be bringing out RISC-V chips taking advantage of this.
ARM have also been talking about making their fees dependant on the price of the final product so that could also push people to RISC-V, not just to pay less but also to not have to jump through the hoops that would be required to provide all the information to do that.
Yes, they made a microcontroller to compete with the ESP32, but the ESP32 has orders of magnitude more market share and ecosystem. Not to diminish what they accomplished with the RP2040; it's an impressive chip.
But as for whether they're chasing performance, the RP2040 isn't their flagship product. The Pi 5 is.
And I've had a Pi 5, under heavy CPU (not peripheral) load, start throwing undervoltage warnings when using a 5V3A power supply from a Pi 4.
Idle power draw (at wall): 1.8 W (See note)
Maximum simulated power draw (stress-ng --matrix 0): 9.7 W
During Geekbench multicore benchmark: 7.9 W
During top500 HPL benchmark: 11 W (2.75 Gflops/W)
Agreed, just the other day i ran a pi 5 with official power supply through a kill-a-watt while watching youtube etc and it was generally below 10 W at the plug
The ESP32 is not the real threat. The real threat are new integrated chips from small Chinese companies that are coming down the pipeline - like the SG2002. They run RISC-V, have integrated RAM and run Linux.
They greatly simplify the whole SBC and effectively bridging the gap between RPis and Arduino - in cost and easy of use
It's not a full desktop experience, but they're running full Ubuntu - so you code on your laptop and it'll run on the thing - run whatever language you want and blink lights, shoot out emails or do whatever other hobby projects you want using your desktop dev environment. No fiddling with icky micro Arduino/ESP32 libs.
RPi have shown themselves to be a Broadcom shop - so their product direction is dictated by Broadcom's chip offerings
The problem with the Chinese SBCs is lack of up-to-date LINUX support. Chip manufacturers are eager to provide Android support, but don't care a great deal about Linux support, which is, for them, a tiny niche market. Android will run on significantly out of date kernels, so the chip makers typically bump their kernels to the minimum Linux kernel version required to run a reasonable modern Android. Their Linux ports are based on Android kernels, so they lag significantly behind. And SBC manufacturers just use the kernels provided by the chipset manufacturer. The recent Orange Pi Rockwell-based SBCs, for example, shipped with a 4.x Linux kernel for their Linux port, at a point in time where Raspberry Pi OS was using a 6.x kernel.
Raspberry Pis do lag too, but they have significantly newer kernels, and are supported directly by several mainline distros.
I've chased a number of alternatives to Raspberry Pi in the interval where Rockwell SBCs were beating the pants off Pi 4s, only to find that they were shipping 4.x Linux kernels. My particular application uses USB audio devices, which don't really work prior to extensive rewrites of the USB audio stack in the 5.15 kernel. Raspberry Pi OS kernels are 6.1 or better. And Ubuntu on raspberry PI has later kernels than that (not sure which currently). Versions of Linux prior to 5.15 supported very old USB Audio 1.0 devices, but not currently available USB Audio 1.1 devices.
I imagine you would run into significant problems with video drivers being out of date on non-Pi devices as well. Raspberry Pi had to do their own Vulkan port, which seemed to require significant development effort.
I don't think that's likely to change soon. Rockwell doesn't really have a strong incentive to improve their kernel ports beyond what's necessary to support Android. And smaller SBC manufacturers aren't likely to have the resources to do a kernel port themselves.
You're not wrong.. but I also somehow doubt this is a dealbreaker. The reality is that nobody typically really cares about the kernel version they're running. It just rarely comes to bite you (like in your example). There are often vague security implications - but they always feel mostly theoretical
Furthermore if the platform is popular enough the community starts to step in. You can even see in the comments section of the previous link:
Furthermore, b/c unlike Broadcom/Rpi chips, these chips are widely available for commercial use - I'm gunna guess 3rd party companies are more likely to dedicate resources to maintain the software stack (even if the chip manufacturer is doing a crappy job of it)
Does llvm have good riscv support for cross compiling? In my experience, even aarch64 isn't universally supported as a cross compiling target and building on embedded devices is an exercise in patience. I never even considered trying riscv chips in production since I assumed libs would be a hassle.
Even on rpi4, it's near impossible for a normal person to use the gpu because videocore6 is so locked down that you get zero lib support or documentation. And I'm pretty sure the only assembler is still from reverse engineering instead of the manfr.
I think it's the right time for IPO. RISC-V development is making huge progress fast. They are also upstreaming some changes. While SG200x is quite old and has unfinished Vector 0.7 extension, new chips claim to have vector 1.0. The documentation is still lacking but their progress is clearly visible.
I think this hits the nail on the head, especially longer term. It's hard to compete with this level of low-cost production with steadily improving specs. Raspberry Pi seems caught in the middle with getting more powerful and expensive in a market that wants either very powerful/expensive or good enough/supercheap. Even a pretty full "desktop" mini computer R7/32MB etc is down to $300 and change. If RAPI files for an IPO I'll be keen to see what kind of margins they are generating.
I've used both RPi and microcontrollers, though my last RPi purchase was for a unit that's been running my home file server for years.
My thought is that they cater to different uses, because RPi (and its ilk) support an operating system. So you can decide whether you need or want an OS or not. For instance my file server benefits from all of the networking, file system, and so forth, of Linux. It supports, at the very least, a workable UI for setup and diagnostics via SSH and a terminal program.
A microcontroller is preferable for applications where you don't need a full blown OS, and where the size, cost, or power consumption of something like an RPi are burdens.
In some cases, an RPi is overkill but provides the convenience of hosting things like onboard dev tools. And unit cost isn't as much of an issue if you're not planning on selling or duplicating something. And an additional option is a microcontroller running as a peripheral to a full blown PC, where you get the benefits of the GPIO, but the comfort of desktop software tools.
My general advice for those getting into hardware-related hacking is to give both a try and develop your own taste for which one is preferable for which use.
To pile on here, every Pi I have used (like a dozen at this point) worked fine for years, Pi 5 bricked itself randomly within 4 months of purchase with the complete accessory sets installed (coolers/case etc.)
Left a bad taste to blow my savings as a student on the newest and greatest Pi to tinker around with, and it bricks, when the second hand heavily used 4s and 3Bs work fine with constant years of use.
The ESP32 seems like a very different product to me. The pi has megabytes/gigabytes of memory and can reasonably run linux. Were people really using them for the same things?
I've personally used Pis for things much better suited to microcontrollers, many many times, purely because I understood Linux and did not understand how to program microcontrollers.
Now, the tooling around ESP32s is so good that that's no longer a reason. I would never reach for a Pi over an ESP32 unless I need something an ESP cannot offer, like USB ports or compute or gigabytes of memory.
> I've personally used Pis for things much better suited to microcontrollers, many many times, purely because I understood Linux and did not understand how to program microcontrollers.
This describes my trajectory over the last 10 years with the Pi perfectly too. I think a lot of people have jammed a small SBC like the Pi into what should be a micro-controller shaped problem hole, because it's comfortable and familiar.
It's just like hacking software at a dev day job, and it runs a Linux distro everyone is super comfortable with. It has GPIO you can learn how to call from any language you like, I already know ssh/systemd/apt etc etc. It will get the job done, albeit often less efficiently and reliably than a microcontroller, and I didn't have to spend a lot of time learning things.
I also think the huge success of ESP32 in the last few years has meant you don't see SBCs being used for what should be micro-controller problems as much in general anymore. Ten years ago, you regularly saw Pi 1/2 etc in this role in a lot of projects online. Speaking for myself, I avoided Arduino in the early years because I didn't want to step out of my lane etc.
Agree with everything you said. To expand on this:
> Speaking for myself, I avoided Arduino in the early years because I didn't want to step out of my lane etc.
Personally the reason I've avoided Arduino is the absolute pain in the butt that it used to be to get it connected to a network. Almost everything I build benefits from some sort of connectivity, and the Arduino was only really good for things that were purely offline. Even before the Pis had wifi, they had ethernet and I could just plug them in.
And now that ESP32 exists there's no reason to buy the wifi-enabled arduinos they now make, at 8x the price.
I think the Pi is for people who want to run Linux and also be able to direct-drive voltage pins. Cheap intel systems are way better at running linux, and esp32s are way better at driving the voltage pins, but the former doesn’t offer easy hardware-pin accessibility through python and the latter has you figuring out which filesystem library to compile into your binary.
> the latter has you figuring out which filesystem library to compile into your binary
For what many people are doing with them, ESPHome has simplified the process to programming an ESP32 to do what they want down to nearly nothing.
"Running Linux and being able to direct-drive voltage pins" is certainly still an existing market, but it is rapidly being encroached upon in both directions.
Yes! This is the space PI is still best for, in my opinion. The intel SBC achieve GPIO by adding a microcontroller to the board (as far as I know), but with PI you can drive those pins directly.
The ESP32 is meeting the needs of people doing IOT things that they used to do on the Pi.
Why deploy a $25 Pi for a custom weather controller that uses ~2.5w, when a $5 ESP can can do the same thing on 25mW, and run off a battery?
ESP32 is obviously not a desktop or server platform. Personally, I don’t think Pi’s are either: flaky and fussy power requirements, and packages aren’t always cross compiled to arm64. I’ve wasted enough time compiling my own packages, and encountered my share of random issues that I’ll never use it as a server platform again.
Maybe off-topic, but are there good solutions for esp32/other microcontrollers controlling zigbee devices ?
I found a bunch of libraries (e.g., https://github.com/espressif/esp-zigbee-sdk), but nothing that seems easily usable as a zigbee controller/hub to flip switches in the house, out of the box.
OTOH, running home assistant on a pi is monstrous: overly general and bloated for my use case, need a beefy Pi to get decent performance and not need >1 minute to reboot after a power outage.
> Were people really using them for the same things?
No, generally not. Sure, there is overlap. The power requirements, processing elements, available peripherals, storage capacity, form factors, tool chains and cost are all in very different classes, however.
That’s probably an N100. Its actual TDP is 15 watts, but it works reasonably well when capped at 6W.
They are good devices, but they are bigger than Pi and are whiny. Their fans never turns off and creates background noise. I have quite a few of them.
On the other hand, Pi’s 25W contains tons of overhead for other devices. A 5TB external hard drive still requires way more power than a 1 TB one or an SSD.
I stand corrected, one is like that thing, no fan
The other is a T9 mini PC. It is really small with 2 network ports. It apparently has a fan. I have never heard it. Which is significant to me because I also have some NUCs and those are the only fans in my office and they are annoying in the silence.
> The whole point of the entire thing was its affordability
No, not really. If it was just affordability you could buy a used ProLiant server for the same price on Facebook Marketplace and have 20x the computing power.
Raspi has been about the perfect balance of: power consumption, affordability, form factor, and computational capability all in one.
If you can manage your project with a unit that is roughly 2x the form factor, you can get the same power consumption (less?!) with an N100, at the same cost, but double the processing power: https://www.cpu-monkey.com/en/compare_cpu-raspberry_pi_5_b_b...
No, it was absolutely about affordability and education. Pi was never about compute power, it was focused on a general purpose CPU that ran Linux and had I/O that enabled tinkering.
They lost their way trying to cater to businesses that wanted Pis to drive digital signage or be the basis of some IoT deployment.
"The Raspberry Pi Foundation is a UK registered charity [...] We plan to develop, manufacture and distribute an ultra-low-cost computer, for use in teaching computer programming to children. We expect this computer to have many other applications both in the developed and the developing world."
This was also the appeal, despite using binary blobs and some incredibly unfortunate design decisions (ethernet over USB for example), people loved these little things because they were cheap to a fault- intended to be almost disposable for education purposes. All can be forgiven with cost saving as the goal.
That has definitely been lost; they are still excellent education devices, but at the pricepoint I would have a pit in my stomach buying a couple hundred for students… assuming I could even get them of course.
It's something like "the iphone" of SBCs at this point. Many others are using it and writing about it specifically, and it's pretty damn commodity. If you break one, another can (since the supply crunch) be sourced pretty quickly and easily and just dropped in where the old one was.
Latest Raspberry Pis are expensive but also quite powerful. If you want a cheap single board computer that can run Linux, you have the Pi Zero ($15). You also have the Pico ($4), which is an alternative to the ESP32.
I find this amazon obsession with people on the internet (I assume Americans) to be baffling and disturbing, it's always amazon this, prime that everytime the concept of purchasing something online comes up.
Mouser has the Zero for 15$, 16$ if you want presoldered GPIO headers. 4$ for a Pico. RS Online has them for 4.25$. There are probably hundreds of vendors that offer them for the same price if you plop the term into your favorite search engine. Amazon is the last place I'd look, but then again I absolutely do not understand this mindset that online shopping == amazon that some people seem to have.
Amazon usually reflects the final cost of an item.
If amazon is overpriced, the item might not be available from other channels/requires lots of work to get.
Another (related) point is that amazon is less risky than other options. You can usually get something cheaper from ebay/alibaba/banggood/etc
Somebody always has some nitpicky example, but in my experience amazon has reliable shipping and a predictable low-friction way of getting a replacement or your money back if something goes wrong.
Fair enough, but I do not understand why people seem to put so much trust in Amazon. Ali et. al. is of course a crapshoot every time, based on the threads that pop up here every few weeks Amazon seems to be an endless supply of poor quality goods, counterfeits and whatnot as well.
Was looking for a specific computer part not that long ago and only place I found indicating stock was seller on Amazon.
Never shopped there before but finally bit the bullet and made an account.
Deposited $300 gift card. Amazon blocked my account completely (can not even contact support) and not long after got an email telling me it's due to sanctions suspicion and they require full KYC (including proof of residency and employment!) before I can ever see my $300 back again. I really don't have the energy to fight them for it...
Still asked a friend with existing Amazon account to order it for me. The seller cancelled the order saying "out of stock".
Our thesis is that seller is a money laundering front without actual product. Somehow Amazon's not closing their accounts, though....
With $8 shipping that will take ??? days. Meanwhile they have one for $19 on Amazon with two day shipping and no need to register on some other site for a one-off purchase.
Free shipping after some amount (varies with where you are in the world apparently) and I get my parcels from Mouser in 2-3 days shipped over the Atlantic. RS is even faster.
I thought the point of RPi s easy connectivity to spi, i2c, pwm, and gpio with a powerful(1) filesystem and network stack behind it. What easy way to give a NUC spi, i2c, pwm, and gpio?
Adafruit sells a $15 board to let you use spi, i2c and gpio over USB. It also has their connector for easy i2c expansion with their family of sensors and breakouts.
You should have a much harder time believing a Pi 5 draws 25w in this comparison. 6w from a small form factor N4000 Intel system is perfectly achievable.
I can get a 1GB Pi3 model B shipped to my door for £27 which will run off of any mobile phone charger from the last five years (heck, I just plug mine directly into the USB socket built into the wall outlet) and connect it to any TV from the last ten years with a £2 HDMI cable.
Affordability is gone, sure. But there are many other virtues of the platform. Low heat, power consumption, heat, weight, physical dimensions, and integration.