an LED matrix display in an oak enclosure, showing multi-colored text in
        various bitmap fonts

This is still a work in progress: a full series of articles should be on the way, but I wanted to give a quick preview of a project I’ve been doing to explore the PIOs and network functionality of the RP2040/Raspberry Pi Pico W.

This series will feature a little bit of everything:

So, hopefully more content coming soon. In the meantime, here are a few more photos:

This site originated back in 2009 when I started applying to graduate programs and I needed a place for an online portfolio with a handful of projects. It started out as a small collection of HTML pages, each one describing a project, that you could click through in sequence.

At some point, I migrated all of the content into WordPress. I’d used WordPress before back on, which was my original blog where I posted weekly photos and updates about university life for friends and family. WordPress had improved quite a bit in the interim, and the WYSIWYG editor and upload manager made it really easy to make posts with images and everything.

But in the decade that’s followed, my fondness for WordPress has waned. I won’t bother with the details here, but the experience of posting has gotten frustrating to the point where I’ve basically stopped writing anything new here.

Recently, my colleagues have been encouring me to share more of my projects online. In particular, I’ve been starting to explore the RP2040 microcontroller and the Raspberry Pi Pico platforms based on it, and it seems that sharing my experiences might be helpful or at least interesting to the broader community.

So that’s led me to sit down and try to sort out my blogging situation. I’m dispensing with WordPress and have switched to a static site generated with Jekyll. This lets me write posts as simple Markdown files and handles keeping all of the tricky bits like navigation and tags coherent across the whole site. But the end result is plain old HTML—nothing to render on the server and no client-side JavaScript.

I’ve tried to migrate over all of the old content, and hopefully any existing permalinks should continue to work. I’ve even fixed up the images on some of the original pages that have been broken since the site migrated to WordPress over a decade ago.

The exception is that user-posted comments are gone (in practice, there were only ever a few of these; mostly the feature was just a magnet for spambots). If you want to get in touch or comment on a post, you can always send e-mail to me at my initials (the three letters in the logo) at the domain of this site.

Anyway, hopefully this works out and there will be some new content coming soon. There’s an Atom feed you can add to your reader if you want to subscribe to new posts.

For the past 12 or so years, the AT86RF23x 802.15.4 radios have been my go-to for low-power digital communication. They work pretty well, and I have a good software stack and protocols built up around them (which my friends decided should be called “Bri-Fi.”)

They’re sort of expensive, though—the bare chips are a few dollars each and modules were at least $20-30 last I looked. On a fully custom sensor board they’re not that bad, but for random side projects where I just want two things to talk to each other wirelessly, the cost of the chips and doing an RF layout are kind of annoying.

I’ve been seeing a lot of Nordic’s nRF24L01+ radios in the maker community. It seems there’s a pretty good Arduino library and the modules are available super cheap. I think I got five complete modules for about what I’d pay for one of the RF233 chips.

Anyway, I’m playing around with these modules and put together a couple of quick PCBs to try them out. I’ve been getting pretty good results milling boards at home using my little CNC router, so I thought I’d snap a few photos and write a “quick” blog post. This board is a little USB-to-RF bridge based around the ATmega32U2. If this works, it’s going to be the computer side of a custom user input device.

RF24 PCB layout
Not an ideal layout for an RF board, but some compromises are generally required to make things work in a single layer.
Older posts