• Not Dead

    I’ve just been busy with a couple of little things. Now that the littlest one is figuring out this whole sleep thing, I might have time for projects again :-)

    Read More…

  • Hooah! Could your next MRE contain bug meat?

    This delicious solicitation for an upcoming DARPA project rolled …er, scuttled? across my desk last week. Now, I’m no stranger to unconventional protein sources with way too much exoskeleton, but this project might be food for thought if you plan to enlist. Excerpts, emphasis mine: Component: DARPA Topic #: SB172-002 Title: Improved Mass Production of…

    Read More…

  • Solved: Mazda (JCI) Infotainment crashes when playing OGG Vorbis files

    The Fix (Tl;dr): The Mazda Connect (a.k.a. “JCI infotainment” or Johnson Controls Infotainment, etc.) firmware available as of 1/2016 has a problem with long tags in Ogg Vorbis files, specifically the tags used for album/cover art. Vorbis files containing cover art will likely cause the radio to freeze and then reboot. To fix this, you…

    Read More…

  • Free IoT Telemetry using DNS Tunneling and Other Peoples’ WiFi (Part 1)

    Well, it happened. Despite all my talk about “Internet of Things” hype being teh suck and not ready for primetime yet, I’m now an official IoT Hero. I suppose I should actually do something about that. Today, we explore cheap-as-free data exfiltration for mobile IoT gadgets using a trick known as DNS tunneling. Internet of…

    Read More…

  • Notes To Myself: Starting out with OpenWSN (Part 1)

    TL;DR: Successful toolchain setup, flashing and functional radio network! Still todo: Fix network connectivity between the radio network and host system, and find/fix why the CPUs run constantly (drawing excess current) instead of sleeping. Over the last few weeks (er, months?), I build up and tried out some circuit boards implementing OpenWSN, an open-source low-power…

    Read More…

  • Clutter, Give Me Clutter (or, a GUI that doesn’t use Google as an externalized commandline)

    UX nightmare: Get the menu at a restaurant, and it has only 2 items: toast and black coffee. But if you spindle the corner just right, a hidden flap pops out with a dessert menu. And if you shake it side to side, a card with a partial list of entrees falls in your lap…

    Read More…

  • Tim Tears It Apart: Measurement Specialties Inc. 832M1 Accelerometer

    So, yesterday the outdoors turned into this. Not quite the snowpocalypse, but it was enough that a travel ban was in effect, and work was closed. What happens when we’re stuck in the house with gadgets? All right, I’d like to tell you that’s the reason, but this actually got broken open accidentally at my…

    Read More…

  • Tim Tears It Apart: Koolpad Qi Wireless Charger (Also: how to silence it without soldering)

    My wife goes to bed long before me, so when I go to bed, it behooves me to do so without significant light or racket. After countless nights of fiddling with a 3-sided micro-USB cable in the dark, I bought this neat little USB phone charger. It’s not the cheapest, nor the priciest, but was…

    Read More…

  • Tim Tears It Apart: Cheap Solar Pump

    So, I picked up a pair of these cheapo solar pump on fleabay for about 6 or 8 bucks a pop, to filter water for the fish in my old-lady-swallowed-a-fly lotus pot. They actually work pretty well, apart from one very occasionally getting stuck and needing a spin by hand to get going. But it’s…

    Read More…

  • Notes To Myself: Cheap Feedlines for Cheap Boards

    Goal: Produce reasonable impedance-matched (usually 50-ohms) RF feedlines for hobby-grade radio PCBs. Rather than get a PhD in RF engineering for a one-off project, use an online calculator and some rules of thumb to get a “good enough” first prototype. Problem: Most RF boards and stripline calculators assume or drive toward 4-layer boards. In hobby…

    Read More…

  • Debugging a shorted PCB the lazy way

    I recently assembled a set of prototype boards for a particular project at my day job, and ran a math- and memory-intensive test loop to test them out. Two of the boards ran the code fine, but one crashed consistently in a bizarre way that suggested corruption or otherwise unreliability of the RAM contents. Since…

    Read More…

  • Notes To Myself: EFM32 and heaps of external SRAM

    Goal: Use the EFM32 microcontroller’s External Bus Interface (EBI) to place a large external SRAM and work with data larger than the chip’s internal memory will allow. Support dynamic memory allocation via standard malloc()/calloc() calls probably present in whatever 3rd-party code-snarfed-from-the-internet you are trying to integrate. Solution: First off, ignore any notes about needing to…

    Read More…

  • Fun with 3D Printing: Print a Parametric Peristaltic Pump

    So, I’ve been playing around with the Lulzbot we got at work. Inspired by emmett’s sweet planetary gear bearing design, I adapted the design to be not a bearing but a peristaltic pump. Like the original bearing design, the pump prints as a single piece – no assembly required! – with captive rollers and no…

    Read More…

  • Tim Tears It Apart: Kidde KN-COB-B Carbon Monoxide Alarm

    Of course it happens this way: stuff works for you, but breaks as soon as you have guests and drives them crazy. In this case, the missus and I were out of the house having a baby and her folks were in to hold down the fort. A carbon monoxide detector had failed in the…

    Read More…

  • It’s official – I have spawn!

    So… That day I never thought would come, and a younger me once *hoped* would never come…has come! Our first spawn, Max Charles G, was born 7/26/2014 at around 6:40am. Glad that’s over! I kid, but seriously, the hospital part is the only real sucky part (for us, at least – Max is pretty chill).…

    Read More…

  • Notes To Myself: Fix for Windows 7 can’t delete file/folder on network drive (“in use”)

    Problem: When trying to delete or rename a folder, typically on a network drive, Windows 7 reports the action can’t be performed because a file is in use, even when you definitely don’t have any files open in that folder (or even have a subfolder displayed in another Explorer window), and haven’t for quite some…

    Read More…

  • How to Fragment Your File System

    Here is a tiny little python script to generate file system fragmentation. “But Tiiiiiiim! Tools are supposed to defragment your filesystem! Why would you ever want a script to fragment one?” In one of the gadgets I’m working on, I had a need to evaluate disk (well, memory card) performance in real-world and worst-case scenarios.…

    Read More…

  • Notes To Myself: ‘Paste Plain Text’ keyboard shortcut/macro for Excel

    Very common need: Copy some data into an Excel cell from an arbitrary other source (including another Excel sheet, or webpage, etc.). In the process, strip any external formatting, HTML tables, etc. with extreme vengeance and only paste the plain text. Traditional way: Mouse fandango (Excel 2013: Home -> Paste -> Paste Special…->Text->OK) for every…

    Read More…

  • Notes To Myself: J-Link SWOViewer with Silabs/EnergyMicro EFM32 CPUs

    The EFM32 SWO port operates from a 14MHz timebase regardless of the current CPU frequency. Autodetection of actual frequency is feasible, but irrelevant. Manually specify 14MHz for “CPUFreq” in SWO Viewer. The corresponding calculated SWOFreq should be 900KHz. Tested and working as of SWOViewer version 4.84f.

    Read More…

  • Notes To Myself: Fixing TortoiseCVS breakage (permissions, crashes, missing overlays) on Windows 7 64-bit

    Problem 1) TortoisePlink.exe crashes when attempting CVS operations. Win7 throws the error message “A problem caused this program to stop working correctly” (gee, thanks, that’s a most helpful crash dump) and checks The Interclouds for solutions (finding none). Groveling down to the actual crash report (Control Panel -> Administrative Tools -> Event Viewer -> Windows…

    Read More…


Find stuff…