Raspberry Pi APRS iGate

Further to my previous post(s) on APRS and Specifically Direwolf, here’s something with a bit more meat.

APRS has always been a bit of a thing for me. I like to go for a ride or a walk on the Lakeland fells and whilst I don’t get to go on as many SOTA trips as I’d like I do nearly always carry a hand held when I’m on the mountain bike. I know that there are a few local hams who like a bit of APRS and you never know when you’ll need a way of communicating when you’ve gone over the handbars and smashed your phone….

So what?

Well I also have an early Raspberry Pi model B and an RTL-SDR dongle. I live quite close to a digipeater and also have a terrible QTH for an iGate. So, I thought I’d combine the two with my liking f APRS. I’m glad to say the process was really easy and very robust. Want to have a go yourself? Ok…

So lets start

  1. Get you SD card and load it with the OS (I used the Raspian image from the Raspberry Pi site)
  2. Get a copy of the Direwolf software from WB2OSZ (and simply excellent documentation) from GitHub
  3. Have a look in the Direwolf docs folder. Follow the Raspberry-Pi-SDR-IGate instuctions and the Raspberry-Pi-APRS. I’m definitely not going to try and replicate of better these docs as they are perfect
  4. Get an APRS passcode from Magicbug
  5. Off you go, simple as that. Any issues then the Direwolf Yahoo Group should sort you out


That’s it really. There are a few little odds and sods like beaconing your iGate. This can be achieved by adding a line into the sdr.conf file so it looks a little like this:

# # Sample configuration for SDR read-only IGate.
# We might not have an audio output device so set to null.
# We will override the input half on the command line.

ADEVICE null null

# First you need to specify the name of a Tier 2 server.
# The current preferred way is to use one of these
# regional rotate addresses:
# noam.aprs2.net - for North America
# soam.aprs2.net - for South America
# euro.aprs2.net - for Europe and Africa
# asia.aprs2.net - for Asia
# aunz.aprs2.net - for Oceania

IGSERVER euro.aprs2.net

You also need to specify your login name and passcode.
# Contact the author if you can't figure out how to generate # the passcode.

IGLOGIN MX0WRC 12345 (your passcode)
PBEACON sendto=IG delay=0:30 every=10:00 symbol="igate" overlay=R lat=54^38.5611N long=3^3$

# That's all you need for a receive only IGate which relays
# messages from the local radio channel to the global servers.

I’ve not managed to get it to start up automatically if it falls over with the dw_start.sh script but that is a work in progress. Here we are on APRS.fi


Ok, thats all very well but mine is remote. There are a few suggestions from the RPi people but I plumped for Weaved and tightVNC as a solution. Here are the instructions I followed for Weaved, and for TightVNC . If you don’t fancy a link then try this:

Install Weaved and run the installer

sudo apt-get install weavedconnectd
sudo weavedinstaller

Then TightVNC

sudo apt-get install tightvncserver

Run it once to do the password thing, then to run at boot

sudo su
sudo nano vncboot.sh

Enter this into nano

#! /bin/sh
# /etc/init.d/vncboot

# Provides: vncboot
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start VNC Server at boot time
# Description: Start VNC Server at boot time.


export USER HOME

case "$1" in
  echo "Starting VNC Server"
  #Insert your favoured settings for a VNC session
  su - $USER -c "/usr/bin/vncserver :1 -geometry 1280x800 -depth 16 -pixelformat rgb565"

  echo "Stopping VNC Server"
  /usr/bin/vncserver -kill :1

  echo "Usage: /etc/init.d/vncboot {start|stop}"
  exit 1

exit 0

Then chmod

chmod 755 vncboot


update-rc.d -f lightdm remove
update-rc.d vncboot defaults

I can’t tell you how useful to follow the steps enough. I found that one RTL dongle isn’t quite the same as another so there can be issues. So much so that I wiped the SD card a few times so as to get right and simple. If you didn’t want to run Jessie, Jessie lite will do but you’ll need to find an alternative way to remotely access the RPi, with something like SSH as VNC doesn’t work (easily) without the X server.

As always, comments, suggestions and alternative approaches are always welcome, after all this is a hobby and none of this hard work belongs to me, I just follow the instructions 😉

FreeCAD 3D design software

Our club has been (slowly) constructing a SatNOGS 3D printed satellite ground station. It uses a bunch of parts that have been designed on a platform called 3D CAD. This is a free (as the name suggests) 3D CAD solids modelling tool. For those not familiar with mechanical design here’s a very quick and simple run through.

The good old days gave you 2 dimensional CAD packages. One of the most famous was AutoCAD. There have been many releases and it still has a place today (you can even get a free version called Draft Sight).

Perfect for producing 2D drawings in the traditional was. Also ideal for those .dxf files for laser cutting front panels for example. These are simple tools to get your head round but ultimately very powerful. This technology has been used to deliver some pretty complex engineering so don’t underestimate its usefulness

