A field notebook

I work with AI to build, investigate, and learn.

My work spans software, Linux systems, infrastructure, and hardware.

Explore the work
Old HiSilicon camera board connected to a USB-TTL adapter during the attempted bring-up

From the notebook · Aug 15, 2026

Twelve volts, one wrong pin

I tried to bring an old HiSilicon camera board back to life. The plan was cautious at first: identify the H1102NL Ethernet magnetics, verify the USB-TTL adapter with a loopback, keep its VCC disconnected, and listen for boot output. The mistake was the…

Open this note →

Recent pages

All writing
  1. GPT-124M from scratch: benchmarking and restart recovery

    A randomly initialized GPT-124M on free Kaggle T4s: a measured pilot, exact checkpoint replay, and fresh-session recovery, with the longer run and final evaluation unfinished.

    language-models · training · checkpoints · kaggle

  2. Making a four-province expressway atlas lighter

    A four-province OpenStreetMap atlas: static snapshots, quarter-degree data partitions, and smaller viewport loads, with visual QA still unfinished.

    maps · openstreetmap · performance

  3. An experimental FreeBSD USB Ethernet workaround for the NanoPi R2S

    A recorded NanoPi R2S experiment: delaying USB3 link power management improved RTL8153B initialization, while actual U1/U2 transitions and a general repair remain unproven.

    freebsd · nanopi r2s · usb · ethernet · embedded

  4. From silent UART to a working NanoPi R2S

    An evidence-led NanoPi R2S investigation: isolate an unreliable UART path, identify a wrong Rockchip image, boot Alpine Linux, and map the RK3328 SD-card chain.

    nanopi · rk3328 · alpine linux · uart · embedded

On the workbench

All work
  1. 3 TP-Link Security Cameras

    Curiosity teardown note for three TP-Link security cameras: power-on observations, reset and app behavior, internal modules, UART wiring, and hardware design clues.

    electronics · camera · teardown · embedded

  2. AI-native website interfaces

    An evolving proposal for websites built around AI-readable investigation objects, with the human interface as one view.

    ai · interfaces · agents · web

  3. Alpine Builder

    FriendlyElec and NanoPi Alpine image builder web UI for rootfs and SD-card builds.

    alpine · nanopi · images

  4. Cell Field

    A restored generative field of hand-drawn cellular forms, preserved for screen and print.

    generative · cells · print

Notes along the way

Browse the notebook →
  1. An old flashlight, a new idea

    An old flashlight shared across generations inspired a 3D-printed toy concept. I shelved the project after reconsidering its suitability for my baby.

  2. OpenLens: a local-first camera that admits what it does not know

    Building a portable multilingual learning companion, testing offline vision on Android, and keeping model uncertainty visible.

  3. A TinyStories model on my RP2040 board

    I trained a tiny Transformer, quantized it, and ran its C inference runtime entirely on my custom Raspberry Pi Pico display board. I did not solve the individual technical issues myself. I described what I wanted and what I could see; the AI agent handled the technical path, while I supplied the physical observations needed to verify the screen, button, and board. The final 98,944-parameter model fit inside the RP2040 memory budget and generated a punctuation-complete micro-story on the physical board in 10.394 seconds.