APC Australia

Build a walkie-talkie with a Raspberry Pi

Nate Drake tickles your nostalgia bone with Daniel Choate’s awesome TalkiePi project to create retro-style Wi-Fi walkie-talkies.

-

Those who have been following the TV series Stranger Things may have felt a twinge of nostalgia at the retro walkietalk­ies used by the children. New Zealander Daniel Chote decided to take his own homage to the ‘80s one step further. The TalkiePi turns your Pi into a simple push button walkietalk­ie, which works over Wi-Fi.

Chote designed the project with his kids in mind. Once the software is installed, it will automatica­lly connect to his own server using the Mumble protocol allowing users to chat right away. The software on his GitHub page is combined with detailed instructio­ns of components and even a casing design that can be manufactur­ed with a 3D printer to provide a nostalgic experience that will tug at the heartstrin­gs of the average 30somethin­g and upwards.

The interface of the TalkiePi couldn’t be more simple. When the button is depressed, it lights up and you can talk. When depressed, the channel is clear. There are two other status LEDs which indicate your connection to the wireless network and if others have joined your particular channel.

This project isn’t only useful for children. Many gamers make use of the Mumble protocol to talk while playing. Two TalkiePis can also be used as a handy intercom for your front door.

GETTING STARTED

To begin, you will need a Raspberry Pi with Raspbian installed on the SD card for each TalkiePi you want to build. The Raspberry Pi 3 is perfect for this project as it has integrated Wi-Fi. The microphone originally used in the projects is US Robotics USB Speakerpho­ne (USR9610), removed from its casing and connected to the Pi. This can be hard to obtain outside the US, so either search eBay for the same model or find a substitute. Be careful to choose one which works over a USB cable and not Bluetooth.

To power the Pi, you’ll need a short 90-degree USB cable. If you’re planning on printing the TalkiePi casing, you’ll also need five M3 nylon screws and one M3x20 nylon standoff. You can buy a pack of ten screws and standoffs (plus bonus nuts) from littlebird­electronic­s. com.au for just $2.93, so grab two. The case will also require two M3 15mm and two M3 25mm bolts. Packs of 25 can be purchased from www. altronics.com.au for $4.50 and $7.70, respective­ly, plus the speaker requires two M3 10mm bolts, which can be picked up for $4.10 for a pack of 25. The speaker itself requires two M3 10mm bolts and nuts. To connect your wiring and LEDs to the Pi, you’ll need a GPIO Header connector. Pretty much any header will do. Both the ‘status’ LEDs should be 5mm, each with its own holder. A five-pack of Adafruit LED holders goes for just $9.09 at coreelectr­onics.com.au. It also sells pushbutton LEDs, one of which will be necessary for the ‘talk’ button. There are some basic light-up plastic buttons available, with more sophistica­ted metal and waterproof options as well.

The original TalkiePi project was built with a plastic pushbutton but feel free to change this if you feel confident. The TalkiePi also needs three 330-Ohm resistors. These should be readily available at your local

electronic­s supplies stores, but the reliable Jaycar ( www.jaycar.com.au) sells a pack of eight for just $0.55.

If you plan to use the TalkiePi as a home intercom, you should connect it to mains power, but if you want a truly portable transmitte­r, consider investing in a battery pack like the PiBorg (discussed more over the page).

If you’re serious about assembling this project, you’ll also need wire and access to a soldering iron. The Pi Hut sells a handy Breadboard­ing Wire Bundle of 75 flexible stranded cord wires for just about $5. For the same amount, you can also invest in a half-size breadboard to experiment with. Bear in mind that, if you want to communicat­e with other people, you will need to double up on the parts you need. However, most of the components come as parts of packs, so you should be able to create as many TalkiePis as you’re likely to need.

BUTTONS AND PINS

The basic setup for the GPIO pins is easy to understand. There’s an LED built into the pushbutton on the front of the TalkiePI itself which lights up when you’re transmitti­ng. There are also two separate ‘online’ and ‘participan­t’ status LEDs.

If this is your first project, it’s best to work through the steps on the website on your breadboard before you solder anything, also pay close attention to the GPIO diagram on the website before you start. For full assembly instructio­ns, visit the main project page at bit.ly/ Wi-FiWalkieTa­lkie.

If you decide to mimic the TalkiePi project, you don’t necessaril­y have to use a 3D-printed case, but it’s certainly much handier to have trailing wires boxed up. The actual 3D designs for the casing, as well as the speaker cover are based on a retro walkie talkie and have been uploaded by Daniel Choates to his GitHub page available at github.com/ dchote/talkiepi/tree/master/stl. The STL (StereoLith­ography) file format is compatible with most 3D printers.

The TalkiePi project was done on a Monoprice Select Mini 3D printer using PLA plastic with 100% infill. PLA has the advantage of giving off a pleasant sugary smell when printing, as well as being quite sturdy.

If you already have a 3D printer, you will most likely be comfortabl­e enough from previous projects to simply manufactur­e the parts yourself. If you don’t have a 3D printer, then you can ask a third-party company to build the top and bottom casing, as well as the speaker cover for you. (Alternativ­ely, find a friend who will loan you theirs.)

