Skip to main content

F123

I've begun some work for the F123 Project which is an attempt to put accessible Raspberry Pi computers into the hands of people, particularly children, in parts of the developing world such as rural South America and Africa.

I thank Fernando and the F123 team for some help in increasing the accessibility of the Pi by making it possible to devote some time to writing some code to interface Emacspeak to my OMX audio code, which solves the stuttering eSpeak text-to-speech problem on the Pi.

I'd also like to give my thanks, and that of Fernando of the F123 project, to Jacob Marsh of modmypi.com for the kind donation of a Pi, a transparent case and a PSU to be sent out to Fernando for use in pitching his case for funding to possible backers in Brazil. modmypi.com is a great UK site from which to buy stuff relating to Pi hacking, and other platforms as well such as Beaglebone and Arduino. They also ship world-wide.

Temporary Removal of Downloads

I have removed the images and other downloads today as a temporary measure while I publish the archive files containing the new method of building the OMX audio code.

I will replace the Raspbian images in a couple of days updated to the newest published image and with console speech running.

I will also be publishing Arch Linux images.

Changes to SSH Security in Latest Raspbian

In the latest release of Raspbian a new addition to security has been made.

Now there will be no SSH server running unless a file exists in the /boot partition. This file can be empty and is just called ssh.

If you are creating an SD card on a Linux machine you can mount the FAT32 boot partition and create the file in there by issueing the command:

touch ssh

This will create a file of zero length.

I can't help thinking this is a bit ridiculous. Especially as the default pi user still has the ability to use sudo without having to enter a password, making pi effectively a root user.

USB Audio

Here's how to change the Pi to use USB audio as the default.

This has proven quite hard to pin down online as things recently changed in the kernel, I think to use something called Device Tree Blocks.

You will find posts online suggesting you change:

  • ~/.asoundrc
  • /etc/asound.conf
  • /usr/share/alsa/alsa.conf

But this method will work for all users, unlike changing ~/.asoundrc.

There is a setting which makes sure that any USB audio dongle you have plugged in is not the default. The device with the number of zero is the default.

Look in:

/lib/modprobe.d/aliases.conf

And you will see a line which reads:

options snd-usb-audio index=-2

That is the line which keeps the USB audio device from being the zero default.

So, commenting it out like this:

#options snd-usb-audio index=-2

And then rebooting will make the USB device the new default.

Of course you will need to use sudo to do this.

Optionally you can also disable the Broadcom audio driver by commenting out a line in:

/boot/config.txt

The line is:

dtparam=audio=on

Comment it out:

#dtparam=audio=on

Now after rebooting you have USB audio and no Broadcom sound driver.

Note that assuming you don't disable the Broadcom sound driver and still want to hear some applications through either HDMI or the the analogue audio jack, you now need to force individual applications to use the on-board sound by providing whatever configs or switches each application needs.

Raspberry Pi Version 3 Released

Today the Raspberry Pi version 3 has been released.

Here is a list of the specifications:

  • SoC: Broadcom BCM2837 (CPU, GPU, DSP, SDRAM)
  • CPU: Quad-core 64-bit ARM Cortex A53 clocked at 1.2 GHz
  • GPU: 400MHz VideoCore IV multimedia
  • Memory: 1GB LPDDR2-900 SDRAM (i.e. 900MHz)
  • USB ports: 4
  • Video input: 15-pin MIPI camera interface (CSI) connector
  • Video outputs: HDMI, composite video (PAL and NTSC) via 3.5 mm jack
  • Audio input: I²S
  • Audio outputs: Analog via 3.5 mm jack; digital via HDMI and I²S
  • Storage: MicroSD
  • Network: 10/100Mbps Ethernet and 802.11n Wireless LAN
  • Peripherals: 17 GPIO plus specific functions, and HAT ID bus
  • Bluetooth: 4.1
  • Power rating: 1A (5.0 W)
  • Power source: 5 V via MicroUSB or GPIO header
  • Size: 85.60mm × 56.5mm
  • Weight: 45g (1.6 oz)

So I guess the most significant things to note are:

  • 64-bit CPU
  • WiFi now included
  • Bluetooth included

I will investigate further today to see if there is any impact on the OMX libraries that have been previously available for the Pi and Pi2 which made my OMX code possible which solved the stuttery TTS with eSpeak.

This version is a different GPU I presume.

My First Zero

My first Raspberry Pi Zero arrived today.

I have immediately fallen in love with it as it is such a cute and dinky little board, and so cheap.

I just need to get somebody to solder in a 40-pin header for me and I'll be ready to rock.

I quite like the idea of using a right-angle female IDC header, so I can plug it straight into a Cobbler like a daughter-board.

Raspberry Pi Zero Released!

Today, the 26th of November 2015, sees the release of the latest version of the Raspberry Pi.
This is the Raspberry Pi Zero.

It is a very cut-down version of the present boards, and at approximately 65 x 30 x 5 millimetres it is significantly smaller than the other versions.

More specifications:

  • No full-sized USB ports
  • No ethernet
  • No composite video
  • No analogue audio
  • Unpopulated 40-pin GPIO bus

What's so exciting about a board that has less? I hear you say.

Well, for one thing, the cost. At about £4 ($5) this is really a throw-away device now, costing less than a pint of beer in most places in the UK nowadays.

The intention is to provide a very low cost version of the Pi, more suitable for use in embedded aplications and robotics than the current versions.

A 40-pin GPIO header can be soldered into place, and yields a bus which is pin-for-pin compatible with the earlier versions, Model + and Model B+ Version 2.

I have added a physical description of the Pi Zero to the 'Getting Started' document on this site.