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
-
The Gnome Foundation Struggling to Stay Afloat
The foundation behind the Gnome desktop environment is having to go through some serious belt-tightening due to continued financial problems.
-
Thousands of Linux Servers Infected with Stealth Malware Since 2021
Perfctl is capable of remaining undetected, which makes it dangerous and hard to mitigate.
-
Halcyon Creates Anti-Ransomware Protection for Linux
As more Linux systems are targeted by ransomware, Halcyon is stepping up its protection.
-
Valve and Arch Linux Announce Collaboration
Valve and Arch have come together for two projects that will have a serious impact on the Linux distribution.
-
Hacker Successfully Runs Linux on a CPU from the Early ‘70s
From the office of "Look what I can do," Dmitry Grinberg was able to get Linux running on a processor that was created in 1971.
-
OSI and LPI Form Strategic Alliance
With a goal of strengthening Linux and open source communities, this new alliance aims to nurture the growth of more highly skilled professionals.
-
Fedora 41 Beta Available with Some Interesting Additions
If you're a Fedora fan, you'll be excited to hear the beta version of the latest release is now available for testing and includes plenty of updates.
-
AlmaLinux Unveils New Hardware Certification Process
The AlmaLinux Hardware Certification Program run by the Certification Special Interest Group (SIG) aims to ensure seamless compatibility between AlmaLinux and a wide range of hardware configurations.
-
Wind River Introduces eLxr Pro Linux Solution
eLxr Pro offers an end-to-end Linux solution backed by expert commercial support.
-
Juno Tab 3 Launches with Ubuntu 24.04
Anyone looking for a full-blown Linux tablet need look no further. Juno has released the Tab 3.