The K40 (or at least the version I have), has a pretty insufficient / badly designed ventilation system. It features a fan that just barely moves air, and a metal shroud that is supposed to direct the fumes toward the fan but unfortunately blocks the working area by about 1 inch (the working area is… Continue reading Upgrading the Ventilation System on my K40
The Mysterious CFexpress Card Specification / Pinout
It seems like CFexpress is going to replace CFast and CF card as the new de-facto DSLR storage medium, at least for Japanese camera manufacturers. The Internet kept its mouth very shut about what this CFexpress Card actually is, with specification no where to be found. However, piecing a few separate pieces of information together,… Continue reading The Mysterious CFexpress Card Specification / Pinout
sparsebundle-fuse: Another Implementation for Reading / Writing MacOS Sparsebundles on Linux
There are already a sparsebundle implementation for Linux, but that’s read-only and only supports FUSE. This implementation is read / write, AND supports NBD (network block device) so the sparsebundle actually appears as a block device on the system, without you needing to loop mount the file in FUSE. There are some useful things that… Continue reading sparsebundle-fuse: Another Implementation for Reading / Writing MacOS Sparsebundles on Linux
Making a Pittsburgh Map Coaster
Inspired by Dr. Chris Harrison’s Laser-Cut Map project, and since I have a laser cutter myself (because why not), I decided to make my own Pittsburgh Map Coaster, and probably another one for Shanghai. I’ve been living in Pittsburgh for about 6 years now and there’s definitely a part inside me that belongs to Pittsburgh.… Continue reading Making a Pittsburgh Map Coaster
DIY $10 Slack Notification Light
[youtube https://www.youtube.com/watch?v=BT3PeNsmyPA&w=560&h=315] While being isolated at home, my company uses Slack more heavily than ever, and that Slack chime is starting to get old. What if there’s a physical light that can notify me instead? I have a Smoko ambient light and a few of Digisparks lying around screaming “use me!”. So I started the… Continue reading DIY $10 Slack Notification Light
Fixing a Clothing Rack during COVID-19 Lock-down
My clothes hanging rack is broken for a bit of time has developed a crack. It’s obviously time to fix it. I already have a piece of aluminum pipe on hand that should serve as a clothes hanging pole. The only problem is that I don’t have the hardware to mount the pole to the… Continue reading Fixing a Clothing Rack during COVID-19 Lock-down
Library Occupancy Project Follow Up
The occupancy project is now deployed at Sorrells Library. After running for more than a week, it’s time to see how it performs… So I dumped the database, feed the dump into a python script for processing, and plotted occupancy for each day. And the results are surprisingly good! Let’s take a look. Here is… Continue reading Library Occupancy Project Follow Up
Fixing DjVu eBooks with Problematic Page Sizes
There are a lot of scanned books in the DjVu format, but many of them are not professionally scanned. One of the DjVu books I encounter has different page sizes (page size changes every few pages). There are nice pdf scaling programs, but no such program for DjVu exists. So I made my own. The… Continue reading Fixing DjVu eBooks with Problematic Page Sizes
The Making of the Library Occupancy Estimation System, Part 5 – the Enclosure
It’s almost time to deploy the ESP8266s. I switched from the previous board to wemos mini lite, a smaller board with a variant of ESP8266 (ESP8285). The ESP8285 includes a on-chip 1M EEPROM, reducing the cost. The most important difference is that the newer boards don’t have pre-soldered pin headers. Desoldering pins from the previous… Continue reading The Making of the Library Occupancy Estimation System, Part 5 – the Enclosure
The Making of the Library Occupancy Estimation System, Part 4 – the Frontend
The only part missing was a front-end. It is 2017, and splitting up front-end and back-end is now a must. This is even more true in this project: serving html and other resources from my free Heroku server does not sound like a good plan – with only 1 web instance, the server can be… Continue reading The Making of the Library Occupancy Estimation System, Part 4 – the Frontend