Inspiration ​As the world shifts toward edge computing and Decentralized Physical Infrastructure Networks (DePIN), we are increasingly relying on low-cost microcontrollers to handle critical data routing. Most developers simulate these networks in clean, idealized software environments. We wanted to do the exact opposite: push real, bare-metal hardware to its absolute breaking point to see exactly where and how decentralized edge infrastructure fails under real-world stress. ​What it does ​ChronosGuard is a fault-tolerant IoT mesh network architecture that protects decentralized edge hardware from timing and saturation failures. It monitors network traffic dynamically and utilizes a custom Load-Aware Task Allocation algorithm to route data packets away from heavily congested nodes. By balancing the computational queue across the mesh, it prevents microcontrollers from experiencing critical hardware-level failures, maintaining perfect chronological consensus and data integrity across the entire decentralized network without requiring a central server or router. ​How we built it ​The project is a physical, decentralized edge-computing mesh network built from the ground up: ​Hardware Layer: A multi-node array of ESP8266 microcontrollers communicating peer-to-peer using localized Wi-Fi protocols. ​Firmware Stack: Written in C++ within the Arduino IDE, utilizing the painlessMesh library to establish a dynamic, self-healing mesh topology. ​Telemetry & Analysis: Custom data-logging configurations that captured task execution times, memory overhead, queue sizes, and network saturation levels in real-time. We implemented and compared three distinct task-allocation models to benchmark our custom protocol. ​Challenges we ran into ​Building a decentralized network on cheap, resource-constrained hardware turned into a brutal trial by fire. We had to overcome three massive roadblocks: ​Power Instability & Boot Loops: The ESP8266 draws massive current spikes during Wi-Fi transmission bursts. Under heavy task loads, these spikes caused sudden voltage drops on the power rails, triggering hardware watchdog timer (WDT) resets and throwing the nodes into infinite boot loops. We had to manually debug the physical power supply stability and apply decoupling techniques to keep the hardware alive. ​RF Signal Attenuation & Weak Links: Operating in a real-world setting meant dealing with physical barriers and environmental radio frequency (RF) interference. Weak signals led to massive packet drops and latency spikes, forcing us to optimize our physical node placement and write aggressive packet-retry logic directly into the firmware. ​The Chronological Nightmare (32-Bit Underflow): The most devastating bug occurred at peak saturation (\ge20\text{ tasks/second}). Severe microsecond clock skew caused a timing calculation underflow (\Delta t=t_{\text{end}}-t_{\text{start}}), rolling the integer over to 2^{32}-1. This logged a catastrophic task duration of 4,294,967,295\text{ ms} (implying the task finished before it was sent), completely destroying data sequencing and network consensus. ​Accomplishments that we're proud of ​Discovering a Real Hardware Anomaly: We successfully isolated, documented, and mathematically proved a critical 32-bit clock underflow vulnerability that occurs on cheap microcontrollers under heavy network stress. ​Writing an Elite-Level Paper: We took our raw hardware data and authored a complete, IEEE-formatted empirical research paper that is currently undergoing preprint indexing with an official DOI. ​Building a Working Solution: We successfully designed a Load-Aware protocol that completely mitigates this hardware flaw, keeping the mesh completely stable where stock configurations crashed. ​What we learned ​This project taught us that elegant software means absolutely nothing if you do not account for the harsh realities of physical electronics. We gained deep, hands-on experience in managing hardware power constraints, handling wireless signal decay, and writing highly optimized, low-level C++ firmware. Most importantly, we learned how to translate raw hardware failure logs into a structured academic research methodology. ​What's next for loadaware Task Allocation for Decentralized microcontrollers ​The next step is expanding this architecture to support heterogeneous networks. Right now, the protocol is optimized for uniform ESP8266 nodes. We plan to adapt the Load-Aware algorithm to dynamically balance tasks across a mixed network containing varying hardware architectures (such as ESP32 and ARM Cortex-M nodes), allowing devices with completely different processing speeds and clock rates to safely maintain decentralized synchronization.

Built With

  • c++
  • depin
  • distributed
  • distributedsystems
  • edge
  • edgecomputing
  • esp8266
  • hardware
  • iot
  • meshnetwork
  • systems
Share this project:

Updates

Submission history