Welcome! I’m your host, Ahmed Hefnawi =)

Allah is the Light of Heavens and Earth. The example of His light is like a cavity [lantern] within which there is a lamp, the lamp is within glass, the glass as if it were a pearly [white] star. The lamp is lit from [the oil of] a blessed olive tree, neither of the East nor of the West, whose oil would almost glow even if untouched by fire. Light upon light. Allah guides to His light whom He wills. And Allah presents examples for the people, and Allah is Knowing of all things.”

Qur’an: Surat An-Noor (#24), Ayat #35 (click for Tafsir)


I make stuff and love to share it with everyone. The plan for this blog is to document my notes and observations from embedded and web development projects for any one interested — including the future me.


Check my other website dedicated to amateur radio (ham radio) experiments: M0TTZ.UK.


📢 Follow me on Twitter @hefnawi_ and reach out with your feedback and thoughts.

Custom-Built Isothermal Calorimeter Internal View

Custom-Built Isothermal Heat Conduction Calorimeter

Prologue A Heat Conduction Isothermal Calorimeter is used to determine the heat flow rate of a specific process or reaction, in my case, it is designed to measure the heat rate of hydration of cement in the field of Civil Engineering and Materials Science. The purpose of this custom-built Isothermal Calorimeter is to undertake the ASTM C1702 Standard Test Method for Measurement of Heat of Hydration of Hydraulic Cementitious Materials Using Isothermal Conduction Calorimetry....

November 23, 2019 · 8 min · Ahmed Hefnawi

Broadcom WiFi driver for Ubuntu

Introduction Not so far ago, I had an issue with my Dell Inspiron 15 Series 3000 Laptop that I couldn’t connect to any WiFi network using the built-in wireless card and had to use a USB WiFi dongle. Turns out that Dell Inspiron 15 has a Broadcom series of PCI wireless cards on board. I was running Ubuntu 16.04 LTS at that time — I upgraded to 18.04 LTS (Bionic Beaver), the tips in this post would still work — and it didn’t support my WiFi card out of the box, I was almost certain it would be a driver issue even though I did some online search to get help but was guided by wrong directions by some of the online forums stating solutions like upgrading BIOS firmware, some Windows-related drivers updates and also some BIOS tweaks that worked for some people (probably they are not using Linux)....

August 14, 2019 · 4 min · Ahmed Hefnawi

How to Program Yaesu FT-4X Handheld Radio using CHIRP on Linux

This post was cloned to my other website dedicated to amateur radio (ham radio); M0TTZ.UK Prologue Yaesu FT-4X is a very interesting handheld radio that is not very expensive (~ £65) and I believe is a good starting point compared to my previous Baofeng UV-5R Plus radio. I suggest you read the article by QRPblog in the references below for an in-depth review of FT-4X (also some comparison against Baofeng UV-5Rs)....

August 3, 2020 · 9 min · Ahmed Hefnawi

Detect SARS-CoV-2 virus using Near-infrared spectroscopy

This work is still-in-progress; originally started on 25 March, 2020. And, interestingly gained some interest during that time on-wards. This work is NOT affiliated with any group, organisation or team. The HackADay project page. Prologue Near-infrared spectroscopy (NIRS) is nothing new. However, it’s a relatively new method deployed in the field of virology. It has been successfully used before to identify HIV-1 and Influenza virus....

March 30, 2020 · 5 min · Ahmed Hefnawi

STM32 ARM-GCC Toolchain w/ GPIO_EXTI example

Prologue I have always wanted to build with an ARM MCU, STM32 was on top of my to-learn list. Happily, not so long ago a respected colleague lent me an STM32 Nucleo board to play with, as usual, it stayed in its box for a while and then I started learning about the STM32 MCU and the toolchain and the capabilities of that great MCU. So in this introductory post, I will discuss how to setup your Linux development environment and your arm-gcc toolchain to start compiling and running code on your STM32 MCU....

February 26, 2020 · 5 min · Ahmed Hefnawi

Teensy LC: HID USB Keyboard

This project is part of the Teensy LC Challenge Teensy Project 002: HID USB Keyboard Checkout the source code on Github. Teensy Setup The environment setup section is common to all the Teensy LC projects, so I created a single post with the required instructions to set up the Arduino IDE, Teensy Loader application, Teensyduino and Linux udev rules. If you have not setup your Teensy LC yet, please go to the complete setup guide...

February 18, 2020 · 2 min · Ahmed Hefnawi