Notes for May 27-June 2

It’s definitely getting summery, and this week marks the first time I turned on the office AC this year1. Other than that, a couple of bank holidays (in the US and here) made for a slower week than usual, which I have been taking advantage of to make my life somewhat more orderly.

Foam, My Killer

I have been trying to use for ages now, but it’s always felt unwieldy and broken, and none of the “one app to note it all” approaches sits well with me, so I decided to go down the editor enhancement route and started using Foam.

Foam is a extension that got three of my key requirements just right:

  • It was able to open this site’s (mostly ) source tree–around 10000 items, not all of which are public–and not crash
  • It was also able to use the vast majority of the front matter metadata with zero tweaks and enable me to navigate the site by tag, which is going to help a bit with consistency.
  • It focuses on the essentials for jotting down and relating ideas while leveraging everything else I already have in my editor.

I’m now using it to manage my Drafts namespace (which is a sort of “limbo” folder for drafts that I’m not actively working on in iA Writer), my home documentation (which I’m maintaining in mkdocs-material and a few other things, and the fact that I added each of those progressively over a few weeks tells me it’s working for me.

And since my writing workflow typically begins in and ends in with a long chunk of revising and focused editing in iA Writer, adding Foam at both stages makes a lot of sense.

Cleaning Up Self-Hosted AI

This was a cleanup/consolidation week for more things than notes–I also did a bit of infrastructure cleanup and moved a few of my support containers to other machines.

This because my workflow, other than SBC tests, can now be clearly split into three kinds of resources:

  • Sandboxes (Node-RED and Jupyter)
  • Stable tools (Open Web UI plus a few AI workflows implemented in Piku)
  • Model hosting (I have the and both acting as GPU servers, but I only really need one)

I also spent a little while playing with ChatTTS and got it to run on Metal. CPU generation was still much faster, but I blame that on my lack of familiarity with mps and the relatively newness of the code.

SpaceMousing

My replacement with Bluetooth arrived, so I spent some time looking at SpaceMouse in and and did the following.

This led to my filing #5153, PR #5155 and PR #103 across and the spacenavd library both it and are using.

Sadly the implementation is just… bad, so I either have to wait until someone sorts it out to match ’s or add yet another Summer project to my list.

I also got in a couple of new magnetometer/accelerometer boards I had ordered weeks ago, so I might have another go at implementing mine…

Keyboarding

I found a battery replacement for the early review unit I was sent, and it was a trivial thing to unscrew the lid, pop it out and access the battery:

it's full of keys!
iFixit would probably give this a 9/10, but only because the adhesive under the battery is quite stubborn.

The original battery was stamped 3045130 3.7V 2000mAh and the replacement reads 3543114 3.7V 2300mAh, so this was also sort of an upgrade–but I searched for a compatible form factor rather than extra capacity, and I’ll take the extra as a bonus.

So far it’s only charged once and slowly decreased to 85% charge with half a week’s use, which is similar to the replacement unit I got and good news altogether.


  1. After of fiddling with my heat pumps, I’m happy to report that mel-ac-homekit has been working reliably for the past six months, and I might even install a couple more controllers on the devices we had ↩︎