3D CAD design can look like a complex business but as tools develop the proliferation of simple to use applications exist and as expected they use their own language. 2D drawings are no longer the standard and so 3D parametric CAD systems are available from a number of big players like AutoCAD and SolidWorks. They range from very expensive professional packages that have features that only the very keen would need (like finite element analysis, animation and computational fluid dynamics) through to offshoots that are particularly aimed at home users. In amongst these packages are offerings such as FreeCAD and SketchUp which are completely free and very well supported. There is only one preferred standard and that is for the .stl file type although there are key differences between types.

Solids modelling and Surface modelling. As the names suggest one type produces solid shapes which are determined through sketching a part in 2D then turning that into a 3D part by stretching or revolving it around and axis for instance. These are generally referred to parametric modelling tools and they produce solid shapes. Examples of these types are FreeCAD, AutoCAD inventor and Solidworks. SketchUp on the other hand produces hollow surfaces. An easy analogy is between a dice and a cardboard box. Both are cubes, one is hollow and the other is solid. 3D printers for example need to think in terms of solids. This doesn’t mean you can’t use a surface modelling tool to produce a part, it means there are some additional bits of computer based thinking that needs to be done.

FreeCAD falls squarely into the 3D parametric solids modelling camp (for the purists, yes it does do sheet and mesh work but stay with me on this). It is also nice and simple once you get your head round the basic premise. Sketch something in 2D then pad it to make a solid and perhaps put in a pocket for a bolt hole for example. I have been working my way through a few tutorials on YouTube and can recommend theses…..

Once you get into the workbench idea and the language used it is relatively straightforward producing designs. I think the issues are that the assembly workbench isn’t quite there yet and it isn’t as polished as commercial alternatives, but hey it doesn’t cost thousands.

There are also a number of developing online packages like 123D CAD and Onshape but I haven’t had a look at those in any detail. The premise is still the same. draw a 2D sketch, constrain it with dimensions, symmetry, equality etc and extrude, revolve, pocket to your hearts content. It is a really great step to see such powerful tools available for free.

It wouldn’t be fair to mention the extremely accessible surface modelling package that is SketchUp. A Once Google product that instead of producing solids models faces and uses clever tricks to make you thinks they are solids. This is a great tool and is good enough for 3D printing parts. Just beware of its limitations and well aware of the huge amount of models available in its warehouse.

Well worth considering for anything from shack layout to 3D parts design.

Hopefully I will get re-antiquated with this new tools as its been a while sine I behaved like a clanky (that is a mechanical engineer to you lot). There are some truly staggeringly clever products available that you only need invest a bit of time in learning.


Project collaboration

During my working life I collaborate with a large groups on multiple sites and we do stuff together. When I am attempting a radio projects I take on a different tack. I attempt to be either an expert in many things or I follow sets of instructions slavishly. Most of the time it takes a long time and there are numerous failures or dead ends along the way. I’m not sure why I do this.

There are many websites that will offer support to the frustrated builder or keen expert. But few that offer hobby collaboration (or at least I haven’t looked too hard but a quick trawl didn’t really yield much). I wonder why that is? A probably misquoted quote goes along the lines of ‘Travel alone, travel fast. Travel together, travel further’. You could argue that sites such as forums offer support and collaboration by using a project management analogy, I can not agree with that. Tasks are not identified, resources are not defined and task durations are not agreed. Expertise is sought, sometimes this results in no responses.

A local ham was at the centre of a project that has now become a major SDR rig. He worked from home, in the evenings with a group spread around the world. They have developed a really astounding product that is now sold as part of the Apache Labs brand. Why is this approach not prevalent?

I’m not offering a solution, just a question. Does a place exist or am I right in assuming that there are some international superstars that produce lots of ‘things’ from 3D designs through to circuit boards and kits that hobbyists use? I think there ought to be a place where we can go to collaborate. I just don’t know where it is or how to engage with it….yet.

SatNOGS lives

The 3D printed satNOGS rotator that a few of us are building lives. Its a big deal for us as its taken us a while to get to this point. There’s still quite a few things to sort out but its good to see the thing running. Here’s the proof

RPiGate again

For a few weeks I have been attempting to use an RTL-SDR and a raspberry Pi 2 as an APRS iGate. Dutifully following a number of tutorials I failed to ‘Kalibrate’ the dongle several times and so put it to one side. Today however I have managed to get the thing running. Not with the original tutorial but with a different application called ‘Direwolf’.

There are quite a few clever sods kicking about and the guy who pulled this together is no exception. John Langer,WB2OSZ has not only produced a cracking application but also one of the most straightforward and detailed installation documents as well. What I particularly liked was the way that there was a step followed by an explanation of what the step was meant to achieve. I’m no great linux fan, partly because I don’t understand what the hell is going on and more importantly for me, why its not doing what I thought it should do and why. This small success may point me more in that direction though.

More to the point see. I told you it was working!