A presence-aware break reminder

Most break reminders rely on a plain clock, so the alarm still fires the instant a fifty minute timer runs out, even if you spent thirty of those minutes away from the desk getting a coffee, because the timer has no way of knowing that you already sat back down. I already wear a smartwatch that vibrates on my wrist whenever I have been sitting too long, which helps, although it tracks the wrong thing, since it watches my wrist rather than my desk, so that a handful of arm movements is enough to convince it that I got up while I am still in the same chair, in front of the same screen. I am also the kind of person who concentrates hard enough to lose track of time entirely, so that eyestrain is usually the first sign I get that I went too far. Because I wanted something that watches the desk instead, I turned to a piece of 2009 e-waste sitting in the corner of it: a Samsung N130 netbook with a single core Intel Atom processor and 1GB of RAM. It runs Void Linux, and it is the same machine that I turned into a basement WiFi router a few months ago. I made it a desk sentinel that checks whether I am really sitting in front of the workstation, counts work time only while I am there, and speaks up once I stay too long. Image credits to: Bananayota, found on Pixabay TL;DR The basic idea: when something moves in the webcam frame, it means I am at the desk. If I stay at the desk too long without a break, the netbook speaks up. An old Samsung N130 netbook running Void Linux works as that desk sentinel. motion watches the built-in webcam and, on every start and stop of movement, writes active or idle into a plain state file. A small Nim daemon reads that file and tracks continuous desk time with a live one line progress bar, so that once the limit is reached, it calls espeak-ng and wall, while an absence under 5 minutes never resets the clock. Nothing is recorded, because the video feed never leaves the netbook and no frame is written to disk. The daemon runs as an unprivileged supervised runit service that costs 0.01% of one core and 2 MB of RAM, since motion is the real cost on this hardware. ...

September 6, 2026 · Andrea Manzini

Testing a cheap MicroSD card quality

💾 Intro I just found a very cheap SD card on an online store and since I know that there are some fake around, I wanted to quickly test if its size and speed respect the specs. Edit: after first publish, a kind reader noticed me that The F3 tools are a perfect fit for the same task and that’s right; if you want to follow a manual path and learn something in the journey, continue reading… ...

September 3, 2024 · Andrea Manzini

Measure your program's power consumption

🌡️ Intro For those running a datacenter, or just a simple homelab server, the arrival of summer heat means an increase in air conditioning use. On this post I asked myself how a Linux engineer can measure how much energy is the system consuming so we can start to reason about workload optimization for better power consumption patterns. 🔋 Idle power drain As a starting point, let’s measure how much power my PC is consuming when idle, doing absolutely nothing; or better: nothing useful for computation or service but just running usual, default operating system tasks. ...

June 30, 2024 · Andrea Manzini

number of physical sockets and cpu cores

a small script to check out the number of processors in your linux machine #!/bin/bash S=$(grep "physical id" /proc/cpuinfo | sort -u | wc -l) C=$(grep "cpu cores" /proc/cpuinfo |sort -u |cut -d":" -f2) grep -i "model name" /proc/cpuinfo echo your system has $S sockets with $C CPU cores each mandatory sample output: model name : Intel(R) Xeon(R) CPU L5640 @ 2.27GHz your system has 2 sockets with 6 CPU cores each

September 14, 2013 · Andrea Manzini
Buy Me a Coffee at ko-fi.com Buy Me A Coffee

This site does not use cookies or collect any personal data. © 2026 Andrea Manzini.