Review of Raspberry Pi model B+

New open hardware: Raspberry Pi B+

Raspberry Pi model B+
Image credits : 

Luis Ibanez

I got a new Raspberry Pi B+ board from Adafruit. Check out my review of it here.

The main differences between the B+ and the Raspberry Pi model B are the new model has:

  • four USB ports (versus two in the model B)
  • a microSD card (versus a full size SD card in model B)
  • a video jack integrated with the audio jack (versus two separate jacks in the model B)
  • GPIO pins extended to 40 pins (versus 26 pins in the model B)
  • lower power consumption
  • four mounting holes

What has not changed:

  • The price, it is $35 USD
  • The amount of RAM, it has 512 Mb

Picture of the back of the Raspberry Pi B+ board showing the microSD card

Adafruit is a great place to purchase the Raspberry Pi model B+.

Notes when ordering:

  • Accessories: not all model B accessories are compatible, so pay close attention while ordering
  • Set up: straight forward as usual; I got the Raspbian Wheezy Linux distribution and made the following basic adjustments

Box of the Raspberry Pi model B+ and the Raspbian microSD card

1) Expand the filesystem to make use of the full capacity of the SD card, by typing the following command in the terminal:

sudo raspi-config

Select option 1: Expand Filesystem.

Then reboot the Pi for the expansion to take effect.

2) Change the Keyboard layout from UK to US, by typing the following command in the terminal:

sudo raspi-config

Select option 4: Internationalization Options

Then choose option I3: Change Keyboard Layout

This command launches a text-based menu, that allows you to select:

  • Keyboard model (in my case to "Generic 104-key PC", since I got the MiniChiclet keyboard)
  • Keyboard layout (in my case to "English (US)", changing the default of the "UK" layout)
  • The default AltGr key (that I left to the default of the keyboard)
  • The Compose key (that I assigned to the Left Logo key, just as a preference)
  • Enabling whether CTRL+ALT+Backspace terminates the X server (that I set to Yes, a good thing if one plans to hack on the Pi)

With this information, the command modifies the file:   /etc/default/keyboard

In my case the content end up as:

# KEYBOARD CONFIGURATION FILE
# Consult the keyboard(5) manual page
XKBMODEL="pc104"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS="compose:lwin,terminate:ctrl_alt_bksp"
BACKSPACE="guess"

3) Set the timezone to EDT (New York time), by typing the command:

sudo raspi-config

Select option 4: Internationalization Options

Then choose option I2: Change Timezone

In the continent menu I selected "America", and in the city menu, I selected "New_York."

4) Set up WiFi

Use this mini dongle and follow these instructions from AdaFruit:

Boot the Raspberry Pi without the Wifi adapter plugged in:

sudo vi /etc/network/interfaces

Change the original content:

auto lo
iface lo inet loopback
iface eth0 inet dhcp
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

To use my home router information, with SSID name and password:

auto lo
iface lo inet loopback
iface eth0 inet dhcp
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid "MYSSID"
wpa-psk "MYPASSWORD"

Save the file with the usual vi command ":wq" and shutdown the Pi. Then, connect the WiFi adapter and boot it again. At this point the Pi should be able to get into the network.

This can be easily verified with the command:

ifconfig

It will display something similar to:

wlan0 Link encap:Ethernet HWaddr 00:f1:40:42:0a:78
inet addr:192.168.1.15 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1002 errors:0 dropped:306 overruns:0 frame:0
TX packets:554 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:116210 (113.4 KiB) TX bytes:79851 (77.9 KiB)

Once in the network, proceed to update the distribution with the usual commands:

sudo apt-get update
sudo apt-get upgrade

In my case, I was surprised that the upgrade was going on for a long time, so I looked more closely at the problem. It turned out that the Raspbian distribution from AdaFruit comes with a free version of the closed-source Mathematica by Wolfram. Although it is very nice of Wolfram to provide free copies of the Mathematica application, it does get in the way of doing regular updates. The Mathematica repository serves data so slowly that even leaving "apt-get upgrade" work overnight was not enough to get an upgrade of the package. The common solution seems to be to remove it, so that's what I did. This involved removing the source files for apt-get and then purging the wolfram-engine package with the command:

sudo apt-get remove wolfram-engine
sudo apt-get purge wolfram-engine

After that, upgrades behaved at the usual speed. So, a great application to use instead is Sonic Pi, which is intended to learn live music coding. It's a lot of fun and a very interesting learning experience.

Overall, the Raspberry Pi model B+ is a great improvement over the model B! And, the Pi engineers did an excellent job on improving the board while maintaining the same price.

About the author

Luis Ibanez - Luis Ibáñez works as Senior Software Engineer at Google Inc in New York city.