Raspberry Pi 2/3 and Odroid XU4 5x compact cluster

Design for compact cluster and case that can be used for housing up to 5x Raspberry Pi2, Pi3 or Odroid XU4 (SoC) computer nodes.

Similar projects worth following
I am developing small and compact cluster that can be use as low-power application server with 5 SoC computers. In case I left space for expansion for up to 6+1 (on top) SoC's.
This project evolved to 2nd stage where it can be considered as good starting point for Small nodes SoC solution.
For all who had just find out for this project some initial remarks about case design:
Wholes and spacing's are calculated for dual fit of Raspberry Pi B+,2, 3 and Odroid XU4 lines.
Input power rail is single PC AMP/Molex (male) +5, +12V so that it can use any PC power supply. Then internal circuit board distributes it to +5 USB A connectors or Barrel 2,1mm for Odroid, thereby retaining internal boards power protecting logic on SoC's.
Internal cooling is done by Zalman 92mm with speed control.

We want to make computing cluster, light and energy efficient that will have direct interface to micro controllers, IoT devices and sensor devices using it's main advantage of GPIO ports. This cluster can be used for preprocessing (or even replace need) for Big Data as end point for storage and analytic. That way this system can be described as private Big Data for Small data :)

Main component will be SoC systems like Raspberry Pi 2, Raspberry Pi 3, Odroid C2 or XU4... that have increased computing power in comparison with previous single/dual core SoC generations.

cdr - 64.84 kB - 03/20/2016 at 20:30


cdr - 63.07 kB - 03/20/2016 at 20:30


JPEG Image - 772.35 kB - 03/20/2016 at 20:29


  • 5 × Raspberry Pi 3 SoC computer 3th generation 4x core ARM A53 CPU
  • 5 × Raspberry Pi 2 (optional) SoC computer 2nd generation B+ format, 4x core ARM A7 CPU
  • 1 × Standard PC power supply PC ATX PSU 250-450W if posible with Silver efficiency
  • 1 × Plexiglass laser cuted box elements I post design files for cutter
  • 5 × Micro SD cards min 32GB For better hendling of random write tasks I sugest Samsung EVO UHC1/C10 as a starter.

View all 8 components

  • Installing Big Data (Hadoop) on a Small Nodes Cluster

    Jovan10/20/2016 at 23:13 0 comments

    Although you can find on web lot of good guides for Big Data installation on Raspberry Pi, for Odroid XU4 was little different. I honestly can recommend one very good web-guide for Odroid XU4 Big Data implementation. In link below you can find more on how to install Hadoop (including Apache Spark) on (our) Odroid XU4 Cluster, same procedure can be in great extent reproduced on Raspberry Pi thought :)

    Installing Hadoop onto an ODROID XU4 Cluster

  • New concept in detals

    Jovan07/07/2016 at 04:29 0 comments

    This new Small nodes Big data for Sensor/IoT system pre-processing concept can look like this:

  • Lets make fast ADC front end to sensors

    Jovan07/07/2016 at 04:25 6 comments

    And best part for the last, if you look on the last image regarding project you will find one bread/protoboard that is connected to ChipKIT MCU dev.board and then via USB to SoC.

    What you can not see is that it is fast -flash 8bit parallel ADC based on 1-1,5MSPS AD7821 IC.

    It is interesting to point out that this ADC was stable at 1.5MSPS and that on that speed 8-bit Atmega 328's (Arduino Uno/Nano) was to slow to read and merge 2 binary ports. Arduino Due with Atmel SAM3 end up slower then ChipKIT's PIC32mx250 MCU on the task. But winner was by no surprise Raspberry Pi3 that without much problem blink and read any GPIO port faster than ~55MHz.

  • Autonomous Small nodes BigData solution - concept of arhitecture for future IoT support

    Jovan07/07/2016 at 01:20 0 comments

    We all knows that Small nodes based on SoC computers can bring excellent power efficiency and low cost to BigData system solution domain, bit it (still) luck much needed high computing performances that rack-mount PC based servers provide.

    What I research recently was how to help BigData databases to obtains > 1MSPS reading from analog (industrial) sensor sources in real time. Making of log-files from ADC reading can not be considered as "real-time" solution.

    Any way think that we need to make >1M database transactions (1 row insert) that will record all conditions that follow particular ADC value, and you will find out that even bigger among Big Data systems will "hiccup" on this demand.

    Why is this important to save ADC values as unique values and not as log them and use after you will ask, and all I can say is because in a next few years M2M communication among +20 Billion Sensor/IoT systems and SoC/MCUs will demand processing in real time exponentially greater amount of information compared with today's volume which is generated by human social networks and web.

    In concept that I proposed in my academic research Small nodes SoC systems and clusters will be first line of data acquisition and pre-processing. In that way BigData system will have by order of magnitude less demanding tasks to perform regarding pre-processing with much lower network load and power consumption.

    In next illustrator I will sheer with you my vision of concept that need to enable reading (ADC) of fast sensor systems and real time pre-processing that will be sent to Small Nodes Big Data system.

    (With a big apologies in advance because my original illustration of the Serbo-Croatian

    language and for details you will be needing translator.)

    Any way you can easily recognize main block Sensors (Physical to Analog electrical values), block with ADC and MCU development board systems ( from Atmel, Microchip, ST), block with SoC computers that use GPIO ports, USART (SIP, I2C...) and USB communication to get ADC values and pack them to a form with all other needed ingredients that can be sent via ETHERNET LAN (asynchronous packet communication) to Small nodes Big Data system on pre-processing or even to Big Data system in some far data center on regular processing.

  • it is time to that this project evolves into something more ... Lets make BigData o Small nodes.

    Jovan07/07/2016 at 00:24 0 comments

    After we all make those boxes and fill them with 4,5, or even 7 SoC logical next step is to put them in to good use, right?

    I developed idea to push BigData systems to Small nodes systems, but not in ordinary (big system "emulation" on SoC) way but as completely different approach.

    I want change recognizable project name for now but it will evolve eventually to Autonomous Small nodes BigData solution.

    Stay tuned :)

  • To be light or not?

    Jovan03/26/2016 at 02:33 0 comments

    What is a common opinion about putting Fan with LED-light, or not?

    I conceive design as retro radio box, and I think that with LED it will be more like Christmas tree, but what you think about it?

    I would like to avoid my PC light style :)

