Blog Posts


Voltage Glitch Injection

Aug 5, 2023 :

As a part of my VSP hacking project, I’ve been building a system to read firmware out of Renesas 78K0R microcontrollers, despite it being protected, using voltage glitch injection. Specificially, the system and attack are both described in Shaping the Glitch. ...

VSP Hacking

Jul 3, 2023 :

For some unknown and possibly unhealthy reason, I’ve decided to try hacking in to a Nissan Leaf VSP computer; this is the brain that provides the reverse beep, forward (slowish) whistle, the chirps when locking/unlocking/charging, etc. ...

CAN bus

May 30, 2023 :

Hacking on car stuff in the modern era nearly inevitably requires working with CAN bus. My CAN adventures so far have been fairly sporadic over the years, but generally tedious, so I want to collect some notes here in the hopes that someone finds them useful. My current focus is on using my Linux laptop to interact with CAN bus on a 2014 Nissan Leaf, and with a much smaller bus on my workbench connecting a few bits I’ve scavenged off a crashed Leaf. More on that project in another post! ...

Stopping Rust Threads

Jul 29, 2022 :

Recently, I discovered that a pattern I’ve been using for worker threads in Rust has a flaw: it doesn’t guarantee that objects in the thread get dropped properly. First, the bad old way - a more realistic example would usually send data through the channel: ...

Logging Program

Apr 14, 2022 :

Currently just a collection of notes, about a program I’ve thought about on-and-off over a few years. It’s log, it’s log, it’s better than bad, it’s good. That’s probably the worst possible name to search for… ...

How to Set a Mouse Snap Trap

Mar 31, 2022 :

This morning, I received a machine-translated message from an aliexpress vendor, apologising that their production had slowed due to the coronavirus pandemic, and so my geiger counter still hadn’t shipped. In a very 2020s way, that reminded me to make a blog post about a recent breakthrough in my ongoing battle against pestilence! ...

Electric Car

Mar 23, 2022 :

For a couple years, I’ve owned a 2014 Nissan Leaf (2nd generation). In that time I’ve found some useful resources, and had a few projects/ideas related to it. ...

Rust Firmware

Nov 23, 2020 :

For both work and personal projects lately, I’ve been working on firmware for ARM M0+ microcontrollers, written in Rust. Although the “ecosystem” is young and rapidly evolving, I feel like it is already useful in a commercial context. Hopefully that last sentence ages well! ...

Where to find X in Dunedin

Nov 27, 2019 :

Years ago, I worked for a big tech company where we had an incredibly useful page on the internal wiki; a list of recommendations for various providers of goods and services in the local area. Then, I quit that job and moved to New Zealand. ...

Programming Rust for KaiOS

Nov 4, 2019 :

In little fits and spurts, I’ve been tinkering with development targeting a KaiOS phone, a Nokia 8110 4G, with the aim of building Rust apps to run on it. Here’s how to get started, as of December 2019. ...

Tax Treaty between United States and New Zealand

Sep 20, 2019 :

Rather annoyingly, the current tax treaty between the United States and New Zealand seems to be available in the form of two “schedules”; the first is the original 1983 treaty, the second is a set of changes from 2009 to be applied on to the first. It’s hard to read, but if you want to it’s here. ...

Casio W-800H Extras

Sep 13, 2019 :

Usually, I wear an old Accutron 214 wristwatch, but the possibility of an upcoming long sailing trip had me thinking that I should get something a little more durable and easier to replace, ideally with an alarm. ...

Saving Money by Turning Off Lights

Jun 13, 2019 :

Conscientious people turn off the lights when they’re the last person to leave a room. I imagine that back when incandescent lighting was king, that probably made a lot of sense - leaving the lights on when nobody’s around would be wasting a substantial amount of money through both electricity usage and bulbs burning out. But, if the light being turned off is a modestly sized LED one, and especially if an electrician would be hired to replace a worn out light switch, I wonder if the situation is so clear-cut? ...

Yogurt

Jun 12, 2019 :

I go through a liter of so of yogurt each week, and it has generally come from the supermarket in kilogram plastic tubs. While these packages are recyclable, and it’s handy to have a few tubs around for storing paint or hardware, I would clearly prefer to reduce use of single-use containers. I’m also a fan of spending less money. Recently, I’ve found a neat way to spend less money, generate less waste, and play in the kitchen: make yogurt! ...

Making your PCB design fit with someone else's

May 29, 2019 :

A recent work project required designing a PCB to hold some pogo pins such that they could contact another board that I didn’t have design files for. Here’s an outline of the process that I used. I’ll call the board being designed the “jig”, and the one without design files will be the “mate”. ...

