Building a Cluster of ESP32 Boards

Alasdair Allan
2 min readJan 26, 2018

When you build a cluster these days, the first reaction you get when you tell people about it is that you shouldn’t have bothered, that everything should be in the cloud. This reaction has always sort of confused me, because there are still of people outside of Amazon building clusters for all sorts of reasons.

My own small cluster of Raspberry Pi boards was put together to test highly parallel code under real world conditions, as cheap as possible, and I’m not alone there—although some other clusters built for the same purpose can be somewhat bigger. However, I don’t think anything shows how computing has changed more than this cluster of ESP32 modules.

ESP32 cluster system. (📷: kodera2t)

The ESP32 is built around a dual-core 32-bit Tensilica Xtensa LX6 processor running at 240MHz, with performance comparable with desktop CPU of ten years ago, but with a dramatically lower power consumption.

As the cost of computing has fallen over the last decade, the arrival of the ESP8266, and later the ESP32, has stood for many as a point of inflection in a market where we’ve started to see a maturing technological base. Where even low-powered, and cheap, computing is “good enough” to do most things.

So building an experimental cluster of ESP32 modules isn’t quite as crazy as it sounds. While the data sheet for the ESP32 does show an Ethernet interface, the cluster is inter-connected using a group of GPIO lines.

Schematics of the ES32 cluster. (📷: kodera2t)

While still a long way from a “real clustering system,” there is now proof of concept LED blinking code showing the processors talking to each other.

More information can be found on the project’s home page, and with the initial fabrication of the PCB now now done, a completed board is set to be released on Tindie priced around $50.