Raspberry Pi 2 Available: ARMv7 and Windows 10
by Stephen Barrett on February 2, 2015 12:00 PM ESTThe original Raspberry Pi, launched three year ago this month, has been very successful. Raspberry Pi founder Eben Upton noted recently that over 4.5 million Pis have been sold since launch, vastly exceeding the initial goal of 1k units. This popularity can be attributed to many things, but one of them was a consistent hardware platform. Similar to gaming consoles, each Raspberry Pi has almost the exact same hardware, enabling developers to code apps that were guaranteed compatibility. Thus, laymen can find value in Raspberry Pi even without any intention of developing on the platform. In fact, Kodi (XBMC) has announced that the Raspberry Pi is the most popular hardware for their software.
Reaching the $35 price point was difficult however, and one peculiarity of the Raspberry Pi is its downright ancient ARM11 CPU inside the Broadcom BCM2835 SoC. While the ARM11 CPU was a watershed moment for mobile computing when it launched (it was at the heart of the original and 3G iPhones launched in 2007 and 2008), to continue using it in 2015 is a large concession. Not only is it slow, but the ARM11 core does not use the most popular ARM ISA, ARMv7, and instead relies on the older and less popular ARMv6 ISA. Thus, most software does not run natively on the Pi and must be recompiled.
Many online software repositories maintain ARMv7 sections for everything-but-the-Pi as well as a special Raspberry Pi ARMv6 section. Considering the popularity of the Raspberry Pi, this actually works okay, but the lack of a modern CPU has left the door open for competitors. Projects such as Vero, ODRIOD, and Imagination’s CI20 have all differentiated themselves with much more powerful and modern CPUs albiet some of them at higher prices.
This morning, the Raspberry Pi foundation changes that by introducing Raspberry Pi 2 at the same $35 price point. Working with Broadcom, the Raspberry Pi foundation has attempted to maintain as much compatibility as possible by changing only two features of the design. The new Broadcom 2836 SoC replaces the older 2835 SoC, but is nearly identical other than the CPU. The 700 MHz ARM11 CPU is replaced with a quad-core set of 900 MHz ARM Cortex-A7s, which use the more standard and modern ARMv7 ISA. Additionally, the memory has been doubled and increases from 512MB to 1GB. Otherwise, the Pi 2 is exactly the same as the Raspberry Pi 1 B+.
Raspberry Pi 2 Model B | Raspberry Pi Model B+ | |
SoC | Broadcom BCM2836 | Broadcom BCM2835 |
CPU | 4x 900 MHz ARM Cortex-A7 (ARMv7 instruction set) |
700 MHz ARM1176JZF-S (ARM11 family, ARMv6 instruction set) |
GPU | Broadcom VideoCore IV @ 250 MHz | Broadcom VideoCore IV @ 250 MHz |
Memory | 1GB DDR2 | 512MB DDR2 |
USB | 4x USB 2.0 Host | 4 USB 2.0 Host |
Camera Interface | 15-pin MIPI (CSI) connector | 15-pin MIPI (CSI) connector |
Video Output | HDMI 1.3a Composite video 3.5mm jack |
HDMI 1.3a Composite video 3.5mm jack |
Audio In | via I²S interface | via I²S interface |
Audio Output | HDMI 3.5mm jack I²S interface |
HDMI 3.5mm jack I²S interface |
Storage | via MicroSD | via MicroSD |
Network | 10/100 Ethernet | 10/100 Ethernet |
Max Power Consumption | < 5 Watts | 3 Watts |
Power Connector | MicroUSB | MicroUSB |
Size | 85.60 mm × 56.5 mm (3.37 in × 2.22 in) | 85.60 mm × 56.5 mm (3.37 in × 2.22 in) |
Price | $35 without MPEG2 and VC1 codecs $40.60 with MPEG2 and VC1 codecs |
$35 without MPEG2 and VC1 codecs $40.60 with MPEG2 and VC1 codecs |
While the ARM Cortex-A7 is one of the slowest A series CPUs, it is miles ahead of ARM11. We did an overview piece on the Cortex A7 when it launched, and stated that it should offer similar performance to the A8 but at significantly lower power requirements. Comparing the A8 to the ARM11 in the iPhone 3GS review, we found the A8 to be about twice as fast. If you consider the Raspberry Pi 2 contains four Cortex-A7s compared to a single ARM11 in the Raspberry Pi 1, the difference is gargantuan. The Raspberry Pi foundation is claiming a speedup of 6x depending on the workload.
CPUs built on the ARMv7 ISA can execute code written against the ARMv6 ISA. Therefore, unless using hand coded assembly specific to the old Raspberry Pi 1 CPU, most existing software should be compatible with the Raspberry Pi 2. Thus, at launch the Raspbian image supplied by the Raspberry Pi foundation actually still uses ARMv6 libraries in userland. Over the next few months they will be evaluating replacing these libraries with standard ARMv7 Debian libraries.
Raspberry Pi 2’s ARMv7 ISA compatibility also opens the doors to operating systems that have never properly worked on the Raspberry Pi before, notably Ubuntu, Android, and Windows. Ubuntu and Android are a somewhat obvious availability, but Windows is a particularly interesting announcement. The Raspberry Pi foundation states it has been working with Microsoft for the past six months to bring Windows 10 to Raspberry Pi 2, and it will be available free of charge “for makers”, which I assume means non-commercial use.
This is a huge announcement by Microsoft, as providing compatibility for arguably the most popular maker device cements their messaging that Windows 10 can run on anything and they won’t be missing out on IoT. The Windows 10 experience on Raspberry Pi 2 will likely be very similar to Windows RT - i.e. no desktop apps. However, Microsoft is doing the work to make sure that universal applications that run on the Surface Pro 3 also run on the Raspberry Pi 2. This is a key part of the Windows for IoT initiative.
While the ability to run Windows 10 is big, it is also important to keep performance expectations in check. In our original Surface review, we noted that the device felt slow and performance benchmarks were low - and that was with much faster 1.3 GHz ARM Cortex-A9 CPUs. Windows software has improved tremendously since then, but there is no getting around the fact that 4x Cortex-A7s at 900 MHz will be a new low for Windows. However, Windows Phone has used such processors before, so perhaps Microsoft's Windows 10 will carry forward enough optimizations to surprise us. Additionally, I imagine a lot of Raspberry Pi 2 Windows 10 devices will be running purpose-built maker applications, hiding task switching or general OS use performance.
Windows 10 on Raspberry Pi 2 also highlights an odd split in Microsoft’s development strategy, with this announcement coming just weeks after announcing that Windows 10 would not be coming to Microsoft’s Surface ARM devices, the original Surface and Surface 2. While Microsoft’s brief announcement means that it’s still not clear if the Pi 2 version of Windows 10 is a full-featured version –IoT use is very different from desktop use, after all – it would certainly look odd if the relatively low-powered Pi 2 was receiving features that the Surface tablets do not.
This is an official page up discussing the Windows 10 support, but it does not contain any details yet. Microsoft is directing interested users to join their Windows for IoT development program to receive additional details in the future. Personally, I would be interested to try to make a large touch screen surface with just a cheap Raspberry Pi 2. While it may not run the bevy of x86 Windows applications, it would certainly be a fun project considering how touch optimized Windows 10 is. The same could be said for Android.
The Raspberry Pi 2 is available today from distributors element14 and RS Components. Software distributions are available at the Raspberry Pi Foundation page.
Source: Raspberry Pi Foundation
52 Comments
View All Comments
Manabu - Monday, February 2, 2015 - link
Is the Broadcom BCM2836 made at the same process node than the Broadcom BCM2835 or they have moved up to something newer like 28nm?lmcd - Monday, February 2, 2015 - link
So many things wrong in both the article and the comments.Windows 10 IoT officially will support Windows 10 Universal Apps. Tegra 3, as of Windows 8.1, runs Windows very well. Little to no slowdown in the key Windows functionality, Word 2013 doesn't exhibit the typing issue mentioned in the Surface review, games such as Hydro Thunder Hurricane run (albeit on lowest settings) with no slowdown.
Is the pessimism necessary?
Penti - Tuesday, February 3, 2015 - link
As does Windows Embedded 8.1 Handheld Edition based on Windows Phone on ARM devices when it comes to "universal" apps made for phones. Don't abuse the word they use, Universal apps means you need to code (only part of the project is fully shared) and compile for the device. It's also the term they used for when you distribute an app on multiple platforms but it can be completely different programs that don't share anything. Details aren't available yet but they will probably continue down the current track and the IoT-product is likely based on the phone variant – the true phone-variant will also contain the older Silverlight and Windows Phone Runtime frameworks/runtime and while W8.1 and WP8.1 supports universal windows runtime apps with shared code you still need to customize it some because there's still a few API differences, you need to build different UI's and so on.Thus it will probably be a variant of Windows Runtime the same runtime that powers modern apps. But that doesn't mean you won't have to make changes for it to run. It's pretty clear that they will be different SKU's of Windows. So don't get lost in marketing fluff.
They need to do more to truly make it interesting. But when it comes to hobbyists Microsoft can take it's time.
lmcd - Tuesday, February 3, 2015 - link
The point was that the "stripped down" Windows is in fact rather full-featured and not just "a command line and tools" as one commenter suggested, and that a quad-core A7 can run Windows just fine, contrary to what the article author wrote.It's like if Anandtech came out with an article claiming that Dalvik was too inefficient for wearables. Sure, it is, but Google using Dalvik today is just as reasonable as Microsoft using their 1.0 ARM .NET Runtime.
Penti - Tuesday, February 3, 2015 - link
Well I wouldn't expect it to run full media center software – does doesn't do much when it comes to store apps, but a capable Windows Runtime stack is obviously there.boy3dfx - Tuesday, February 3, 2015 - link
A few typos in the article.First the amount of PIs sold seems to me to be 2.5 million, not 4.5: http://blog.broadcom.com/raspberry-pi/happy-birthd...
Second, the link in the "Projecys like Vero, ODIOD, ..." spells ODRIOD instead of ODROID :)
Other than that, a very cool article. Thanks for posting it.
I am waiting to hear more especially on the Windows front (and motorola lapdock type connectivity).
dmunsie - Tuesday, February 3, 2015 - link
The link you provided is from a year ago (Feb 28, 2014). The Raspberry Pi Foundation reported 3 million sold back in June of 2014 (http://www.raspberrypi.org/raspberry-pi-at-bucking... and there is a CNET article from October saying 3.8 million that uses the Raspberry Pi Foundation as a source (http://www.zdnet.com/article/raspberry-pi-sales-ed...I don't think it's much of a stretch that they would have sold 4.5 million by now.
t.s. - Tuesday, February 3, 2015 - link
"..Reaching the $35 price point was difficult however.."It's not that difficult, actually. Just cut your profit. A company that is not larger than raspberry pi foundation can sell it at that price point too, with somehow better spec.
http://www.hardkernel.com/main/products/prdt_info....
laylajones234 - Tuesday, February 3, 2015 - link
Hey Guys!! Find top sites offering best deals and attractive discounts on Raspberry Pi, Laptops, iPhone 6 and more only at HolidayShoppingMart(DOT)comHyper72 - Tuesday, February 3, 2015 - link
I'm guessing Microsoft doesn't see this as a mass market end user device but rather as a cheap development board for testing on hardware target before final testing and deployment elsewhere.Possibly they'd also like to see schools teach with a windows dev chain/target to condition the future engineers.