Exploring the new Rasp Pi Model B+
Wider GPIO Port
The new GPIO port (the J8 header on the circuit board) now includes an additional 14 pins. The allocation of the first 26 pins is the same as the P1 header of the Model B. The additional 14 pins include two special pins, ID_SD and ID_SC, three more GND pins, and nine more GPIO pins (Figure 3).

This approach keeps most of the GPIO expansion boards electrically compatible with the Rasp Pi B+, except for audio expansions such as the Wolfson audio card [1] and the HiFiBerry [2], which used the now missing P5 header. Wolfson has already reacted by announcing a new board for the model B+.
Electrical compatibility alone is not enough. The boards also have to be a mechanical fit on the Rasp Pi B+. Because of the layout of GPIO headers, which have been moved a bit to the left, the additional pins, and the two additional USB ports, some extensions that were perfectly adapted to the Raspberry Pi can no longer be attached. We found the following add-on boards from various manufacturers to be mechanically compatible:
- RasClock (real-time clock)
- PiFace Rack (extension ports for the PiFace family)
- chipKIT Pi (Arduino-compatible microcontroller with PIC32 MCU)
- Explore-NFC (NFC board)
- Pi3g touch display module (via an additional pin cable)
Some of these boards protrude past the edge of the Raspberry Pi B+, so you need to be careful when choosing a housing. The following extensions proved in practice to be incompatible with the new Model B+:
- PiFace Control and Display cannot be plugged in completely
- PiFace Digital can only be plugged in with a gentle push; it also causes short circuits in the USB ports.
In general, when performing compatibility tests, before turning on the Rasp Pi, you should check whether components are sticking out on the Rasp Pi B+ that could cause a short circuit. If so, you should think about using electrical tape to insulate them.
Some shops, such as Adafruit [3], have now begun to offer special adapters so that old extension boards can still attach to the Raspberry Pi B+ (also see the "Ribbon Cable" box). Other shops, like pi3g [4], bundle 16GB microSD cards with pre-installed software that is compatible with the Model B+ out of the box, as well as a microSD to SD adaptor for compatibility with the Model B. Also, pi3g reacted to the introduction of the Model B+ with B/B+-compatible touch display kits (see Figure 4).
Ribbon Cable
If you are looking for a 40-pin flat ribbon cable for the new GPIO port, you might want to see if you have some old IDE/ATA cables lying around. The only thing you will have to watch out for is that pin*20 is not obstructed, as was often done to keep the drive cable from being connected the wrong way around.

New GPIO Pins
The additional eight pins located on the Model B P5 header do not exist on the Model B+. The nine new GPIO pins compensate for this loss. Only four of the P5 pins (P5-03 through P5-06) led to contacts on the BCM2835 chip (GPIO28-GPIO31). The rest served as ground or voltage sources. The most important alternative functions performed on those four pins was I2C and I2S functionality for chip-to-chip sound (as used by the Wolfson card or the HiFiBerry – PCM_CLK, PCM_FS, PCM_DIN, PCM_DOUT). Audio output stays the same for the Rasp Pi B+, but the following pins assume this task: GPIO18 (J8-12), GPIO19 (J8-35), GPIO20 (J8-38), and GPIO21 (J8-40).
The extra I2C bus (SDA0 on P5-03, SCL0 on P5-04) was lost in the update process. The alternative pins GPIO0 and GPIO1 now function as ID_SD (J8-27) and ID_SC (J8-28), which serve as a connection for I2C EEPROMs, following the example set by BeagleBone Black. In the future, expansion boards (HATs – Hardware Attached on Top) plugged into the Pi will be able to select their pin allocation automatically, and thus the alternative functions of the GPIO pins, and configure drivers during the boot process. This possibility is perfect for developers, and the Foundation recently published the HAT specification [5].
The new pins offer other interesting functions, such as an additional SPI (serial peripheral interface) bus with three chip select pins (SPI1). The chip selects SPI1_CE0_N and SPI1_CE1_N are already available via the Alt4 functionality on GPIO18 (P1-12/J8-12) and GPIO17 (P1-11/J8-11). The third chip select SPI1_CE2_N is found on GPIO16 (J8-36); SPI1_MISO is on GPIO19 (J8-35), SPI1_MOSI is on GPIO20 (J8-38), and SPI1_SCLK is on GPIO21 (J8-40).
PWM1 on GPIO19 (J8-35) serves as an additional hardware-based pulse-width-modulated pin without adding load to the ARM. As before, it is still possible to accomplish software-based pulse width modulation via all GPIO pins. Overall, all connection options and alternative pin functions of the BCM2835 are now exposed, with the exception of the third SPI bus (SPI_2) [6]. Many of the alternative functions are still designated as reserved. Who knows how these functions may be used down the road?
Attachments and Housing
The new Rasp Pi B+ no longer fits into the first generation housing, in part because the number of USB ports has been increased. Therefore, if you are going to switch over to the B+, you will need to have a new housing. Nowadays, various manufacturers already offer a housing that fits the Rasp Pi B+ for less than US$ 10. Users just starting out with the Rasp Pi can also find Model B+ sets that include a housing, power supply, and microSD memory card, as well as ribbon cables, breakout kits, and extension boards that uses the complete GPIO header.
You will have to adopt a wait and see approach with regard to add-ons. Manufacturers may pay attention in the future to whether their extensions are compatible with both Rasp Pi B models. Hybrid attachments are a possibility that would sit on ID_SD and ID_SC and then be used for initialization in the event that these pins exist. Otherwise the user could rely on manual configuration. There would be enough space for a jack to stick out next to the yellow video jack on the model B.
« Previous 1 2 3 Next »
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you've found an article to be beneficial.
News
-
2024 Open Source Professionals Job Survey Now Open
Share your expectations regarding open source jobs.
-
Arch Linux 2023.12.01 Released with a Much-Improved Installer
If you've ever wanted to install Arch Linux, now is your time. With the latest release, the archinstall script vastly simplifies the process.
-
Zorin OS 17 Beta Available for Testing
The upcoming version of Zorin OS includes plenty of improvements to take your PC to a whole new level of user-friendliness.
-
Red Hat Migrates RHEL from Xorg to Wayland
If you've been wondering when Xorg will finally be a thing of the past, wonder no more, as Red Hat has made it clear.
-
PipeWire 1.0 Officially Released
PipeWire was created to take the place of the oft-troubled PulseAudio and has finally reached the 1.0 status as a major update with plenty of improvements and the usual bug fixes.
-
Rocky Linux 9.3 Available for Download
The latest version of the RHEL alternative is now available and brings back cloud and container images for ppc64le along with plenty of new features and fixes.
-
Ubuntu Budgie Shifts How to Tackle Wayland
Ubuntu Budgie has yet to make the switch to Wayland but with a change in approaches, they're finally on track to making it happen.
-
TUXEDO's New Ultraportable Linux Workstation Released
The TUXEDO Pulse 14 blends portability with power, thanks to the AMD Ryzen 7 7840HS CPU.
-
AlmaLinux Will No Longer Be "Just Another RHEL Clone"
With the release of AlmaLinux 9.3, the distribution will be built entirely from upstream sources.
-
elementary OS 8 Has a Big Surprise in Store
When elementary OS 8 finally arrives, it will not only be based on Ubuntu 24.04 but it will also default to Wayland for better performance and security.