Doing easy things the hard way.

  • Pretty Graphs from Twilio Narrowband

    I just got my hands on the Twilio Narrowband dev kit… and it is a sweet piece of kit. It is centered around a small Arduino compatible board that has a lot of Seeed connectors. Most importantly it also has a cellular modem built in that is a designed to work with T-Mobile’s nationwide narrowband…

  • Silly WebSocket mistake

    I recently was trying to add a websocket to an existing NodeJS Express app I had written. Here is the important code below:   const WebSocket = require(‘ws’); const app = express(); const server = http.createServer(app); const wss = new WebSocket.Server({ server }); app.listen(8080, function listening() { console.log(‘Listening on %d’, server.address().port); }) I kept getting…

  • Getting Docker up on Linode, with Ubuntu 16.04

    Unfortunately it is not a straight forward process for getting Docker installed on Linode using Ubuntu 16.04. The Image that Linode provides for Ubuntu 16.04 has a custom Linux Kernel installed in it. Docker requires AUFS, which is part of the linux-image-extra package. This package is tied to the kernel version, and since Linode kernel…

  • Compiling GnuRadio on a Raspberry Pi

    The best bet for most people looking to install GnuRadio on a Raspberry Pi, is to simply do: $ sudo apt-get install gnuradio gnuradio-dev …and you are done. Unfortunately, it is not so simple to actually compile the latest version on a Raspberry Pi. While the Pi has gotten faster with the 2 & 3,…

  • QPSK in OP25 & Fixing Performance

    I recently switched over from using a single SDR, with lots of bandwidth to using a bunch of RTL-SDRs each with a smaller amount of bandwidth. The system I am capturing broadcast the same transmission from multiple towers at the same time using something called Linear Simulcast Modulation (LSM). The only problem is that the…

  • Using Multiple RTL-SDR to Capture a Trunking System

    Most trunked radio systems have the channels they use spread out over a couple MHz worth of spectrum. In order to be able to record more than one broadcast at once, you pretty much need to have an SDR that has enough bandwidth to cover the lowest channel in the system and the highest on…

  • Getting iOS Notifications in Linux

    Apple provides access to iOS notifications over Bluetooth LE through the Apple Notification Center Service. It is really a pretty cool thing. I got support for it up and running in Arduino and documented it here. It works great and has been pretty reliable. The problem is that it is not very practical. First off,…

  • MagicBands + RPi + LEDs = Fun

    Disney has made RFID cool with their MagicBands. You can unlock your hotel door, buy a meal and even get into the park just using your band. It was honestly a lot of fun to use… so much fun that I wanted to keep using them when I got home. Luckily, you get to get the…

  • This time I am definitely sure it works with 3.7

    So everytime I think I have my Smartnet Recorder working with GnuRadio 3.7, I find another bug. This time it had to do with having the control channel to the far edge of the sample range. The control channel was around 854.86MHz, the center was at 858MHz and the sample rate was 8Msps. This put…

  • SmartNet-Recorder & GNU Radio 3.7

    I finally got my SmartNet-Recorder software working correctly with GNU Radio 3.7. Or more correctly, I finally squashed the lingering bugs in 3.7, so my code now runs correctly. There is a 3.7 branch in my GitHub Repo and that will shortly become the Master Just to capture them correctly, here are the threads from…

Got any book recommendations?