Category: Raspberry Pi

Video: Turning the Raspberry Pi into an FM transmitter with PiFM

Direct link to YouTube video

Link to page that describes how it’s done: Turning the Raspberry Pi Into an FM Transmitter

The interesting thing about this: Other than the Raspberry Pi and its power supply, the only external hardware required is a piece of wire to act as an antenna, and a way to connect it to the correct pin on the device!

Notes on setting up Raspbmc on a Raspberry Pi

A couple of days ago we published Notes on setting up OpenELEC on a Raspberry Pi. One thing we found a bit frustrating about OpenELEC was touched upon in that article:

OpenELEC is very fast but much of the file system is read only, and even if you SSH in as root you cannot edit many of the configuration files as you could on a normal Linux system. Sometimes there are ways around that.

Now if you are setting up a system for your grandparents, maybe not having a writable file system, nor access to tools like apt-get for installing additional software won’t bother you. But we found it did bother us. For example, we missed having access to Midnight Commander. While there is an unofficial way to install it on on OpenELEC, the developers apparently would prefer you don’t do that. Well, sorry, but that kind of thinking is not acceptable to us. It’s our system, and we want to be able to control it. In fact, it kind of goes against the whole spirit in which the Raspberry Pi was created to make an “untinkerable” distribution, although we can certainly understand why some people like it. Different strokes for different folks*, and all that.

So we decided to again try Raspbmc. We had tried it once before, but found the interface a bit slow and clunky. However, just a few days ago a new version was released, and reports were that it was faster. So, we decided to give it another try. This time, we installed it using the instructions found here, which are for users that will be writing to the SD card using an OS X or Linux system. If you were using Windows for this task, you’d use these instructions instead. This only writes an installer to the card, and when you place the card into the Raspberry Pi and boot it up it will complete the installation. You must have an active Internet connection for the installation to complete.

The interface in the new version of Raspbmc does seem faster than in the previous version we’d tried. Some things may still be a bit slower than in OpenELEC – we particularly noticed that it took a bit longer for fanart to appear after we’d made a selection.

One thing that had bothered us about OpenELEC was that you could not change the Samba password. In Raspbmc it is easy, you simply SSH into the device (as user pi, default password raspberry) and enter:

sudo smbpasswd -a pi

Also if you want to change the SSH password, which we highly recommend, you simply do:

sudo passwd pi

In either case you will be prompted for the new password.

You can install Midnight Commander in the normal way, using apt-get install mc and it seems to work fine. Another thing we had an issue with in OpenELEC was changing the Samba share name. It’s easier to do this in Raspbmc, but still perhaps a bit non-obvious. The easiest way to do it is simply edit /etc/hostname and change name in that file – this is also picked up by Samba, though you may need to reboot and wait some time before the new share name appears and the old one disappears – it took about 20 minutes on our systems.

One thing we noticed about Raspbmc is that XBMC’s RSS feed is turned off by default. This was a major contributor to high CPU usage in OpenELEC. Not that higher CPU usage is really all that bad, but some people like to see a lower figure. Note that you cannot get an accurate reading from the XBMC GUI – to see an accurate representation of CPU usage you must SSH into the system and use the top command.

Speaking of SSH, one weird thing about RaspBMC is that the first time you SSH into the device, you’ll be asked to select a language and timezone. Always select at least the UTF-8 version of your preferred language – that is probably the only one you need. That’s the first time we’ve ever seen this information requested on an initial SSH login to a system.

* A line from “Everyday People” by Sly and the Family Stone (1968)

Notes on setting up OpenELEC on a Raspberry Pi

First, before you go out an buy a Raspberry Pi for this purpose, keep in mind that it does not have any type of digital audio output (such as a TOSLINK connector), other than the HDMI output – see discussion here. This may or may not be an issue in your installation, but you should be aware of that going into the project.

While you could use NOOBS to set up OpenELEC, you may not get the latest version. You are better off using these installation instructions and downloading the latest build.

OpenELEC is very fast but much of the file system is read only, and even if you SSH in as root you cannot edit many of the configuration files as you could on a normal Linux system. Sometimes there are ways around that. For example, Samba by default is controlled by the file /etc/samba/smb.conf. But you can’t edit that file. However, if you navigate to the /storage/.config directory you will find a file called samba.conf.sample. If you copy or rename that file to samba.conf in the same directory, then that becomes the file that controls Samba, and you can edit that file. For example, you can change the share name by editing the line server string = OpenELEC and changing OpenELEC to something else, and then find the line netbios name = %h and change the %h to the same thing you used as the value for the server string.

Also if you don’t want your Raspberry Pi acting as a Master Browser for your local network, you can comment out the following lines in samba.conf, as shown here:

