You asked, he answered!What is the future of manufacturing in the UK?
Raspberry Pi founder and CEO Eben Upton has responded to questions submitted by Slashdot readers. Read on for his answers.
Raspberry Pi founder and CEO Eben Upton has responded to questions submitted by Slashdot readers. Read on for his answers.
The Raspberry Pi is quite famously manufactured in the UK. Is this still a long term strategy or have recent events such as the Brexit and the rise of Pi competitors forced a review of the future of manufacturing in the UK?
EU: We've always said that we build Raspberry Pi in the UK because it makes economic sense, not because we are patriotic. That continues to be the case, and interestingly the short term exchange rate movements following the Brexit vote have made UK manufacturing more competitive, not less. I don't believe we'll see significant tariff barriers to importing Raspberry Pi into mainland Europe from the UK post-Brexit: remember we export successfully to lots of places (US, Japan, China) with whom the EU doesn't have a free trade deal.
Chinese manufacture makes sense if you're building for the Far Eastern market, as many of the board components come from there and it's not necessarily economic to ship parts to the UK and then finished product all the way back. In the case of low-touch products for sale in Europe and North America, serious tier-one manufacturers like Sony can achieve lower total cost. I strongly believe that a lot of companies continue to offshore to China out of a sort of superstitious belief, not because it actually makes sense.
So no, I don't think we will stop manufacturing in the UK any time soon.
Do you feel that...
by Anonymous Coward
the RE'd open source VC4 firmware, once feature complete, will finally quell open source advocates dislike of your claims that the Pi was a 'fully' open source system by allowing them to run their own software at all levels of Pi operation? If so, do you foresee any changes being made by Broadcom in future revisions of the VC4 that will "intentionally" break compatibility with the initialization code or see keyed firmware signing required at some or all levels of the Pi hardware, as has happened on Intel, AMD, and a variety of other ARM SoCs?
EU: Well, first-off: . I don't think that I have ever claimed that the Pi was a fully open-source system: we don't have an ideology here, so we're able to be open in places where it makes sense for the platform and closed in others. That said, the open firmware project, and some of the techniques they've used to figure out what the firmware needs to do, is pretty neat, and it's certainly possible that over time it will approach feature parity with the closed firmware.
We have no intention of introducing signed firmware for the Raspberry Pi. I just can't imagine any reason why that would be a sensible or necessary move.
What do you think about RISC-V?
by gr8_phk What do you think about RISC-V?
EU: RISC-V is an interesting project, though I do struggle to see the value in introducing yet another instruction set architecture: any gains from better ISA design are likely to be marginal, and it feels like people undervalue the tools support that comes with established architectures like ARM and x86. High performance implementations of different ISAs tend to feel very similar at the back end in any case, once they've translated architectural instructions to micro-ops and mapped architectural registers to a larger pool of hardware registers using renaming.
The profusion of microarchitectures implementing the RISC-V ISA feel like the real contribution: BOOM is particularly nice. On some level I wish people were devoting their efforts to more well established ISAs which have good tool support and are old enough to be out of patent coverage.
I found these articles, which set out the case for open and proprietary ISAs respectively, quite informative:
Future of Raspberry Pi Zero?
Will each form factor get updated over time? I'm talking about the A+ and especially the Zero.
EU: Yes. We're planning to bring a Model 3A to market in the near future. This will bring BCM2837 and wireless to the Model A+ form factor.
Zero is trickier, as we're reliant on PoP memory to hit the small, single-sided form factor, and the successor devices are all regular BGAs with discrete DRAM. We can't even bump to 1GB of RAM as the memory controller upgrade that introduced support for >512MB was part of the BCM2836 program. Perhaps in a couple of years if it continues to do well we could justify a chip spin to bring a more modern ARM core to the platform.
Will the Pi Zero ever be freely available?
Currently, vendors are having to limit availability due to supply shortage. Is it intended that this will not be the case in the future, or is the foundation concentrating on other things?
EU: Right now we're concentrating on ramping Zero production, which is only just about keeping pace even with rationing, and making Zero available in one-off from a wider range of vendors in a wider range of countries. At the moment, people outside the UK and US need to pay overseas shipping, which rather undermines the $5 price point. My hope is that by the first quarter of next year we'll have in-country distribution in several other European countries, and maybe Australia and Japan. I'd also like to see more availability in bricks and mortars outlets: currently only Micro Center do this.
What would you have done differently?
I much admire the Raspberry Pi project, philosophy and products. With the luxury of perfect hindsight, what would you have done differently if you could go back in time?
EU: I guess I wish we had launched maybe a year earlier: we certainly had the BCM2835 silicon a year earlier. We might have ended up launching with only 128 MB of RAM, but we'd be one year further along the adoption curve now. In the opposite direction, I wish we'd taped BCM2835 out a little later, or had the opportunity to spin the core early on, replacing the ARM11 with the equivalent area Cortex-A5 to get ARMv7 support from day one.
I wish we'd brought the B+ form factor to market earlier. It certainly was not ideal that that product had only six months in the market as the lead product. That said, I think we learned a lot from the two-and-a-bit years that the Model B was in the market, and James (who designed the B+) was busy working on BCM2836 for much of the previous year, so we'd have had to make sacrifices to free up his time.
Finally, I shouldn't have spent so much time and money pushing water uphill with a custom version of the Epiphany web browser. It was obvious well before we abandoned it that this project wasn't going anywhere, but the sunk cost fallacy got me. We're now standardizing on Chromium plus some light-touch video-acceleration patches, which we should have done immediately after the Raspberry Pi 2 release.
Pi with an SO-DIMM Slot? SATA connectors? GigE?
Thank you for creating a such an awesome and useful little computer. I've used Pi's to do everything from automatically watering my xmas tree to teaching a fourth grade class basic electronics to doing remote backups of my data (with a pi in my house and one far away at my buddies). That last operation suffers greatly from the lack of RAM resources on a raspberry pi. My "pi" in the sky remote backup node has an SO-DIMM slot on the back I could stick a 8 or 16GB so-dimm in. 1-4 SATA ports so I write faster and a gigE ethernet interface. I understand that you're under financial pressures to keep the cost down, but I see a real market for a Pi 3+.
EU: We're aware that memory capacity and non-multimedia connectivity are probably next in line for an upgrade. There are challenges fitting this feature set into the $35 price point (and we're very committed to maintaining that). Doing this would require a ground-up redesign of the SoC, as it isn't feasible to retrofit those features to BCM283x, so we're talking at least two or three years.
SO-DIMM memory is an interesting concept, but would require a new form factor, and possibly a more sophisticated (and costly) DRAM PHY to drive the extra capacitive load.
Pi with an SO-DIMM Slot? SATA connectors? GigE?
Kind of along the same lines; is there any thought to moving to a USB-C (USB 3.1) connection? This would allow running USB, power, network, and video over a single port, which would ultimately reduce costs. I expect the main problem is the bus speed, and costs of the controller chips involved with USB-C.
EU: It's likely that the next Raspberry Pi will use USB-C upstream for power. Right now, at 12.5W, we're at the limit of what we can deliver through the USB micro-B connector; although we can't dissipate significantly more on the board, this is a limiting factor in terms of what we can deliver to downstream devices. USB-C would immediately allow us to bring an additional 2.5W into the board. As for downstream USB-C (and really by implication USB3.x) that's another thing that would need to wait for a future SoC.
Raspberry Pi 4
I own all of the major Raspberry Pi hardware versions that have been released. I love them all. I only have one wish. Faster I/O. Will the next hardware release address this? USB 3.0, 1Gbps NIC, faster SD card interface. Any one of these upgrades would be great. All of them? Would be awesome!
EU:See above. We know these are things people want, and I'm sure we'll address them in the future, but it's a long road to get a suitable silicon platform that integrates these features, and it's not feasible to retrofit them with external components given our level of cost sensitivity.
We do have a neat software hack for higher SD card performance that we hope to roll out in the near future.
Any plans for 4GB = RTC?
Some of us are still waiting for a low-cost 4 GB + 4 Core embedded device with a Real-Time-Clock. Are there any plans to support anything like that in the (near) future?
EU: I think the challenge here is fitting that much memory into a reasonable target price and form factor. You're talking on the order of $15-20 of DDR3L even at spot prices, and 8 PCB placements, so it's unlikely to happen at the $35 target price and credit-card form factor in the near future. 2GB might be feasible in a few years' time; between now and then you'll see us investing a lot of software work in getting the most out of the 1GB we have on Raspberry Pi 3.
An RTC is a tempting addition, but the majority of our users don't need one, so we'd be burdening these users with unnecessary cost for the sake of the minority who do. We prefer to leave it to third parties to create cheap RTC add-on boards.
most interesting usage?
The Pi was designed as a cheap-as-chips (pun unintended) computer for classroom education. Obviously, since then it's been put to a myriad of other uses. Which of these have struck you as the "best" or most unexpected usage outside the classroom?
EU: Well, I'm a space cadet, so the various space (or near-space) applications stand out: Dave Akerman's high-altitude balloon flights, our Astro Pi work with Tim Peake on the ISS (technically a classroom, but a rather unusual one), and various telescope projects. People using the Pi to build scientific instruments (microscopes, seismic detectors, meteor trackers, and recently a commercial DNA analyzer) are always fun.
Probably my all-time favorite is the RACHEL project, which bundles a bunch of free educational and utility content (Wikipedia, Project Gutenberg etc.) onto an SD card and serves it via WiFi to people in the developing world who are beyond the current reach of the internet. It's easy to say that Project Loon, or internet.org, or simply the steady roll-out of conventional broadband access will make it obsolete in the near future, but these things always take longer than we imagine.
In the meantime, World Possible are bringing some of the benefits of the internet to people who might otherwise still be waiting in 2040. Go donate!
Low power display
What are the challenges in bringing a lower power display (e-ink or otherwise) to market?
EU: For me the number one challenge is finding a commercial-scale, quality supplier of e-ink displays on a non-glass substrate. This should help both with cost and robustness, which are key for my imagined target market (solar powered solid-state computers in the developing world). Without a substrate breakthrough, e-ink doesn't feel compelling (pluses: power consumption, sunlight readability; minuses: refresh speed, color; neutral: cost, robustness).
I had high hopes for Plastic Logic in Cambridge, but this seems not to be happening.
Plans for non usb based networking?
Plans for non usb based networking?
EU: Not at present. I think this is something that will need to wait for a future SoC with a ground-up redesign, either to add on-board GigE, or some other fast interface (PCIe, USB 3.x) which could be cheaply and efficiently bridged to GigE.
For a lot of use cases Fast Ethernet over USB 2.0 is actually a great solution. Every time Raspberry Pi gets mentioned on Slashdot, someone pops up in the comments to explain that USB dooms us to unstable networking, but I've never seen any evidence that this is actually a thing (even back in 2012 before Jonathan fixed our USB driver issues, and even when serving our website off a Raspberry Pi 3 cluster for this year's April Fools' Day). Superstition is a funny thing.
The NAS use case does generally need faster networking, but then you also need a fast mass-storage interface (SATA, NVMe or USB 3.x again).
Did you target the credit card size from the get-go or was it more of a happy coincidence that the Pi ended up that size?
EU: We targeted the credit card size form factor from day one. Of course if you measure a Raspberry Pi against a credit card you'll see that we didn't quite hit it in either X or Y (and I would say Z ranks as a significant miss). On the flip side we did hit a nice multiple of the Lego basis unit size: that really was a happy coincidence.
To what extent do you take power consumption into account when designing new models -- should we expect new models to continue to use more power as they get more powerful or do you plan to try to keep them below a certain level?
EU: I think we've pretty much hit the limit in terms of how much power we can dissipate on the board. I'm reluctant to add a heat sink, and certainly not active cooling. This sort of implies that we're going to need to change to a SoC on a smaller (and therefore more power-efficient) process node to get more performance. The time impact of that is one of the reasons why I say that Raspberry Pi 3 is likely to have a much longer lifetime in the market than Raspberry Pi 2 did.
Since the Pi products make computing accessible for most everyone, would it be worthwhile to develop an all-in-one Pi like the One Laptop Per Child concept?
EU:It's tempting, but there's a massive increase in engineering and business complexity associated with building a laptop versus building a Raspberry Pi. You need to know about batteries, keyboards, trackpads, hinges and display panels, and each of those needs to be sourced in a cost-effective manner, designed in, and quality controlled (batteries in particular scare the crap out of me).
I think for the time being we'll leave this to the ecosystem. Pi Top, particularly their CEED product, and some of the efforts to build HDMI-connected "docks" are worth a look.
by Anonymous Coward
A lot of Pi users such as myself have experienced bricked SD cards after running a Pi continuously for weeks or months. SD cards, even premium ones, are not terribly robust when used to store a root file system that experiences lots of small writes. Disabling logging helps by reducing the number of writes to the card, but isn't a good solution if you need logs. Have you looked at any alternative storage options for the root file system?
EU:We do now support booting directly from USB mass storage without an SD card on Raspberry Pi 3, and on earlier models you could always load the firmware and kernel from SD but keep the root filesystem on USB. This gives you the choice of USB pen drives (not really superior to good-quality SD from a write endurance perspective but with somewhat better bandwidth), and rotating-media or solid-state drives. Western Digital have supported us with some nice cost-effective single-platter HDDs.
An NFS mounted root filesystem is a good solution for some users: quite a lot of people at Pi Towers do this. Gordon recently added PXE boot support on Raspberry Pi 3, so this is another thing that can be made to work without an SD card.
What do you yourself use Raspberry Pis for?
Do you yourself use Raspberry Pis in your daily life and if so what for?
EU:One of the sad things for me is that even now I don't really get time to do proper creative stuff with this toy that I've been involved in creating. I do use a Raspberry Pi 3 with Kodi as a media center, and very early on I started using them as an alternative to spinning up a VM on my Windows gaming PC each time I need a local Unix box to hack on: my broadband gateway has ended up with a museum of Raspberry Pi hardware dangling off it on tiny patch cables.
I still hope that one day I'll have a chance to do some serious hardware hacking with a Pi. Maybe next year...
Growing multiple successful tech ventures
You've founded multiple successful ventures related to technology. While many entrepreneurs may manage to pay their own bills working out of their garage to "own their job," you've had success beyond that, more than once. What do you think is the biggest reason your projects have been much more successful than the typical entrepreneurial venture which never grows beyond just a few people?
EU:Each time, it's been a case of good people, good luck and being in the right place at the right time.
With Ideaworks we happened to be there with some pluginless (Java and Flash) 3d tech at just the point where Intel were looking for processor-intensive use cases to promote the Pentium 3. We took the money from that, hired the nucleus of a great team, and were probably the first people to realize that cross-platform portability was going to be the big challenge in native mobile game development. If anything we were a bit too early, and the challenge was staying alive while we waited for the market to mature.
Podfun was actually precisely the sort of non-scaling business you talk about. In Cambridge these get called "lifestyle businesses," perhaps with a little condescension, but it paid a few of us good money for a while, and I had the chance to travel to interesting places (notably India) and meet interesting people.
And then Raspberry Pi just tapped into this latent demand for something cost effective and robust that people could hack on. Pete's original Model B hardware, with Dom and Gray's firmware and board support, sold enough to let us start hiring a team, and we bootstrapped our way up with more and better hardware, a more stable and standard software environment, and so on.
I still don't know anything about raising VC money and running a conventional "high growth" company: I'm much more comfortable hiring slowly, growing organically, and keeping the quality of the team insanely high. I met a guy the other day running a London-based mid-stage startup who is hiring two or three engineers a week, and I'm just like "how?" How do you grow that fast and not end up letting the suck in?
Any thoughts on how to address the "add-on syndrome" that plagues SBCs like the Pi products? As in the board is $35, but then after a power supply, case, SD card, wifi (if not equipped), USB hub, etc... you hit around $80-100. It makes it hard to run multiple projects at once, plus the quality of packaged hardware from retailers is often questionable at best.
EU:Steady integration of features onto the board helps: from your list we integrated WiFi onto Raspberry Pi 3, and we've had four USB ports for a couple of years now so you only need a hub if you want to attach a large number of devices, or use several high-power-consumption ones.
The credibility of the $35 price point is important to us, and the goal was always to allow very cost-sensitive users (e.g. kids) to scrounge up a bare set of add-ons at very low cost: this is why we used USB and micro SD for power and storage, and made sure the device was safe to use without a case.
For less cost-sensitive customers who want a reliable pre-configured kit, we've done a lot of work to try to drive cost down and quality up. This is why you've seen us do an official case, official PSU and branded SD card. We make a little money on the case to recover the cost of the injection mold tooling, but not on the PSU or SD card: they exist purely to try to flush out the low-quality ones you see in some kits, particularly on eBay. For $60 you can get a Raspberry Pi 3, and the complete set of official add-ons.
Hi Eben, I teach classes using the Raspberry Pi 2 (soon to be switching to 3, I hope) in a variety of contexts, such as with students wanting to learn ARM assembly and to K-12 teachers who want to do physical computing in their science classrooms. It feels to me like the RPi is focused a little too much on Python and Scratch. I understand that it's called the Pi because of Python, but ARM assembly is my favorite assembly language, and bare metal assembly in particular is just a really natural fit for physical computing due to how easy it is to turn GPIO pins on and off. But the lack of documentation for the newer Broadcom SoCs has made it difficult for my students to write bare metal projects. So this leads to my question for you: are there any plans on rolling out better documentation / support / code examples for assembly on the RPi 2 and 3? Despite this sounding like grousing, I would like to assure you that I love everything you've done with the Raspberry Pi and the notion of physical computing in general. Everyone who takes an assembly class or science technology workshop with me this year will get a free RPI3 and a bunch of sensors, wires, and motors to do hands-on, open ended projects. And I've been doing this for a while and it works really well. Thanks again for all of your vision and tireless effort you've spent in this arena.
EU:Well, first off, thank you for using Raspberry Pi in your classes. People forget that the work we do ourselves is dwarfed by the work the community does on top of the platform.
If there are specific things that we've not documented well then please let us know via the contact address on the website: I'm aware that some of the "ARM local" peripherals (timers, mailboxes, interrupt routing) mapped above 0x40000000 that we added between BCM2835 and BCM2836/7 aren't as well documented as the rest of the system (for which the venerable "BCM2835 Peripheral Specification" PDF remains valid). Although a bunch of people have figured it out from our Linux kernel sources, we should probably do something about that.
One of the most-grumbled-about aspects of the Pi -- the closed VideoCore firmware -- actually makes it a very benign environment for bare-metal programming, because the ARM comes out of reset with the SDRAM and video system up and running and your code pre-loaded at address zero. Imperial College do a fantastic bare-metal competition for their first year students each year, that James and Gordon have been involved in judging. The bare-metal Starfox clone with ARM software rasterization is an all-time favorite.
Your move from software to chip design
How did your move from software to chip design of a graphics processor (that had an ARM added on to become the Pi) come about? Do you think more coders, especially those adept at assembler, should cross the bridge to Verilog and VHDL?
EU:I joined Broadcom as a software engineer, but was lucky to be part of a team that let enthusiastic amateurs like me hack on the chip Verilog. If you came up with something promising you could get it code reviewed by someone who actually knew what they were doing, have the rough edges knocked off, and see it taped out. This is really unusual in the industry, and was an artifact of the small integrated teams that we used to put together the various bits of IP that make up VideoCore.
Most of my contributions were at the higher level (instruction set architecture and outline microarchitecture for the VideoCore IV QPUs, deferred vertex shading, the general approach to the system level on VideoCore V etc), but there are some nice little low level bits in there (8x8 intra mode selection in the video encoder, the polygon clipper state machine, the SDRAM controller ECO for 1GB support on BCM2836) with my fingerprints on them.
I think it's a worthwhile set of skills to have as a software engineer, because it gives you some more appreciation for the tradeoffs that underpin your work. The best advice is to find a small, talented team doing chips or IP, be prepared to get your hands dirty and learn from the guys who've been doing this for decades.