Euclid’s Doodle – and writing a visualization with Matplotlib

On page 110 of Professor Stewart’s Casebook of Mathematical Mysteries, he shows a neat visual way of calculating the GCD (Greatest common denominator, aka HCF, Highest common factor. Given a box with sides of two different lengths, draw squares from the lesser side until you can draw no more. Then continue from the corner the other direction. The smallest square has edge length of the GCD!

Continue reading “Euclid’s Doodle – and writing a visualization with Matplotlib”

Reading Amateur Radio Frequencies with RTLSDR device and Python

There are many cheap ($5-20) USB RTL-SDR devices you can find on Newegg or Amazon that have an unexpected extra of being able to pick up broadcast radio. This is a handy feature, and in fact we can even read ham-radio frequencies by changing the bandwidth and frequency to read. There are excellent howtos on the easy installation of GQRX for just listening to the radio and setting your frequency and listening, and that’s a good way to start with testing your device. In this post I’ll show how to read and listen to radio using just Python and the Python RTLSDR library, which will show a lot more detail in how decoding radio works, and lets you run a clean interface to listen or record radio.

Continue reading “Reading Amateur Radio Frequencies with RTLSDR device and Python”

Adding BLM Land Use Maps to Osmand on Android

In the US, various hunters and fishers use the Bureau of Land Management’s maps. There are of course several apps that can let you add BLM maps…

  • Avenza has some maps provided by BLM specifically for avenza app.
  • Gaia maps pro has had the public lands feature for years.
  • Osmand has not the greatest support for viewing what land area you are in and looking at, but many local points of interest are in this app that are not in others as it uses the Openstreetmap which can be added and edited by locals with places they actually care about. Also unlike most other offline mapping apps it is open-source, available on F-Droid store, and very extensive, and respects user freedoms and an active developer community.

For some time I have wondered why the public domain BLM land use maps aren’t an option in Osmand, I tried mobac but found no way to get the maps I wanted, but after a bit of research I found the answer! Here are the steps to add land use maps to Osmand. Continue reading “Adding BLM Land Use Maps to Osmand on Android”

Setting up AREDN node with Ubiquiti Nanostation with Ubuntu

If your area has other ham-radio operators that are using an AREDN network, an Ubiquity router is a great way to connect to the local LAN network. Note that you will need:

  • An amateur radio license.
  • An Ubiquity Nanostation (the “loco” one is cheaper but it has less range 🙁 )
  • POE outlet to 2-ethernet adapter (included when you buy a new Nanostation)
  • Two ethernet cables (You will want at least one outdoor-rated cable if you will put it outside, which will likely be necessary for good signal.)

Continue reading “Setting up AREDN node with Ubiquiti Nanostation with Ubuntu”

Into Neural Networks! Part 1

Keras is a library that makes machine learning easy to run and train without knowing too much of the math behind it. It has many  tutorials including an excellent howto by Egghead.io, Pyimagesearch and of course the official documentation and books…

…but what if you want to look into the details of how it works? Neural networks are a series of functions that are adjusted over time, and we can “see” what happens in a simple example. Continue reading “Into Neural Networks! Part 1”