• NXP MCUXpresso SDK USBPD Stack

    Old Code Restoration This is code I’ve contributed to professionally and delivered to NXP. NXP have released it under the BSD 3-Clause license, so I’ve made a copy for reference: https://github.com/nakane1chome/MCUXpresso-SDK-USBPD-Stack/tree/main I have not included other parts of MCUXpresso, so it is unlikely to compile as-is. About This is a...


  • Housing Rent vs Mortgage Calculator

    Ever since reading this Economist article many years ago I’ve been interested in the actual cost of home ownership vs renting, as opposed to the the “rent money is dead money” argument. Some time ago I built a model to evaluate scenarios for myself. The model can be accessed here:...


  • Yolact

    Made a quick and dirty fork of YOLACT with minor changes. Added --inverse_mask’ option. This adds an extra output file with just the mask data. Compiled/run on WSL2 The choice of YOLCAT was based on this article: https://medium.com/@anno-ai/evaluating-segmentation-methods-for-single-objects-e773f025b5e0 Below is an example script to convert a folder of images. This...


  • Direct Hardware Access in C

    This article was also posed to Medium. The C programming language provides a thin hardware abstraction that allows us to create low-level systems programs. However, there are still many hardware features that aren’t exposed by the programming language. How do we access hardware while programming in C? This article covers...


  • Coding with ChatGPT

    There’s been a buzz about ChatGPT on the tech web recently, with some claiming to be outsourcing their (boilerplate dominated cargo cult?) coding to it. With any new tool it’s interesting to try a corner case, and a real world problem. I’ve been playing around with embedded Rust, so it...