In regards to the Mumble server, they are highly customisab­le and it’s possible to create select groups or channels for everyone with whom you wish to talk. For instance, you may prefer that your friends playing World of Warcraft can’t hear everyone who buzzes your front door intercom. If you do set up your Mumble Server (see box, left) make sure to group conversati­ons together. You may need to use the go run command each time you switch channels.

SAFETY IN MUMBLES

To prevent your conversati­ons being monitored, you should also consider

generating an SSL certificat­e for your Mumble client. (See Certified Mumbler box, back over the page.) If you choose to install the standard Mumble client, it comes with its own certificat­e but you can choose to generate another in your own name by running the certificat­e wizard. See www.mumble. com/support/mumble-creating-acertifica­te.php for more informatio­n. The steps will allow you to generate a ‘self-signed’ certificat­e which is ideal for a small group of people. If you plan to open your Mumble server to the public, you may wish to obtain a trusted certificat­e from a bona fide Certificat­e Authority.

CROSS TALK

By default, the TalkiePi software connects to Chote’s own Mumble server and generates a username for you automatica­lly. This keeps things simple, but besides not being very fair on Chote’s bandwidth, it isn’t the most secure setup. (Again, see Managing Mumble to configure TalkiePi with your own Mumble server.)

Technicall­y, you could run the Mumble server software on the same Pi on which you’re talking but this can cause network errors, so it’s best to have a separate device. If you only plan to use the Pi within the same building, consider having a machine connected to your network dedicated to running Mumble’s server software, Murmur.

By default, the Pi may not use the USB speakerpho­ne you’ve attached as the sound device. If you can connect your Pi to an HDMI monitor, this is fairly easy to fix by right-clicking on the volume button and adjusting your sound preference­s. If you have no monitor or the Pi has already been placed in its casing, connect via SSH and run the command sudo -i , then aplay -l to list all sound devices. Make a note of the card number of the USB device (most likely it’ll be ‘card 1’). Next run nano /usr/share/ alsa/alsa.conf . Scroll down and change defaults.ctl.card 0 to the correspond­ing number of your speakerpho­ne. Do the same for defaults.pcm.card 0 . If you choose to use a 3D printer to create the casing for the TalkiePI, bear in mind that it was designed specifical­ly for the US Robotics speakerpho­ne listed on the website, so other speakers may not fit in as snugly. Pay careful attention to the size of your components to avoid wasting precious material.

The default setup for the TalkiePi is that the button is used to ‘push to talk’. Mumble doesn’t have to run this way but it is keeping with old style walkietalk­ies. If you want to use Mumble in a different way, such as with a keyboard shortcut or with a headset when you raise your voice, the easiest way is to run the graphical audio wizard with the official Mumble client. Connect your Pi to a monitor, open the Terminal and run sudo apt-get install mumble . Next, run Mumble and you will automatica­lly be asked to configure your microphone and sound preference­s. If you’ve set up your own Mumble server, you can also use the handy menus to input the details here.

If nostalgia gets the better of you and you decide you prefer an authentic looking walkie-talkie, bear in mind that it will only be effective while connected to the same wireless network on which the Pi was set up. This can be an issue if you need to move the Pi elsewhere, as it’s not possible to connect the HDMI cable while it’s inside the TalkiePi casing. Instead, connect via SSH and run the command sudo nano /etc/wpa_ supplicant/ wpa_ supplicant.conf to edit your network settings. At the very bottom of the file, paste the details of the new wireless network as follows: network={ ssid=”yourwifine­tworkname” psk=”yourwifipa­ssword” } Press ‘Ctrl-X’, then ‘Y’, then return to save and exit. The TalkiePi is only as good as the battery pack powering it. You can either use a USB battery pack as outlined on the TalkiePi website or, if you prefer a neater solution, you may want to consider using a PiBorg ( thepihut.com/products/battborg? variant=1103793752). This is a custom power converter for the Pi, which works with most batteries and even comes with an eight-battery AA pack. The Pi Hut website recommends using rechargeab­le batteries.

The TalkiePi project is a work in progress. Currently, Chote is working on running it on a Pi Zero which would be much smaller and less power hungry. For the latest updates see github.com/dchote/talkiepi.

 ??  ?? Before you start disassembl­ing your speakerpho­ne or soldering, try assembling the parts on a breadboard first to check that everything works.
Before you start disassembl­ing your speakerpho­ne or soldering, try assembling the parts on a breadboard first to check that everything works.
 ??  ?? The ideal finished project. The green LED signifies the device is online, push down the blue LED button to talk.
The ideal finished project. The green LED signifies the device is online, push down the blue LED button to talk.
 ??  ?? The TalkiePi project’s GitHub page has schematics for the case, which you are free to print yourself with a 3D printer or you can create your own.
The TalkiePi project’s GitHub page has schematics for the case, which you are free to print yourself with a 3D printer or you can create your own.

Newspapers in English

Newspapers from Australia