Close

Getting started...

A project log for Clunky McCluster

This PCB makes it practical and efficient to build a small cluster of 4 Raspberry Pi (a Quad) that can be connected to other quads.

yann-guidon-ygdesYann Guidon / YGDES 07/22/2021 at 01:414 Comments

This project starts because I need to crunch a lot of numbers in parallel. One of the available methods is to reuse, and then upgrade, my collection of Raspberry Pi left from past projects.

OTOH this particular cluster project relies on the 40-pin GPIO connector which appeared a while back, at the end of the 1st generation. Luckily, my inventory contains 9pc RPi B+ v1.2 from 2014 (aww, 7 years old now...) and this is enough to get started !

Performance-wise, we'd need 8 boards of this single-core ARM at 700MHz to reach the throughput of one Pi3B+, which is quad-core and clocked at twice the speed, or half as fast as my i7 laptop. A cluster of 2 quads with the old boards is then a mock-up, a demonstrator and a prototype, where I will later replace/upgrade the boards with faster versions. The old v1B+ serve to test and weather the bugs and shorts before the more expensive, faster boards enter duty. At this moment, I wonder if the Pi3A+ would do the trick: still fast but cheaper, smaller and Ethernet can then be replaced by onbard WiFi.

I also have a pair of Pi 2B (quad 900MHz), and some Pi 3B+ (quad 1400MHz) should arrive soon. With some basic thermal management measures, I'll try to overclock them a bit.

With all those boards, several quad-clusters can be implemented so I can work on interconnecting the quads. With the planned upgrades, making the cluster heterogeneous, I must not only consider many independent clock domains, but also speeds...

The inventory also covers the necessary accessories :

When the proto PCB is validated, I can then open EAGLE to layout the pre-series.

Discussions

Yann Guidon / YGDES wrote 07/22/2021 at 10:44 point

@Ken Yap   :

> For your purposes, it was probably a good fit. It provided a standard Linux for the sorts of tasks people were attaching I/O cards to PCs for. It is still good for providing an interface to MCUs and FPGAs.
Yes. I even used a Pi 1B as a testing machine and electronic driver to validate PCBs woth #WizYasep  and it's at the heart of #SPI Flasher  : The Pis can't do everything of course but are appropriate for many hacks.

For 5V adaptation, I use voltage translation chips such as https://www.ti.com/product/SN74LVC4245A but FPGA and most modern chips run at 3.3V, though even that is fading away...

  Are you sure? yes | no

Ken Yap wrote 07/22/2021 at 03:18 point

>40-pin GPIO connector
Luxury! I have one of the original Pi's with the 26-pin GPIO connector. 😉

  Are you sure? yes | no

Yann Guidon / YGDES wrote 07/22/2021 at 03:40 point

I still have half a dozen of 1st gen left from an old project... Each would drive a 1.4K RGB LED panel (2×6m) just by bitbanging :-D

I also used the 1st gen to drive #Rosace where a small FPGA would help with timing critical tasks. Which gives me enough "experience" to appreciate the evolution to 40 pins.

  Are you sure? yes | no

Ken Yap wrote 07/22/2021 at 06:39 point

I actually stopped buying Pi's after the 2 even though I followed the evolution. I found them inadequate for what I hoped to do with them, viz. make a silent desktop terminal to a powerful workhorse. That role is now filled by a NUC. Partly it was the lack of oomph, and partly due to the immaturity of the ARM repos of Linux software. The recent models are fast enough, but distro support is still below x86_64.

For your purposes, it was probably a good fit. It provided a standard Linux for the sorts of tasks people were attaching I/O cards to PCs for. It is still good for providing an interface to MCUs and FPGAs.

For the low level stuff, I was disappointed that they didn't use 5V tolerant I/O. So I turned to the Arduino for low-level digital experimentation. There wasn't a shield system, so less aftermarket modules. The case for my 1B didn't even have an opening for the GPIO cable; I had to cut one. That's because most people used it as an entry level Linux machine. That's what the RPi Foundation had in mind anyway.

  Are you sure? yes | no