electronics

Electronic hardware, gadget designs, do-it-yourself computer modifications. Stuff with parts.

circuit blocks

A set of simple electronic building blocks, easy to work with for little hands.

dimbot

A sunrise alarm, controlled over the ZigBee wireless network.

dingbot

An in-house paging system using ZigBee.

heathkit et-3400

A 30-year old pipsqueak of a computer. My first.

mancala

A handheld version of the African board game Mancala.

praybot

My solar prayer wheel.

remote

A custom movie-watching remote control.

sleeplight

The SleepLight, a night light and diurnal clock for preschoolers.

sump alarm

An alarm that sounds when my sump pump loses power.

theremin

A musical device related to the traditional theremin.

PICkit 2 automator

Since I made my first mod to the PICkit 2 applet source, Microchip completely rewrote the applet. They use .NET, which I consider to be pretty much a virus, but I was considering getting all the MS development tools installed and getting up to speed with C# to work with it.

But then I realized that it would be simple to just automate the existing applet with an external program, and that would mean I wouldn’t have any changes to integrate into the Microchip source (as well as not having the dreaded MS tools installed).

PIC-based solar engine (PICSE) 2007

My PrayBot project last year needed a “solar engine,” and the quickest thing I could come up with was based on a PIC instead of the more usual BEAM-style solutions. This year I wanted something more efficient. But it still ended up with a PIC, and it’s much more efficient than any of the BEAM designs I’ve tried.

Troubleshooting Rule #2: Is it turned on?

Another embarrassing discovery is that the thing in question isn’t working because you didn’t turn it on. This rule could come first, as in some sense it’s more basic than Rule #1, but for the simple AC-powered appliance, you have to plug it in before you can turn it on, so I list it second.

Again, there are lots more useful ways to think about whether you’ve turned something on. For instance:

Troubleshooting Rule #1: Is it plugged in?

A surprising number of day-to-day problems are solved when you realize that the thing just isn’t plugged in. Oops.

The obvious sense of “plugged in” is “plugged into the mains supply” - the AC wall outlet.

But there are many other useful senses to look for:

Weber's Troubleshooting Rules

  1. Is it plugged in?

  2. Is it turned on?

  3. Is it working as designed?

  4. What’s changed since it worked?

  5. What don’t you know?

Robot Taxonomy

Having been playing with various electronic gadget designs that might or might not be considered “robots,” and recently thinking about buying a Roomba, I was wondering what my own working definition of a robot actually is. Here’s what I came up with while washing the dishes.

PICkit 2 modifications

Note: This page is obsolete, but I’m leaving it up for history. My current solution for automated control is here.

Microchip’s PICkit 2 is a good, cheap PIC programmer. One nice thing about it is that they’ve made the source code available. So you can tweak it if it doesn’t suit you.

In order to integrate it with the SourceBoost IDE, I added this command-line option:

Quadrature encoder module

Here’s some PIC assembly source code (MPASM) for reading a quadrature encoder. It’s fairly raw and simple, but it works.

LED driver

Here’s some of the source code for a LED driver chip I’m working on. It’s just here for inspection at the moment, as I’m trying to get help with a problem.

XML feed