Posts by Tags

ARM

AWS

Using Jenkins with BitBucket Webhooks on AWS

7 minute read

Bitbucket lets you trigger webhooks for git events that are interesting to your build and test infrastructure. In the past, I have played around with it usin...

Actions

Alexa

Azure

Blogging

Buildroot

Buildroot and Raspberry Pi

3 minute read

Steps to compile and bring up a minimalist kernel for Raspberry Pi using Buildroot

Butter_Robot

C

Accessing Complex C Data Structures from Python

14 minute read

Explore advanced techniques for interfacing complex C data structures with Python using ctypes and SWIG. Learn how to seamlessly pass complex data structures...

C programming

CI/CD

Using Jenkins with BitBucket Webhooks on AWS

7 minute read

Bitbucket lets you trigger webhooks for git events that are interesting to your build and test infrastructure. In the past, I have played around with it usin...

CSCOPE

Configuration management

Crypto

DTS

Debian

Building Bespoke Debian Distros for RISC-V

20 minute read

In this article we will go over the steps to build a bespoke Debian distro for RISC-V. We will use QEMU to emulate the RISC-V architecture and build a Debian...

Device Tree

Digital Certificates

Understanding X.509 Certificate Structure

12 minute read

An insight into the format and technologies used to pack a X.509 certificate. This tutorial introduces the concepts and parses through a TLS certificate to b...

Introduction to digital certificates

12 minute read

Introduction to digital certificates and the basic concepts of hashes and cryptographic algorithms that are used to build trust based secure systems

Digital Ocean

Digital Signatures

Docker

Drivers

Writing Linux Device Drivers - Part 1

4 minute read

This tutorial gives a quick introduction to writing Linux device drivers. It will not make you device driver experts, but will give you a starting point to s...

ESP8266

Electronics

Embedded

Embedded Systems

FPGA

FreeRTOS

GCOV

Test coverage analysis with GCOV

6 minute read

A quick tutorial on using GCOV for test coverage analysis. This will get you started to run analysis on your complex test cases.

Git

GitHub

Google Home

HDL

Hardware

IOT

Interrupts

IoT

Understanding X.509 Certificate Structure

12 minute read

An insight into the format and technologies used to pack a X.509 certificate. This tutorial introduces the concepts and parses through a TLS certificate to b...

Introduction to digital certificates

12 minute read

Introduction to digital certificates and the basic concepts of hashes and cryptographic algorithms that are used to build trust based secure systems

Building an E2E IoT system with Raspberry Pi

14 minute read

My experiences with building an end to end IoT system using a Raspberry Pi, an Arduino and a MPU6050. The post describes the details of how to compile and se...

JTAG

Kernel

Writing Linux Device Drivers - Part 1

4 minute read

This tutorial gives a quick introduction to writing Linux device drivers. It will not make you device driver experts, but will give you a starting point to s...

Linux

Building Bespoke Debian Distros for RISC-V

20 minute read

In this article we will go over the steps to build a bespoke Debian distro for RISC-V. We will use QEMU to emulate the RISC-V architecture and build a Debian...

Building an E2E IoT system with Raspberry Pi

14 minute read

My experiences with building an end to end IoT system using a Raspberry Pi, an Arduino and a MPU6050. The post describes the details of how to compile and se...

Writing Linux Device Drivers - Part 1

4 minute read

This tutorial gives a quick introduction to writing Linux device drivers. It will not make you device driver experts, but will give you a starting point to s...

MPLAB IDE

PIC microcontrollers

29 minute read

A tutorial on 8 bit PIC Microcontroller architecture and development tools

MQTT

Microcontrollers

Secure firmware upgrade for embedded systems

8 minute read

General principles, architecture, guidelines and good practices for secure over the air (OTA) and over the host (OTH) firmware upgrade for an embedded device

Networking

Decrypting embedded TLS communication

2 minute read

While developing cloud connected products, one of the major challenges is debugging application layer errors within a TLS connection. This article describes ...

Understanding JSON Web Tokens

5 minute read

JSON Web Tokens (JWT) are becoming popular even outside the traditional web authentication use-cases with the advent of IoT and connected devices. This artic...

Understanding X.509 Certificate Structure

12 minute read

An insight into the format and technologies used to pack a X.509 certificate. This tutorial introduces the concepts and parses through a TLS certificate to b...

Introduction to digital certificates

12 minute read

Introduction to digital certificates and the basic concepts of hashes and cryptographic algorithms that are used to build trust based secure systems