# domain master = yes
# local master = yes
# preferred master = yes

When you are in XBMC you may notice that the CPU usage seems high. This is apparently because of two things. First, the act of measuring the usage in XBMC and drawing the usage bar on the GUI actually consumes significant CPU power. You can confirm this by using SSH and then the top command to view actual actual usage. When you are on screens that are completely static, with nothing being continually redrawn, the CPU usage will be lower. But also, if you go into XBMC’s settings (System | Appearance | Skins) and turn off the RSS feed, your CPU usage will drop considerably. Note that actually playing video content actually causes CPU usage to decrease since the work of drawing the screen is transferred to the GPU. On the other hand, leaving the XBMC GUI parked on certain pages may cause CPU usage to increase – for example, we found that if we went to a page that displayed large size thumbnails and fanart, the CPU usage shot up considerably.

To get a PVR plugin to work, you must first enable Live TV. Only then will you be given the option to pick a PVR frontend, But note that even if you set it up properly, you might get audio only and no video. As best I can determine, the reason is that neither the Raspberry Pi nor OpenELEC contains a license to play MPEG2 video. The Raspberry Pi folks will be happy to sell you a license, but we didn’t bite so have no idea if it works or not, and we have read where others have had mixed results. Keep in mind that MythTV, and probably other PVR backends, have the ability to transcode recorded programs to another format that does not require a license, so if all you want to do is watch previously recorded content and not actual live TV, you could just set up the backend to transcode everything to a format that the Raspberry Pi will play after it is recorded.

OpenELEC and the Raspberry Pi will output 1080p, however it appears that on some TV’s you need to go into XBMC’s setting and explicitly specify playback at 1080p, otherwise it will default to 720p. This happened for us on one TV set but not on another.

One question remains, some older TV’s need a “CVT reduced blank” signal before they will offer a Dot-by-Dot mode that has no overscan issues. In normal systems you can change this by using specific software, or in Linux, a specific ModeLine in the xorg.conf file. But it appears that OpenELEC has no support for this. This might make OpenELEC a poor choice for those users. Fortunately, you can also try other distributions for the Pi, such as Raspbmc, XBian, or GeeXboX.

Some people are gluttons for Pi: Mounting multiple Raspberry Pi devices

Some fans of the Raspberry Pi just can’t get enough, it seems, and have devised various ways to mount multiple Pis. In fact, when this idea occurred to us, we thought we had the perfect name for such a device – the Pi Rack – until we found out that name was taken by hydroponic growing systems that are sometimes used to grow medical marijuana, and other types of plants. So, guess that idea was only half-baked.

(We’ll pause a moment while you groan at that bad pun, realizing it works two ways. You know, baked pi(e), and baked from… do we really need to spell it out?)

Anyway, we came across this clever way to mount multiple Raspberry Pis, using a block of plywood and the audio and video jacks as mounts:

DSC04761

For more photos, and details on construction and the components used, see this article and the comments underneath:
Simple Pi Rack (raspberrypi.org)

(2020 Edit:) If you happen to stumble across this old article, note there have been several newer ways to mount multiple Pi’s developed since it was written. Some are homemade and some commercial. Some require a 3D printer, such as this one:

3D Printed Raspberry Pi Server Serves Up Fourteen Slices of Pi (Tom’s Hardware)

Yes, you can run FusionPBX and FreeSWITCH on a Raspberry Pi

 

Important
This is an edited version of a post that originally appeared on a blog called The Michigan Telephone Blog, which was written by a friend before he decided to stop blogging. It is reposted with his permission. Comments dated before the year 2013 were originally posted to his blog.

By now most technically inclined folks have heard of the Raspberry Pi, the small $35 computer that can do big things. If you are going to buy one, just make sure you get one of the newer models with 512 MB of memory, rather than an older model with only 256 MB.

But, you may wonder, can I run a decent PBX system (one that won’t get in my way and treat me like a blithering idiot while I’m attempting to configure it) on a computer this small? Well, it turns out that people are doing just that:

The following guide is a relatively easy way to install FusionPBX and FreeSWITCH with the Ubuntu/Debian script.

Raspberry Pi Script (FusionPBX Wiki)

EDIT April, 2017: For a newer method see this DSLReports thread.

It should be obvious that you’ll probably find this easier if you know a bit about the Raspberry Pi first (Google it) but if you want a reliable and configurable PBX, and you think you have the skills to follow these instructions and make it work, I’d definitely give it a try. Besides, for home users, it’s a lot easier to justify a separate computer just to handle your phone calls if it’s small, cheap, and unobtrusive, and has low power consumption.

Recent Posts

Recent Comments

Archives

Categories

Meta

GiottoPress by Enrique Chavez