The Raspberry Pi as a SIP Client with PJSIP

I know, most people have no need to call a phone line to endlessly listen to an announcement or, even better, music. However, in my line of work I sometimes do. Over the years I’ve helped myself out with calling the time service that repeats giving me the current time endlessly. But it’s a kludge and I always wanted to have my own system. Finally, I had some time to fill the gap and the result is a Raspberry Pi connected via SIP to the telephone system that endlessly plays music when I call its phone number.

Continue reading The Raspberry Pi as a SIP Client with PJSIP

Why I Might Just Buy A Nokia 3310 (2017)

Smartphones must have become a really boring thing as a big hype was made at this year’s Mobile World Congress around the Nokia 3310 feature phone. It’s GSM dual band only (GSM is being phased-out in the US so why bother to include these frequencies) and its main purpose is to make phone calls and for SMS messaging. While most people wonder who would possibly buy such a phone who is in his or her right mind, …

Continue reading Why I Might Just Buy A Nokia 3310 (2017)

Backup Doubts? Use Checksums and Rsync

I recently got a bit of a scare when I noticed that some large files of several gigabytes that I copied from an SD card to a hard drive and vice versa were corrupted afterwards. Corrupted as in the last gigabyte of the file missing on the target device. Up to today I have no idea how this happened, I’m usually diligent enough to eject media and wait for the pop-up to notify me that it is save to remove the drive. One thing that was even worse was that I started wondering if my regular backups were affected as well. It’s a strange feeling when you suddenly don’t trust your backups anymore so I invested some time to find out if things were all right or not. Turns out it is not so difficult.

Continue reading Backup Doubts? Use Checksums and Rsync

EU-Roaming – The Lowest End Cuts the Cord

In a few months, the next state of EU roaming regulation will come into effect and network operators must charge the same prices in the EU as at home. Already last year, however, I was wondering if some network operators will respond by simply not offering international roaming anymore. And indeed, I’ve noticed the first German MVNO doing so now for some of his tariffs.

Continue reading EU-Roaming – The Lowest End Cuts the Cord

EVS Speech Codec Experience In The Wild – Forget AMR-WB…

When I heard about the Enhanced Voice Service (EVS) codec for the first time a couple of years ago I was a bit skeptical. After all, the AMR-Wideband Codec just went live in a number of networks back then and its sound quality compared to the traditional AMR-Narrowband was just stunning. So I thought that EVS could not raise the bar by much. In the meantime a number of network operators have launched EVS in their VoLTE networks and when I recently made my first EVS end-to-end call I was stunned at how much better it was even compared to a good AMR-Wideband call.

Continue reading EVS Speech Codec Experience In The Wild – Forget AMR-WB…

Volumio Re-Connects my Hifi to the Internet

Back in 2013 I discovered SqueezePlug and used a Raspberry Pi to stream music from an online service to my 25 year old Hifi. It worked great at the time on a Pi-1 for a long time until the SD card gave out. Unfortunately time had moved on and I couldn’t get the latest software version run smoothly on a Pi-1. Yes, I could have replaced it for a faster model. However there were other things that needed more attention so I never got around to it. Fast forward a year to the present and I was still stuck with no audio streaming to the Hifi when a friend told me about Volumio by Michelangelo Guarise and how well it ran on his Raspberry Pi 1 connected to his Wifi. Easy to install and easy to use, just flash the image to an SD card, he said, and you are good to go. Could it really be that easy?

Continue reading Volumio Re-Connects my Hifi to the Internet

NeXT, Steve Jobs and the History of the Dynamic Web

Reading stock exchange IPO prospectuses is probably not the first thing that comes to your mind when you want to learn something about computing history. This article by Hansen Hsu recently published on the blog of the Computer History Museum will convince you otherwise! In his article, Hansen discusses how NeXT, the company founded by Steve Jobs after he was ousted from Apple in the mid-1980s helped to shape the transition from a static to a dynamic web. His research is based on a draft S-1 filing for a potential NeXT IPO which was recently donated to the museum.

Continue reading NeXT, Steve Jobs and the History of the Dynamic Web

Linux: Adding Your Own Bash Shortcut Functions

When I’m using the command line on Ubuntu it’s often for very repetitive tasks for which I would have typed in the same endless command a thousand times if it weren’t for the CTRL-R search function that let’s me execute commands from the history list quickly by typing a part of it. There is one tiny drawback, however. There are some commands which are a subset of others, such as logging into a server via ssh to get a shell or to automatically execute a job on the same serer. Here’s an example:

ssh martin@xyz.com 

ssh martin@xyz.com '/home/martin/xyz.sh'

Both commands are identical at the beginning so as a consequence I sometimes have to type in CTRL-R a number of times before I get to the shorter one. There must be a better way to do this! And indeed there is as a colleague of mine recently showed me.

Continue reading Linux: Adding Your Own Bash Shortcut Functions

ADB and tcpdump on Android for Live Wireshark Tracing

Back in 2014 I had a post on how to cross compile tcpdump for Android to record all network traffic from cellular and Wifi into files for later analysis for Wireshark. I’ve known for a while that it’s also possible to use adb and tcpdump to pipe all network traffic from the smartphone over USB to Wireshark running on a PC for real time tracing. I didn’t really follow up on this since then because most dumping data into a file on the device and later transferring it to the PC was good enough for me. Recently, however, a more real time approach was required and I was actually quite surprised how easy it is to set this up once tcpdump is on the device.

Continue reading ADB and tcpdump on Android for Live Wireshark Tracing