Anthology of Effective Techniques in the Employment of Computing Machines

May 15, 2019 :

Here are some computer things that I’ve found handy, in case they’re helpful to you, or future-me: ...

Looking Glass Tinkering

Jan 16, 2019 :

Last July, I backed a neat looking 3D display project called on kickstarter, to get a standard-size Looking Glass. Mine arrived early January, and I’ve quite enjoyed tinkering with it so far. Currently, it’s only supported via a Unity SDK in Windows and MacOS, but it presents to the host computer as a regular 2D HDMI-connected display plus a USB device (of primary interest is an EEPROM available via abuse of the HID protocol) and so hasn’t been much trouble to get going from Linux. ...

Reverse engineering the DVS bus

Jul 11, 2018 :

This post is the culmination of little bits of time here-and-there over the last several evenings, poking around with a DVS brand air handling unit, model DVS-G3 BC220. My aim is partially to share the results - how to talk with the system with a computer - and also to share the process used to figure out the protocol. Maybe I’ll do another post sometime, about what I’m intending to use one of these air handlers for… ...

PCB graphics with KiCad + GIMP

Jun 20, 2018 :

Update! I made a little utility to do this, as an exercise to learn some Rust. ...

Paper-based password generator

Feb 10, 2018 :

Lately I’ve been making an effort at being a bit more organised, and to that end have been maintaining a structured notebook. ...

Hakko Soldering Iron Handles

Dec 9, 2017 :

Following up on a previous post about modifying the FX-888 - I’ve upgraded my soldering station to a Hakko FX-951. The main motivation for the upgrade was my work on tiny Accutron coils; the FX-951 has both better tips available, and more handle options including a very fine one, and another with off-the-shelf support for inert gas soldering. ...

Getting started with ATSAMD21 development on MacOS

Apr 30, 2017 :

As often happens, a relatively simple task has turned in to a complicated task. This morning, I set out to finish off the design of the VCW scoreboard’s circuit board, which “just” involved shuffling some of the uses of the pins on the ATSAMD10C microcontroller… ...

Gear Design

Apr 16, 2017 :

Notes on CAD of gears. ...

Scoreboard

Apr 7, 2017 :

A small group from pact have been spending an hour or so each week at the makerspace for the last several weeks, learning to solder and learning a little bit of electronics too. They’ve finished their first projects, 555-based LED flashers, and are itching to do more! We’ve had an idea to make a scoreboard for their pickup basketball group as the next project, which seems quite popular. The scoreboard will involve a bit more soldering, plus some thinking about design, some programming, a little woodworking, some cleaning, and who knows what else. ...

FX-888 LED Mod

Mar 13, 2017 :

To mark the the USA’s daylight savings time switch, I spent some of this evening being super productive - modifying my FX-888 indicator LED! ...

Book Review, Pulse Generator, and Probing

Feb 4, 2017 :

Over the last month or two, I’ve been reading Johnson and Graham’s High Speed Digital Design; it’s a classic book on topics that might normally be thought of as “analog”, but are important in designing digital electronics. Very good read as far as electronics books go! ...

Commentary on 'first expedition to the south pole' google doodle

Dec 14, 2016 :

I’m a bit conflicted on today’s google doodle. It’s great to recognise Amundsen’s expedition to South Pole, and the graphic has a nice visual aesthetic, but I’m disappointed that some of it’s simplest elements are so wrong. ...

Getting Started With BeagleBone PRU Programming the New Way

Nov 20, 2016 :

Over the last couple weekends, I’ve finally gotten back to playing with the BeagleBone, specifically using the PRUs to enable realtime hardware IO. It’s taken a lot more effort than I expected! ...

Cross compiling for BeagleBone from MacOS

Jul 10, 2016 :

Getting started with compiling code for the BeagleBone is super easy. For instance, with my new BeagleBone Green Wireless (currently running Debian 8.4, kernel 4.4.9-ti-r25), and I presume other models too, the steps are something like: ...

Dangerous Prototypes Bus Blaster v4

Jul 2, 2016 :

I’ve recently become the proud owner of a Dangerous Prototypes Bus Blaster v4 (as ordered June 2016, received a PCB labelled v4.1a). These are just some notes on using the Bus Blaster, specifically with a MacOS host. ...

Projects

Jun 26, 2016 :

It’s been a bit over a year since I published a blog post, just because I’ve generally been busy with things that don’t seem very bloggable (sidenote: that’s a real word). ...