My Ham stuff

My life as radio amateur ON1ARF

Build your own echolink node using the raspberry pi for 100 euro.

Small unix devices like the raspberry pi, beaglebone, pogoplug and others are proving to be very usefull tools for all kind of ham related applications. They have been used in project involving D-STAR, rig-control and wspr server, for APRS node and other.

This project looks at another aspect of amateur radio: echolink.
The aim of this article is to describe how to create a complete echolink linknode using raspberry pi; complete for around 100 euro. The goal is to provide a platform to allow people to get their first experience with the raspberry pi, with interfacing computers and radios and with setting up ham infrastructure.




The hardware components needed for this project are:

  1. A raspberry pi + power + case + SD card
  2. A USB audio-fob
  3. (optionally) a USB-to-serial adapter
  4. A “digital modes” interface board (either self build or commercial)
  5. A handheld radio + (by preference) an external power-supply
  6. An external antenna

This project aims at using as much as possible homebrew equipement and off-the-shelf components.

continue reading…



It has been a couple of months since my last blog update, but that did not mean nothing was happening.


A couple of days ago, the last version of the c2gmsk modem has been synced on github. (see link here)


In short, the following things have changed:

  1. In request, the c2gmsk modem has been converted into an API (application program interface). The idea is to allow the modem to incorperated into other applications. Application that come into mind -appart of the applications of the c2gmsk package itself- are FreeDV and TheLinkBox.
  2. As a result: the “gmskmodem” application has been split into two parts: the c2gmskAPI and the c2gmskmodem itself.
    continue reading…


(see below for english)

Gisteren heb ik een presentatie gegeven over D-STAR en GMSK in de “shack OSB”, de Brugse sectie van de UBA. Deze videos van de presentatie staan online:
Deel 1: video en PDF
Deel 2: video en PDF


Yesterday, I have a presentation on D-STAR en GMSK in “shack OSB”, the Bruges radio-club. The presentation was in dutch, but -for who may be interested- the videso are online:
Part 1: video and PDF
Part 2: video and PDF



Kristoff – ON1ARF



The pandaboard is one of the boards I use for the gmskmodem project. It’s a very interesting board combining a powerfull CPU, a well supported full linux distribution and no less then 56 GPIO ports.


GPIO: General Purpose Input / Output:

The normal way to connect an external device to the pandaboard is via the pins of one of the two Expansion Connectors. Every connector provides 28 pins, so this means that the pandaboard offers no less then 56 ports to connect external devices to the board. However, these connectors have two disadvantages: continue reading…

Hi All,


It has been two and a half months since the last post on the blog on the codec2 gmsk modem. In the mean time, there have been two updates on the source-code for the gmsk modem on github. The changes involved this:

continue reading…

Hi All,


Just a small post to show that sometimes, things do not always go as planned.


Today, I have been doing some more work on the gmsk modem project. On the video that was posted, I used the raspberry pi as “sender” and the pandaboard as “receiver”; so today I decided to reverse the project and check on actual CPU-usage on the pi when receiving.

However, I ran into all kind of strange issues, all of them related to errors in the bitstream that is received.

continue reading…



With the release of our first video (see article here) of a demo QSO, we have reached a first milestone in the development of the gmskmode for  codec2 on VHF and UHF. The emergence of small, cheap but very powerfull linux-computers like the raspberry pi, pandaboard, beaglebone and others have really helped to make this possible.


Now, we are reaching a point where the further development of the modem could use additioal help, hence this call: software and hardware developers needed.

continue reading…



A video of the gmskmodem in action using the codec2 voice codec has been made public on the web (see link below). It shows a one-way demo QSO between two radio/board combinations:

  • In the transmitting chain: a headset, a raspberry pi board doing codec2 coding and GMSK modulation, a yaesu FT-857D and two USB audio fobs
  • In the receiving chain: a kenwood TH-F7E, a pandaboard for gmsk demodulation and codec2 decoding, an USB audiofob and a small speaker
The setup is described in this drawing:



It’s summer and this that sitting at home behind the computer is not always the first priority. ;-)
It has been a month since the last post; so here some updates on different projects:


Concerning the D-STAR voice-announcement package, Ken, KE2N, discovered there is an issue with the text-messages send allong the voice-announcements:
If the text-message, which is located in the slow-data part of the voice-announcement, is repeated to quickly, certain D-STAR radios will not show the complete message on their screen. After some experiements with different settings by Ken, the voice-announcement code was changed so that the D-STAR text-message is repeated every 2 seconds multiplied by the number of characters in the message.

The updated source-code is available on github:
Thanks to ken for troubleshooting this issue.


Bobby, KF4GTA, has activated an internet-stream of the D-STAR repeater W4VLD of the Valdosta Amateur Radio Club; using the DSTK (D-STAR Switching matrix Toolkit). The system is currently still in test: click here to listen to it.
The current system uses the icecast streaming-server and vorbis ogg-based streaming souce-client ices but we would like to experiment with mp3 streaming too.
If somebody has any information on how to configure ezstream to stream/mp3-encode audio from standard-in, please feel free to drop us a note!


I have also taken the opportunity to do some cleanup of the DSTK code: ”cap2rpc” and “rpc2amb” have been updated and moved to a new folder: DSTK_v2.
Also, a new application has been added: “udpbounce“. This program can be used to move DSTK streams between different servers. The goal is have the server doing AMBE decoding (i.e. the server with the DVdongle) to be located on a different place then the PC used by the repeater.
The code for the DSTK can be found on github:


The code of the GMSK modem has been changed so it can be optimised for different kinds of processors: especially concering the “multiply-and-add” commands used in the DSP code. By selecting an option in the Makefile, the source-code can now be compiled to use 64bit or 32bit integer math or floating point math. Also this code is available on github:

continue reading…



Yesterday, I pushed version 0.2.2 of the voice-announcement software on github:

This version has one new feature: ambestream and wavstream have an additional option to set the source IP-address for outgoing connections; especially to be used for streaming to dextra reflectors.

continue reading…