Notes

Smaller working references, experiments, and historical notes on software, networking, embedded systems, and tools.

This section is for smaller observations, setup notes, experiments, and older project references that are still useful but not necessarily canonical.

Use Notes when you want implementation details, project history, or a narrow technical reference. Start with IoT or Software when you want the polished architecture and delivery paths.

Current Technical Notes

These are the strongest current notes:

Older Project Notes

These are useful historical references, but they should not be read as current recommendations without checking the surrounding context:

How Notes Fit the Site

Notes are smaller and rougher than pillar articles. They may support an article, explain a detail, or preserve project history. The section remains useful as an archive, but the primary reading paths live in IoT, Software, and Projects.

Exposing a Go App as Claude MCP Tools

May 22, 2026

How to implement an MCP server in Go that exposes application functions as typed tools for Claude Code and Claude Desktop — with a working example from the Trader FX engine.

Adafruit Soil Moisture Sensor Notes for IoT Projects

March 13, 2024

Notes on using the Adafruit STEMMA soil moisture sensor after unreliable results from cheap capacitive sensors in an ESP32 garden project.

Soil Moisture Sensors for IoT Garden Projects

February 15, 2024

Notes on choosing soil moisture sensors for IoT garden projects, including resistive vs. capacitive sensors, common reliability problems, protection methods, calibration, and a practical recommendation for future builds.

Using Go timers for MQTT testing

May 2, 2022

Go timers along with a select can be used to simplify testing both read and write side of communication protocols. In this article you will learn to combine a Go timer along with a select statement to test both sides with a single test case.

Go timers to remove stale sensor stations

November 3, 2020

Older IoT gateway note showing how Go timers can track stale sensor stations, expire inactive devices, and keep gateway state from drifting.

Why Choose Go for Your Project?

September 22, 2019

The programming language Go has taken the development world by storm over the last few years. This article will discuss reasons why Go has become so popular and why you might choose it for your next project.

Red Eye Video Server

May 24, 2019

Red Eye manages streams of videos from cameras like the Raspberry Pi appropriate for real time navigation, storage and replay.

Skid Steering

May 15, 2019

Skid Steering is probably the simplest form of steering a vehicle, both its mechanics and software are very simple and a great place to jump in and get our feet oily.

Raspberry Pi Motor Control Software

May 14, 2019

This is from one of my early robots, a single Raspberry Pi connected to an Adafruit Motor Shield. I wrote the Skidder C++ class to drive the vehicle with skid steering. See how it works...

MQTT for Controller Communication

May 3, 2019

MQTT is a messaging protocol commonly referred to as publish/subscribe and is a useful option for distributed system communications, where you do not want to directly couple the publisher and subscribers. That is a fundamental design of this MBR project.

Streaming Video is Complicated

April 29, 2019

One of the primary requirements of my Mobile Robot project is the ability to stream live or _realtime_ video while the vehicle roams about. This turned out to be more complicated than I expected

Streaming Video Tools

April 23, 2019

The number of fantastic, but complex tools available for streaming is mind boggling, these are notes I started gathering as I worked through the redeye project.

TLV: The Type-Length-Value Protocol

April 17, 2019

A very simple byte oriented protocol used to swap unformatted messages over a variety of communication channels (i2c, SPI, UDP, TCP, RF, BT, etc).

Streaming Live Video on a Local LAN vs. the Internet

December 23, 2018

Streaming video over a local area network can take on a significantly different look than trying to live stream video over the Internet.

Inexpensive Motor Controllers for Arduino and Raspberry Pi

August 22, 2018

The first Robot I build, like many others used an Arduino Motor Controller, our first robots used Arduino Motor Controllers. We use them as dedicated output devices used to control voltage sent to motors, where as controls run on a Master Controller.

Control System Design

May 5, 2018

Boy do I gotta lotta learn. This control systems is pretty serious stuff! I'll have to learn some of this stuff to incorporate back into our driving algorithms.

IP Multicast Basics

February 3, 2018

IP Multicast is a seldom used but very useful mechanism for groups of machines to communicate. I will cover the basics of IP multicast in this document.