UPnP Device Architecture

24 minute read

An article that provides an in-depth understanding about the UPNP protocol and its foundational technologies like HTTP, XML, SOAP etc

Operating System

Building Bespoke Debian Distros for RISC-V

20 minute read

In this article we will go over the steps to build a bespoke Debian distro for RISC-V. We will use QEMU to emulate the RISC-V architecture and build a Debian...

PCB

PIC microcontrollers

PIC microcontrollers

29 minute read

A tutorial on 8 bit PIC Microcontroller architecture and development tools

PWA

Building a barebones web-push server

4 minute read

We use push notifications from web-sites on a daily basis. This article is about building one from the ground-up in order to understand how the whole system ...

Python

Accessing Complex C Data Structures from Python

14 minute read

Explore advanced techniques for interfacing complex C data structures with Python using ctypes and SWIG. Learn how to seamlessly pass complex data structures...

QEMU

Building Bespoke Debian Distros for RISC-V

20 minute read

In this article we will go over the steps to build a bespoke Debian distro for RISC-V. We will use QEMU to emulate the RISC-V architecture and build a Debian...

Understanding RISC-V semihosting

14 minute read

Semihosting lets embedded systems talk to a host computer through a debugger interface to perform tasks such as file I/O, and printing to the console. This a...

Exploring virtualization in RISC-V machines

12 minute read

“RISC-V is classically virtualizable” – We come across this statement very often when we read about the merits of the RISC-V ISA. This article looks at what ...

RISC-V

Building Bespoke Debian Distros for RISC-V

20 minute read

In this article we will go over the steps to build a bespoke Debian distro for RISC-V. We will use QEMU to emulate the RISC-V architecture and build a Debian...

Understanding RISC-V semihosting

14 minute read

Semihosting lets embedded systems talk to a host computer through a debugger interface to perform tasks such as file I/O, and printing to the console. This a...

Exploring virtualization in RISC-V machines

12 minute read

“RISC-V is classically virtualizable” – We come across this statement very often when we read about the merits of the RISC-V ISA. This article looks at what ...

RISCV

Raspberry Pi

Building an E2E IoT system with Raspberry Pi

14 minute read

My experiences with building an end to end IoT system using a Raspberry Pi, an Arduino and a MPU6050. The post describes the details of how to compile and se...

Buildroot and Raspberry Pi

3 minute read

Steps to compile and bring up a minimalist kernel for Raspberry Pi using Buildroot

SSO

SWIG

Accessing Complex C Data Structures from Python

14 minute read

Explore advanced techniques for interfacing complex C data structures with Python using ctypes and SWIG. Learn how to seamlessly pass complex data structures...

Security

Decrypting embedded TLS communication

2 minute read

While developing cloud connected products, one of the major challenges is debugging application layer errors within a TLS connection. This article describes ...

Understanding JSON Web Tokens

5 minute read

JSON Web Tokens (JWT) are becoming popular even outside the traditional web authentication use-cases with the advent of IoT and connected devices. This artic...

Secure firmware upgrade for embedded systems

8 minute read

General principles, architecture, guidelines and good practices for secure over the air (OTA) and over the host (OTH) firmware upgrade for an embedded device

Understanding X.509 Certificate Structure

12 minute read

An insight into the format and technologies used to pack a X.509 certificate. This tutorial introduces the concepts and parses through a TLS certificate to b...

Introduction to digital certificates

12 minute read

Introduction to digital certificates and the basic concepts of hashes and cryptographic algorithms that are used to build trust based secure systems

Semihosting

Understanding RISC-V semihosting

14 minute read

Semihosting lets embedded systems talk to a host computer through a debugger interface to perform tasks such as file I/O, and printing to the console. This a...

Server Setup

Smart Home

Thoughts

ThreeJs

Building an E2E IoT system with Raspberry Pi

14 minute read

My experiences with building an end to end IoT system using a Raspberry Pi, an Arduino and a MPU6050. The post describes the details of how to compile and se...

UPNP

UPnP Device Architecture

24 minute read

An article that provides an in-depth understanding about the UPNP protocol and its foundational technologies like HTTP, XML, SOAP etc

USB

USB-3.0

19 minute read

An introduction to the core concepts and building blocks of USB 3.0 device side protocol for those who are aware of USB 2.0

USB-2.0

21 minute read

An in-depth tutorial introducing the USB2.0 device side protocol with detailed illustrations on how transactions happen.

