Emulating QNAPs IT8528 EC in QEMU

If you have read some of my previous posts you’ll know that my QNAP TS-473A has been keeping me busy for a while. I added a serial port to it, replaced QuTS with Debian, wrote a custom kernel module qnap8528 to expose the embedded controllers features via standard Linux subsystems, I even wrote a custom GRUB module (repo) to set the status LED during boot.
Read more →

Talking Dirty (Dishes): Sniffing the Rinse Cycle

Background Last November I got myself a small dishwasher, a counter-top model from a local vendor. I was emptying the contents of the dishwasher one evening, and curiosity got the better of me and I ended up unscrewing all the screws in the front panel, just to take a small peek at what’s inside.
Read more →

Writing custom GRUB2 modules

A few months ago, I updated a kernel module I wrote (qnap8528) to expose an interface to the LEDs on my QNAP TS-473A NAS. I use the LEDs on the device to indicate the system state. For example, when shutting down, I set the status LED to blink in an alternating green-red pattern, visually indicating that a shutdown sequence has been initiated.
Read more →

Monitoring and sending notifications via a Telegram bot

I was running some unattended tasks on my computer and wanted a quick and easy way to monitor the state of the tasks and other parameters while away from my local network. I have the option of tunneling to my local network via a VPN and then using a SSH session to view my computer remotely, however, I wanted the notifications to be convenient oon the go.
Read more →

Creating a Debian 12 (Bookworm) live USB w/ serial support

UPDATE 19/09/2024: Added the ISO mount process and the recursive copy to the flash drive I mistakenly ommited. Thank you Josep. In my project of replacing the QNAP operating system (QTS/QuTS) I needed to create a bootable Debian USB drive to boot a live environment.
Read more →

Adding a serial port to a QNAP TS-473A NAS

When I got my NAS, I also got two NVME drives and some extra memory to fit in it, while fitting in the NVME drives I noticed a bunch of connectors on the top of the motherboard and one on the bottom.
Read more →

Replacing a Roborock Ultra dock PSU (Error 35)

Background Almost two years ago, I purchased the Roborock S7 MaxV Ultra, a vacuum and mopping robot with an “Ultra” docking station for filling its moping water tank, cleaning the mop, and emptying the dustbin into a larger bag. For almost two years, both the robot and dock functioned flawlessly, with no issues.
Read more →