Projects
Hardware, software, and everything in between — RTL designs verified and taped out to silicon, PCBs, embedded builds, and a few software detours.
Tapeouts & Fabricated Silicon
All Projects
Measuring Soil Moisture using Raspberry Pi
Learn how to measure soil moisture using a Raspberry Pi and a simple sensor circuit. This project walks through hardware setup, wiring...
Set Up Raspberry Pi 4 through laptop/pc using Ethernet cable(No Monitor, No Wi-Fi)
A step-by-step guide to setting up Raspberry Pi 4 using just a laptop and an Ethernet cable—no monitor, no Wi-Fi needed. Learn...
Intruder Detection Using Pi Camera
Build a DIY intruder detection system using Raspberry Pi, a Pi Camera, and a PIR motion sensor. Capture photos automatically when motion...
Set up Raspberry Pi 4(Wi-Fi)
Learn how to set up your Raspberry Pi 4 with Wi-Fi for headless operation. This guide covers OS installation, configuring Wi-Fi credentials,...
Open Source Tools to Get Started With Verilog Simulation
Get started with Verilog simulation using open-source tools Icarus Verilog and GTKWave. Learn how to install these tools, compile and run Verilog...
Making Custom Siri Shortcuts with Block Programming
Explore custom Siri Shortcuts created with block programming to boost productivity and fun. From converting markdown to rich text PDFs, to random...
Design and Verification of a 3 Port Router in Verilog
Design and verification of a 3-port router in Verilog, featuring FIFO buffers, a synchronizer, and a finite state machine (FSM) controller. The...
Steps to Implement a 3-bit Wallace Tree Multiplier using SKY130 PDK and eSim
Step-by-step implementation of a 3-bit Wallace Tree multiplier using the SKY130 PDK and eSim. The project covers schematic design of CMOS logic...
ACORN Authenticated Encryption Cipher
Verilog implementation of the ACORN128 authenticated encryption cipher — a hardware security primitive built from the state machine up.
16-bit Neuron Unit with ReLU Activation
A building block for hardware neural networks — 16-bit MAC datapath with a ReLU activation function in RTL.
Verilog Fundamentals — Gate to RTL
A working set of Verilog exercises spanning basic gates, adders, muxes, a UART receiver, and a high-performance ALU.
Cilantro RISC-V Processor
A minimalistic RISC-V core, built up module by module. In progress.
MIPS Processor
A classic 5-stage MIPS pipeline implemented in RTL. In progress.
Simon 32/64 Lightweight Cipher
Hardware implementation of the Simon block cipher, designed for constrained embedded environments.
Universal Shift Register
A parameterized shift register supporting serial and parallel load/shift modes, with testbench.
Wallace Tree Multiplier — Schematic
Schematic-level Wallace tree multiplier built in eSim, using half/full adders to sum partial products in stages.
eSim Circuit Library
A library of foundational circuits in eSim — logic gates, adders, a 555 timer, and Wallace tree multipliers from 2- to 8-bit.
BACEE — Battery-Powered Arduino Clock
Custom PCB for an Arduino-based clock with extended EEPROM, designed and built from schematic to board.
Gardener Groot
A Raspberry Pi–based plant monitor that logs soil, light, and environmental data and acts on it.
Arduino & NodeMCU Experiments
Home automation and access-point/server projects on Arduino and NodeMCU — from a blinking LED to a self-hosted config server.
Machine Learning Notebooks
Applied ML notebooks covering regression, classification, and a house-price prediction project end to end.
OpenRAM SRAM Configuration (sky130)
Configuration and generation flow for a 4kB SRAM macro on the sky130 PDK using OpenRAM.