Notes On Software

February 13, 2024
My particular setup for programming the Raspberry Pi Pico is focused on C++ with debugging capabilities. I have bought a Raspberry Pi 5 just for this purpose. Here is the short version of getting setup.
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.
July 22, 2021
There are times when a device loaded with software needs to be configured without a keyboard or monitor. A WebApp is a great way to do just that, but what if you can't or don't want to connect to an existing Wifi network. We will discuss these scenarios in this document.
March 26, 2021
Configurations are part of most every program, configurations can be handled in a number of different ways. This is my simple method for handing configurations variables in Go. Check it out!
March 3, 2021
Tracking tasks does not have to be Rocket Science! Absurdly simple, profoundly liberating and insane to ignore! We are going to look into Kanban.
December 25, 2020
Raspberry Pi's have just become even cooler! Add an inexpensive touch panel and you can create insanely cool.
November 3, 2020
A brief look at Go timers to clear out stale sensor stations.
April 11, 2020
New software often requires an exploration period that often results in a Proof of Concept (PoC) if you mistake a PoC with Production code you maybe screwed.
April 1, 2020
This quick cheatsheet will get you ready to start working on a go project like the IoT project.
February 3, 2020
Perfection is an illusion. We are not striving for perfection, we are striving for correctness. It is imparative we do NOT get distracted fixing every little anticipated problem when the Hoard is at the gate.
December 25, 2019
VueJS is a JavaScript framework that has become immensly popular in recent years for good reason in my humble opinion. I am specifically interested in using vue to develop kiosk style dashboards.
December 20, 2019
Bootstrap can be used to quickly get a web project up and running without having to futz much at all with css.
October 23, 2019
Good software, even crappy software that is useful will live many lives (versions) and therefore should not be treated as a final destination. It should be treated as a flawed, flowing and ever changing entity.
September 22, 2019
The programming language Go as 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.
May 24, 2019
Red Eye manages streams of videos from cameras like the Raspberry Pi appropriate for real time navigation, storage and replay.
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.
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...
May 3, 2019
MQTT is a messaging protocol commonly reffered to as Publish/Subscribe or is an popular solution to distributed system communications, where you do not want to directly couple the publisher and subscribers. That is a fundamental design of this MBR project.
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
April 25, 2019
What a cool, inexpensive and powerful alternative to the Arduino, with Wifi, BT, etc all built in makes it an attractive alternative to the Arduino, however with much powerful comes much challenge! Let us tame this beast and enjoy a long relationship of mutual respect.
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.
April 22, 2019
The control station is where the robot will come to refuel and reload applications, it also manages off vehical cloud controls, including compute, storage networking.
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, BLT, etc).
March 3, 2019
At some point developing software of any real usefulness or complexity one will need to write or debug programs that doing more than one thing at a time. To do this well one must understand the concepts of non-blocking and asynchronous programming.
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.
December 4, 2018
Websites are as common as magazines and shoes in today's society. However the types and usage of websites vary from extremely simple single pages to absurdly complex corporate sites that come from different departments and a variety of authors, editors and web-masters.
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.
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.