On the engineering side of things we’ve also been very busy over the past year, and not to be outdone by the education team, we are ready to take the wraps off something special, this time aimed at business and industrial users.
From humble beginnings, the Raspberry Pi platform has grown and matured: the software is now full-featured and stable, and is still constantly improving thanks to the continuing hard work of our heroic community of volunteers; as well as targeted injections of funding to solve some specific issues. The Pi, and the Broadcom BCM2835 SoC at its heart, are also steadily becoming more open.
We love hearing about what users are doing with their Raspberry Pis, and are constantly amazed at the range of projects, as well as the inventiveness and creativeness of the community. We are also aware that there are a very significant number of users out there who are embedding the Raspberry Pi into systems and even commercial products. We think there needs to be a better way to allow people to get their hands on this great technology in a more flexible form factor, but still keep things at a sensible price.
Like proud parents, we want to free the core technology of the Raspberry Pi to go forth and become an integral part of new and exciting products and devices, and so today we are announcing the forthcoming Raspberry Pi Compute Module.
The compute module contains the guts of a Raspberry Pi (the BCM2835 processor and 512Mbyte of RAM) as well as a 4Gbyte eMMC Flash device (which is the equivalent of the SD card in the Pi). This is all integrated on to a small 67.6x30mm board which fits into a standard DDR2 SODIMM connector (the same type of connector as used for laptop memory*). The Flash memory is connected directly to the processor on the board, but the remaining processor interfaces are available to the user via the connector pins. You get the full flexibility of the BCM2835 SoC (which means that many more GPIOs and interfaces are available as compared to the Raspberry Pi), and designing the module into a custom system should be relatively straightforward as we’ve put all the tricky bits onto the module itself.
So what you are seeing here is a Raspberry Pi shrunk down to fit on a SODIMM with onboard memory, whose connectors you can customise for your own needs.
The Compute Module is primarily designed for those who are going to create their own PCB. However, we are also launching something called the Compute Module IO Board to help designers get started.
The Compute Module IO Board is a simple, open-source breakout board that you can plug a Compute Module into. It provides the necessary power to the module, and gives you the ability to program the module’s Flash memory, access the processor interfaces in a slightly more friendly fashion (pin headers and flexi connectors, much like the Pi) and provides the necessary HDMI and USB connectors so that you have an entire system that can boot Raspbian (or the OS of your choice). This board provides both a starting template for those who want to design with the Compute Module, and a quick way to start experimenting with the hardware and building and testing a system before going to the expense of fabricating a custom board.
Initially, the Compute Module and IO Board will be available to buy together as the Raspberry Pi Compute Module Development Kit.
These kits will be available from RS and element14 some time in June. Shortly after that the Compute Module will be available to buy separately, with a unit cost of around $30 in batches of 100; you will also be able to buy them individually, but the price will be slightly higher. The Raspberry Pi Foundation is a charity, and as with everything we make here, all profits are pushed straight back into educating kids in computing.
I’m sure people will be keen to get their design process started; initially we are releasing just the schematics for both the Compute Module and IO Board, but we will be adding plenty more documentation over the coming days and weeks.
*But don’t go plugging the Compute Module into your laptop – the pins assignments aren’t even remotely the same!