boilernet

Compute-Enabled Mini-NAS for Senior Design

logo people
BoilerNet Team 20! From L to R: Gokulkrishnan Harikrishnan, Akshath Raghav Ravikiran, Aneesh Reddy Poddutur, Gautum Kottayil Nambiar

Overview

This project aimed to develop a Network Attached Storage utilizing ESP32 MCUs. The aptly-named BoilerNet aims to enable In-Network-compute alongside swappable disks and compute workloads, neatly brought together by a cloud-hosted Dashboard interface. There are a few core ideas that form the foundation for this ”cluster” – Low Power Usage, Plug-and-Play Workloads, High Scalability.

BoilerNet won the “Senior Design Award” for Spring ‘25 through Purdue ECE.

Remark (Disclaimer)
Our reports/presentations are linked in the [/docs](https://github.com/AkshathRaghav/boilernet/tree/main/docs/). They contain in-depth views, reasonings and explanations regarding the design and its motivation. We also outline how we tested and ensured functionality. This repository is just meant to help anyone who wishes to 'refer' to our code/designs for their own use-case.
logo people
Top Level System Diagrams

Mechanical Design

The physical enclosure consists of six piece types, along with an optional divider: 1x Enclosure Lid, 1x Enclosure Base, 8x compute Enclosures, 8x compute Enclosure Lids, 6x 3mm diameter - 20mm screws, 4x 3mm diameter - 5 mm screws. You can find the related CAD files at /cad/ w/o dependencies. Reach out to Aneesh Poddutur for more information.

Physical Enclosure
Top Enclosure
Compute Enclosure
Assembled System!

PCB Design

This was our first time working on PCB Design, and had a few fly-wires hanging about. Below is one of the slides we usd in our Final Presentation to sound endearing ;)

You can find our PCB Designs at /gerbers/ and /kicad_projects! Reach out to Gautam Nambiar and Gokul Harikrishnan if you have any questions.

Network/Switch PCB
Compute Node PCB
Mishaps/Learnings!

Software

All the code for the MCUs are maintained within the /src folder. Each node’s build is maintained within it’s own ESP-IDF setup, and can be configured in isolation. /model_train contains the code for training the models and preparing weights to flashed through https://github.com/AkshathRaghav/boilernet/tree/main/compute_nodes. Please reach out to Akshath Raghav if you have any questions!