Hi, I’m Albert

This is where I post about projects and leanings from the past and present in the hope that someone else (my future self included) will find them useful. You can contact me on social media, or email at “mail” on this domain.

  • How to close an unresponsive SSH session

    If you work on embedded Linux systems, those Docker container thingies, play around with Raspberry Pi or anything in between, you may occasionally find yourself on your main computer connected to the target via SSH when it suddenly hangs or gets rebooted, rendering your SSH session unresponsive. Sometimes when this happens, the SSH session gets […]

    Read more

  • Strict Aliasing – yet another way for C-code to blow up

    Recently, I got to learn about Strict Aliasing in C. It is yet another thing that can cause your C code work perfectly fine today and then blow up because of Undefined Behavior down the line. One example of what not to do is casting an array of uint8_t (like a payload from a communications […]

    Read more

  • Embedded Rust Toolchains

    I recently started learning Embedded Rust. As I mentioned at the top of the last post, there are a couple of toolchain options: OpenOCD + GDB probe-rs + cargo-embed Turns out there is also a third one that I just discovered: probe-rs + probe-run This was a little confusing at first, I was unsure what […]

    Read more

  • Embedded Rust: Timer Timeout Problem

    TL;DR: When doing timing critical stuff, use the –release flag to get a faster binary!For example: cargo embed –release. I’m learning Embedded Rust on a STM32 Bluepill board (with a STM32F103 microcontroller). At the time of writing there seems to be two toolchain options: The “official” Embedded Rust way, using OpenOCD and ARM-compatible GDB. Up-and-coming […]

    Read more

  • NB-IoT and LTE-M Covarage Maps

    Here are some links to coverage maps for NB-IoT and LTE-M in Scandinavia. The GSMA also has a global deployment map here:https://www.gsma.com/iot/deployment-map/ Denmark Telia – https://www.telia.dk/privat/hjalp/dakning-og-drift/iot-dakningskort/ Finland Telia – https://www.telia.fi/asiakastuki/verkko/verkko/verkkokartta Norway Telia – https://telia.no/dekningskart Telenor – https://www.telenor.no/bedrift/iot/dekning/#map Sweden Telia – https://www.telia.se/privat/support/tackningskartor

    Read more

  • Talk: Cellular Connectivity for IoT

    In 2018, I had the great honor to speak at the NDC conference in Oslo.  At the time, I was working with cellular connectivity for IoT at nordic mobile operator Telia, and I titled the talk accordingly. NDC is mainly a developer conference, so the talk was intended as an introduction to cellular IoT for […]

    Read more

  • LED bed light

    I have been working on my own custom wakeup-light on and off for several years (part 1, part 2, part 3). After getting Philips Hue lights, however, I have not gotten around to setting it up in my new apartment. So recently, when the need came along, I figured the quarter round rod I used […]

    Read more

  • Kodama Trinus 3D-printer upgrades

    At work, we recently got the Kodama Trinus combined 3D-printer and laser engraver. I’m pretty happy with the overall quality of the printer so far, but for our use I immediately identified some areas of improvement: No power switch – the only way to turn the printer off is by unplugging the cord. No lights […]

    Read more

  • Alarm Clock v0.1.0

    We wanted to try banning phones from the bedroom (you should try, I recommend it!). Clearly, a suitable hardware replacing the alarm clock app was needed. Having thought about building my own alarm clock for a while, I quickly determined it was not a viable option to just go buy one – there simply did […]

    Read more

  • Autonomous RC Racing

    Here is a project I have been working with on and off for about a year – Alvin the autonomous RC car. The robot is built to comply with the rules of two Swedish robot competitions, Robot SM and Stockholm Robot Championship, where the objective is to race three other robots around a track without […]

    Read more