Author Archives: smittytone

About smittytone

Tech Author and Writer

How to build a cellular IoT device with the Raspberry Pi Pico — part two, the code

In part one, I described an IoT demo setup based on the Raspberry Pi Pico and the Waveshare Pico SIM7080G Cat-M1/NB-IoT cellular add-on board, and wrote about some of the design goals. Now it’s time to implement that design with some C++ code: a host application, drivers for the modem, the HT16K3-based display and the MCP9808 temperature sensor, and some third-party libraries to decode incoming commands formatted as JSON and encoded in base64 for easy SMS transmission.

Pico + Waveshare cellular module = compact IoT development board
Continue reading

How to build a cellular IoT device with the Raspberry Pi Pico — part one, the hardware

To turn the Raspberry Pi Pico into an Internet of Things (IoT) device, you need to add wireless connectivity. I thought I’d give it go, to see how straightforward it might be to connect the Pico to cellular networks and have a bare-metal app written in C++ run the show. For a modem, I chose to use Waveshare’s suitably sized Pico SIM7080G Cat-M1/NB-IoT.

Raspberry Pi Pico piggybacking on the Waveshare cellular board
Continue reading

Spectrum, Oric, Dragon… even Enterprise — demanded designs come to smittytone’s retro tech T-shirt store

You asked for it and you got it: following the ZX80 and ZX81 keyboard layout T-shirts comes my ZX Spectrum version — giving you the chance to steal a march on April 2022’s 40th anniversary!

Wear your ‘dead flesh‘ with pride. ZX Spectrum keyboard shirt modelled by yours truly
Continue reading

PreviewApps updated

All three of my PreviewApps — PreviewMarkdown, PreviewCode and PreviewYaml — got big updates this week. Headline features: significantly improved font, style and colour selection, across-the-range stability improvements, and faster PreviewCode theme preview presentation.

Continue reading

How to pop up a Picoprobe from the Adafruit QT Py RP2040

A little while back I wrote about Adafruit’s QT Py RP2040 and how it makes a nice, compact Picoprobe. That’s a Raspberry Pi RP2040-based device used as a bridge between your computer and a target device for debugging work using Single Wire Debug (SWD). I first used the QT Py RP2040’s side-mounted GPIO pins, but SWD hosting is a great role for the device’s QT Stemma connector.

QT Py Rp2040 with its SWD-ready QT Stemma connector in black and RGB LED marked NEO
Continue reading

Tackle async signal safety in Swift

How do you safely interrupt a command-line program written in Swift? This question was posed to me this week by a reader who got in touch to point out that boilerplate code included in my How to write macOS command line tools in Swift post might not be totally safe: it could leave a program and system in an undefined state, which is never a good thing. So I took a closer look.

Continue reading

Celebrate the 40th anniversary of the Sinclair ZX81 with this multifunction-key-tastic T-shirt

Nearly half a century ago, Clive Sinclair’s Sinclair Research made history. It released the ZX81, one of the key home computers of the 1980s, as the first low-cost micro available to High Street shoppers. And you can express your love of early 80s tech with my latest retro-wear: the ZX81 keyboard shirt.

Modelled by yours truly
Continue reading

Raspberry Pi Pico proxies: the Pimoroni Tiny 2040 and the Adafruit QT Py RP2040

Having spent some time with the Raspberry Pi Pico, I thought it was time to try out some of the other RP2040-based development boards that have become available. When it launched the Pico, the Raspberry Pi Foundation said it would make its RP2040 microcontroller available to third-party board makers. Retailers Pimoroni and Adafruit were among the first to toss their caps into the ring. Their offerings: respectively, the Tiny 2040 and the QT Py RP2040.

RP2040 boards: Pico (L), Tiny 2040 (TR) and QT Py RP2040 (BR)
Continue reading

Looking for syntax highlighted QuickLook code previews? Look no further

I’d like to introduce you to the latest member of the PreviewApp family: PreviewCode, which provides syntax-coloured QuickLook previews and Finder icon thumbnails for over 50 programming languages, including Swift, Objective-C, C++, Rust, JavaScript and Python, and data file types for macOS. You can choose to preview your source code any of 100 dark and light themes.

Previewed code courtesy of PreviewCode
Continue reading

Stay ahead of git with this sharp script

I work on quite a few git repositories at once, and I don’t always commit changes in one before making changes to another. Or if I do, I don’t always push the changes up straight away. That might not be best practice in software development, but hey, it’s what I do. The issue for me is remembering what state each repo is in. Here’s the script I use to tell me.

Continue reading