View all 6 project logs

  • 1
    Step 1

    For 5x SoC we need good power source that will give stable output.

    RoPi 2 under load will pull up to 0.5-1A (without peripherals), and RoPi3 is even more demanding with 0.7-1.3A.

    For Odroid XU4 option we must calculate up to 2-2.4A per SoC and that is 10-12W at 5V.

    Best option is to rip of old PC 80% Plus power supply and replace old coopered Al/Fe leads with real Copper 2.5mm2 - 13AWG and 1.5mm2 -16AWG cable for less demanding voltage lines. Loss of up to 5% due to little longer line (<2m) is acceptable/tolerable.

  • 2
    Step 2

    Make Raspberry Pi battle ready :)

    Out of box Raspberry Pi 2 and Pi 3 come without any passive or active cooling because they are not meant for intensive processing. On our tests Raspberry Pi 3 can get up to 80 C Deg. in just a minute of doing Wolfram Mathematica benchmark. To prevent that we need passive coolers that can benefit from air flow inside cluster case, and they can be find for 1-3$.

    Next step is to make sure Raspberry Pi do not get under powered 4x Core CPU pull more power that its regulator provide to system.

    On Old Raspberries that problem did not exist because there was 470uF SMD electrolytic capacitor that went missing with introduction of light/flash shy voltage regulator U16. But now even with very stable PC PSU with tens of Amp on disposal when CPU load increase (dynamic power draw) Raspberry Pi 2 and even worse case Raspberry Pi 3 get under powered.

    Solution to that is not so nice but is VERY effective, and it is to solder one 1000uF electrolytic capacitor to only place with large enough soldering area in Raspberry Pi's power rail section.

    I post images under, make sure to isolate lead not to make contact to other SMD elements, and make some pillow from live rubber so that capacitor is fixed to board not to vibrate.

    You may go even further as I did with Raspberry Pi 2 and put some copper leafs on U16 and other exposed Silicon IC's to fix that photo-Voltic/flash issue. But for our cluster case that is no longer mandatory.

  • 3
    Step 3

    In case we want to use more demanding Odroid-XU4's instead of Raspberry Pi3's, we have to improve power source leads to lower lose. Keep in mind that 5x Odroid's can pull > 100W under full load. As a part of my Ph.D research was to accelerate operations on SoC Heterogeneous multiprocessing platforms by unloading some of the task from CPU's to GPGPU with OpenCL/Renderscript, Odroid's was at 12.5W 95% of time. This load needed more Copper, so I put additional lines for GND and +5V and 3.3V with 4mm2 (silica flex)copper cable.

    I agree that total diameter of GND and +5V ( >6mm2) can be used for electric arc welding :)... but this is cheapest way to preserve power efficiency of PSU.

View all 4 instructions

Enjoy this project?



fabian wrote 04/21/2018 at 10:50 point

What is the linpack? You computer is in top50000 ?

  Are you sure? yes | no

fabian wrote 04/21/2018 at 10:39 point

each computer have gpio. gpio is fastest than ethernet. is possible to connect computer as token ring or star each with other?

  Are you sure? yes | no

Greg Kennedy wrote 10/21/2016 at 00:40 point

Capacitor mod is pretty cool, where did you learn of that one?

  Are you sure? yes | no

Jovan wrote 10/21/2016 at 07:29 point

I know thing or two about electronics and computer /CPU arhitecture ;)

Just kidding of course, I research problem of Voltage drop while CPU/SoC is doing dynamic frequency change and find that system is missing capacity to overcome that issue.

  Are you sure? yes | no

Jovan wrote 10/21/2016 at 12:12 point

Just think how fast ARM SoC/CPU is switching from one frequency to another (e.g. 600 to 1.2GHz) and compare that to response time of switching power supply that need to follow it's increase in power (current) demand. In smartphones large battery also act as big capacitor making it posible to have thin/small power supply and managment unit, but USB powered device dose not have that advantage.

  Are you sure? yes | no

Jovan wrote 03/27/2016 at 06:12 point

2 open shafts on top and buttom of case are for 40line ribon GPIO cables.

  Are you sure? yes | no

Jovan wrote 03/26/2016 at 03:15 point

Question what you think how fast is Odroid XU4 in in comparison with PC with Intel Core2Duo 2GHz CPU?

  Are you sure? yes | no

Jovan wrote 03/20/2016 at 20:37 point

I uploaded CDR files of design for laser cutting if you want to make some by yourself.

  Are you sure? yes | no

Does this project spark your interest?

Become a member to follow this project and never miss any updates