USB 2.0

USB-2.0

21 minute read

An in-depth tutorial introducing the USB2.0 device side protocol with detailed illustrations on how transactions happen.

USB 3.0

USB-3.0

19 minute read

An introduction to the core concepts and building blocks of USB 3.0 device side protocol for those who are aware of USB 2.0

Upgrade

Secure firmware upgrade for embedded systems

8 minute read

General principles, architecture, guidelines and good practices for secure over the air (OTA) and over the host (OTH) firmware upgrade for an embedded device

Version control

Virtualization

Exploring virtualization in RISC-V machines

12 minute read

“RISC-V is classically virtualizable” – We come across this statement very often when we read about the merits of the RISC-V ISA. This article looks at what ...

XML

bitbucket

Using Jenkins with BitBucket Webhooks on AWS

7 minute read

Bitbucket lets you trigger webhooks for git events that are interesting to your build and test infrastructure. In the past, I have played around with it usin...

buildroot

Adding Custom Packages to Buildroot

3 minute read

This article talks about adding a custom package into buildroot for creating your own Linux distribution for embedded and emulation targets.

Building an E2E IoT system with Raspberry Pi

14 minute read

My experiences with building an end to end IoT system using a Raspberry Pi, an Arduino and a MPU6050. The post describes the details of how to compile and se...

ctypes

Accessing Complex C Data Structures from Python

14 minute read

Explore advanced techniques for interfacing complex C data structures with Python using ctypes and SWIG. Learn how to seamlessly pass complex data structures...

devops

Using Jenkins with BitBucket Webhooks on AWS

7 minute read

Bitbucket lets you trigger webhooks for git events that are interesting to your build and test infrastructure. In the past, I have played around with it usin...

Docker 101 for embedded systems Dev and DevOps

21 minute read

I started using docker back in 2016 and ever since, I have been using it in the context of embedded systems DevOps. This article condenses the learning so th...

docker

Docker 101 for embedded systems Dev and DevOps

21 minute read

I started using docker back in 2016 and ever since, I have been using it in the context of embedded systems DevOps. This article condenses the learning so th...

embedded linux

embedded networking

freeboard

jenkins

Using Jenkins with BitBucket Webhooks on AWS

7 minute read

Bitbucket lets you trigger webhooks for git events that are interesting to your build and test infrastructure. In the past, I have played around with it usin...

kernel

letsencrypt

linux

Adding Custom Packages to Buildroot

3 minute read

This article talks about adding a custom package into buildroot for creating your own Linux distribution for embedded and emulation targets.

Buildroot and Raspberry Pi

3 minute read

Steps to compile and bring up a minimalist kernel for Raspberry Pi using Buildroot

Advanced Shell Scripting

3 minute read

A collection of advanced tips and tricks to create wonderful shell scripts

littlefs

mplabx

Docker 101 for embedded systems Dev and DevOps

21 minute read

I started using docker back in 2016 and ever since, I have been using it in the context of embedded systems DevOps. This article condenses the learning so th...

non-technical

openssl

performance

putty

Adding new menu item to PuTTY

1 minute read

I came across a requirement to add a new easy access menu item to the putty terminal window for Windows. This article explains how I did it.

putty customisation

Adding new menu item to PuTTY

1 minute read

I came across a requirement to add a new easy access menu item to the putty terminal window for Windows. This article explains how I did it.

putty menu

Adding new menu item to PuTTY

1 minute read

I came across a requirement to add a new easy access menu item to the putty terminal window for Windows. This article explains how I did it.

python

riscv

Adding Custom Packages to Buildroot

3 minute read

This article talks about adding a custom package into buildroot for creating your own Linux distribution for embedded and emulation targets.

shell scripting

Advanced Shell Scripting

3 minute read

A collection of advanced tips and tricks to create wonderful shell scripts

sshfs

tips

vim

vouch-proxy

webdev

Building a barebones web-push server

4 minute read

We use push notifications from web-sites on a daily basis. This article is about building one from the ground-up in order to understand how the whole system ...

webpush

Building a barebones web-push server

4 minute read

We use push notifications from web-sites on a daily basis. This article is about building one from the ground-up in order to understand how the whole system ...

websocketServer

Building an E2E IoT system with Raspberry Pi

14 minute read

My experiences with building an end to end IoT system using a Raspberry Pi, an Arduino and a MPU6050. The post describes the details of how to compile and se...

workspace