Joni on Microsite: Hosting a Blog on a Microcontroller
Why are web servers so complex when all they do is exchange text? This talk explores the concept of microcontroller-constrained web design, using an ESP32-S3 to host a functional blog with limited resources and high efficiency.
The presentation will guide attendees through the process of creating a public-facing website on minimal hardware:
Initial Setup:
- Configuring the ESP32’s built-in HTTP server to handle basic requests.
- Setting up LetsEncrypt for secure HTTPS connections.
- Implementing a lightweight file system to manage static content.
Expanding Functionality:
- Enabling multi-page hosting to support a blog structure.
- Transitioning from WiFi to Ethernet for improved stability and performance.
Custom Static Site Generator:
- Developing a generator to consolidate pages and assets into single
.html
files.
- Optimizing assets through minification, base64 encoding, and compressed image formats.
Optimizations:
- Utilizing hardware crypto accelerators to improve microcontroller performance.
- Optimizing HTTPS session management to reduce overhead.
- Incorporating caching mechanisms to enhance response times.
- Hosting webm videos, ensuring I film against solid-color backgrounds with high levels of compression to reduce video size
Whatever I’ve done in the time between submitting the proposal and Teardown
Future Ideas:
- Explore setting up personal image and file storage on a microcontroller to handle lightweight data hosting.
- Experiment with creating a git server hosted entirely on a microcontroller, pushing the boundaries of what these devices can manage.
- Develop a microcontroller-based load balancer and deploy a fleet of microcontroller web hosts to distribute traffic and enhance scalability.
The site, joni-on-micro.site, will be available during the talk for live demonstrations. This practical example will showcase the challenges and solutions involved in microcontroller web hosting, and provide some advice for people looking to do the same.