element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • Product Groups
  • Store
    Store
    • Visit Your Store
    • Choose Another Store
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
Clustered MCUs
  • Challenges & Projects
  • Project14
  • Clustered MCUs
  • More
  • Cancel
Clustered MCUs
Documents Project14 | Clustered MCUs:  Anything Goes with Two or More MCUs!
  • Blog
  • Forum
  • Documents
  • Events
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Clustered MCUs requires membership for participation - click to join
Actions
  • Share
  • More
  • Cancel
Engagement
  • Author Author: tariq.ahmad
  • Date Created: 14 Aug 2018 1:52 PM Date Created
  • Last Updated Last Updated: 8 Sep 2018 6:46 PM
  • Views 1471 views
  • Likes 15 likes
  • Comments 39 comments
Related
Recommended

Project14 | Clustered MCUs:  Anything Goes with Two or More MCUs!

image

Clustered MCUs

Enter Your Electronics & Design Project for Your Chance to Win a Grand Prize for the craziest project or a $100 Shopping Cart!

Back to The Project14 homepage image

Project14 Home
Monthly Themes
Monthly Theme Poll

 

The Craziest Project that uses of two or more MCUs Wins a Grand Prize Package + a $100 Shopping Cart!

 

3 First Place Winners Win a $100 Shopping Cart to an element14 Store!

 

imageimageimage
Buy NowBuy NowBuy NowBuy NowBuy NowBuy Now

image

MKR Giveways and Upcoming Livestream Series on MKR with Massimo Banzi Cofounder of Arduino!

 

In the comments below: Tell us your crazy ideas on combining two or more MCUs in your Project! 

 

Here's to the crazy ones: The theme this month is Clustered MCUs and it comes from 14rhb.  You can do any project that involves two or more MCUs. To make things interesting we are offering a Grand Prize Package of an Arduino MKR IoT Bundle (includes the MKR1000 Dev Board), an MKR1000 & Uno Shield Interface Adapter Board, an Arduino Uno, and some swag for the craziest project that uses two or more microcontrollers!

 

You can use any two microcontrollers or combinations of microcontrollers from any manufacturer.  It doesn't matter what board its on.  Arduino is a popular choice for many of you on the community and it would be great to see some more Arduino Projects .  The MKR1000 kit and MKR1000 & Shield Interface were originally ordered in advance of the Open Arduino competition.  This was held to celebrate the birthday of Project14 by celebrating the birthday of Arduino .  They were also included in the kit used for the Design for a Cause - Design Challenge .

 

When we had the Project14 | The Birthday Special: Open Arduino: The Winners Announcement! , the grand prize was still waiting on the MKR1000 Kit and shield interface.  jomoenginer was the grand prize for his Imperial Mouse Droid project.  It used both an Arduino Uno and an Arduino Yun:

  • Arduino Powered MSE-6 (Mouse Droid) – Arduino Code
  • Arduino Powered MSE-6 (Mouse Droid) - Arduino Yun UI
  • Arduino Powered MSE-6 (Mouse Droid) - Arduino Uno and FreeRTOS
  • Arduino Powered MSE-6 (Mouse Droid) - Droid in Action
  • Arduino Powered MSE-6 (Mouse Droid)

 

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

Because the kit and adapter were so popular, they were backordered.  Unfortunately, they were not in as soon as expected so there was a bit of delay in shipping it out to jomoenginer , who was more than understanding.  Luckily,  Arduino who was sponsoring the Design for a Cause - Design Challenge stepped up to send over an MKR1000 Kit and MKR1000 & Shield interface. Now jomoenginer had everything he needed to go along with the rest of his Grand Prize winnings:

 

image

 

 

Birth of the Microcontroller

 

image
image
image
image

 

What is a microcontroller and where does it come from?  The dawn of the microcontroller was in the early 70s. In 1971, around the same time that Intel invented the world's first microprocessor, Gary Boone and Michael Cochran invented the world's first microcontroller for Texas Instruments.  Before passing at the age of 68 in 2013,  Gary Boone conducted an oral history with the Institute of Electrical & Electronics Engineers which you can view here.  According to him:

 

  • A microprocessor is "a processor on a single chip. A processor has an instruction set and it operates on data, according to a program. The data, the program, and the input and output are arranged externally to that single chip."
  • A microcontroller "attempts to provide a self-contained system on a single chip. In addition to a processor, it also includes memory for data, memory for program, an ability to deal with inputs like keyboard inputs, and an ability to provide outputs like numeric or alpha-numeric display outputs."

 

The tradeoff of having a microcontroller contain all those things is that the amount of processing power would be typically less than a microprocessor of equal price.  A microprocessor, unlike a microcontroller, is not a self-contained computer on a chip. It cannot operate without the help of other ICs like RAMs, ROMs, and I/O chips to interact with other components.

 

The first microcontroller, the TMS 1000, did not go to general market immediately but was introduced in a TI calculator in 1972.  It was made available to the general market in 1974. The TMS 1000, was cheap enough to be used in everything from Texas Instrument's own calculators, microwave ovens, washers, jukeboxes, video games, toys, and many other consumer electronics.

 

Texas Instruments now has a wide variety of microcontrollers available, some with specific hardware on board to specialize them for more specific tasks.  Often a user must set data registers manually, which can involve reading 600+ page data sheets to find the proper line of code or variable.  While these board may offer more than Arduino, they often require more time and recourse.

 

Here are some common terms may come across when evaluating microcontrollers for your Clustered MCUs project:

 

  • MCU - microcontroller
  • MIPs - million instructions per second: a measure of the speed and power of the processor
  • CPU - basic instruction processing unit in the microcontroller
  • DSP - digital signaling processor: chip designed for data intensive mathematical calculations
  • RISC - reduced instruction set computing
  • CISC - complex instruction set computing
  • SOC - system on a chip
  • ADC - analog-to-digital converter
  • DAC - digital-to-analog converter
  • RAM - random access memory
  • FRAM - ferroelectric RAM
  • UART - universal asynchronous receiver transmitter: translates between parallel and serial data
  • SPI - serial peripheral interface: a synchronous serial data bus
  • PWM - pulse width modulation: modulation technique used mostly for controlling motors

 

The low-cost of the microcontroller and all-in-one approach made it economical to make what is now known as embedded computer application.  One of the first applications of the microcontroller were in gas pumps where it was used for metering and starting of the pump.  Also, it was used in microwave ovens where it was used to monitor the keypad, clock, and oven settings.  Now, microcontrollers are the top selling chip of any kind.  They are all around you. They can be found in tools, toys, toothbrushes, and much more.

 

Memory Architectures: Harvard vs Von Neumann

 

In the early days of computing, around the time of the World War II, the US government asked Harvard and Princeton Universities to design computer architecture for computation of naval artillery shell distances for varying elevations and environmental conditions.

 

The ENIAC (Electronic Numerical Integrator and Computer) was among the earliest electronic general-purpose computers made. It uses the same memory and data paths for programs and data storage. Among the first programs included the feasibility of the thermonuclear weapon:

 

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

Harvard's answer was the Mark 1 which read instructions from a 24-channel punched paper tape.  It executed instruction and then read in the next one. A separate tape contained numbers for input but the tape formats were not interchangeable. Instructions could not be executed from the storage registers.  The separation of data and instructions is known as the Harvard Architecture.

 

The Von Neumann (Princeton) Architecture,  was better suited for the time because using one memory was preferable because of the unreliability of electronics at the time,  before the widespread use of transistors. That's because with a single memory interface, fewer things could go wrong.

 

The Harvard Architecture was largely ignored until the late 1970s when microcontroller manufacturers realized the advantages for devices they designed.

 

Von Neumann (Princeton) Architecture
Harvard Architecture
imageimage

The Harvard Architecture was largely ignored until the late 1970s when microcontroller manufacturers realized the advantages for devices they designed.

 

The Von Neumann Architecture's biggest advantage is that it simplifies microcontroller design because only one memory is accessed. Meanwhile, the Harvard Architecture executes instructions in fewer instruction cycles than the Von Neumann architecture.  Each architecture has its advantage.  The Harvard model has the edge on performance while the the Von Neumann is more flexible.

 

The Connection Machine

 

When we talk about a Grand Prize for the Craziest Clustered MCUs project we have something like The Connection Machine in mind.  Just joking.  Although, wouldn't that be cool?image

 

In the early 80s, Danny Hillis assembled a team that would develop what would become known as the CM-1 Connection Machine, a massively parallel hypercube-based arrangement of 65,536 microprocessors. The microprocessors were relatively puny but they worked together to follow the structure of the brain. In fact, the CM-1 Connection Machine, was an idea that was hatched from doctoral research on alternatives to the the then commonplace von Neumann architecture.  The machine would become the first commercial supercomputer designed AI, notably modeling its structure on the brain.  Rather than relying on a single powerful processor to perform calculations simultaneously, it distributed data over tens of thousands simple 1-bit processors. It is amazing what you can accomplish simply and when working as a team!  Each processor performed calculations simultaneously, an architecture known as Single Instruction Multiple Data (SIMD).

 

When it came time to pick a name for the startup, they chose the name Thinking Machines Corporation. Nobel Prize Physicist Feyman was a member of the team.  He suggested the internal network, a 12-dimensional boolean n-cube structure, enabling the processors to communicate faster than any previous SIMD design.  While the processors themselves were simple, the router that allowed the processors to communicate was complicated in comparison. Because many processors needed to communicate simultaneously , many messages would need to contend for the same wires.

 

The Connection Machine was an inspiration to no other than Steve Jobs himself.  He was at NeXT at the time with Joanna Hoffman, who had followed Jobs from Apple to Next Computers.  She was also served as a marketing manager for him during the launch of the first Macintosh and she had this to say on the influence of The Connection Machine on Jobs:

 

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

Sergey Brinn, cofounder of Google, helped turn Google into the world's most powerful search engine.  He was influenced heavily from parallel programming techniques he learned on a Connection Machine.    Danny's subsequent company, Metaweb, was acquired by Google. The CTO of Metaweb, John Giannandrea, is now the head of Google's AI.  According to Danny Willis, who co-founded both the Thinking Man's Corporation and Metaweb:

 

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

 

The AVR Microcontroller

 

In the early 90s, the AVR line of microcontrollers was born from a student project at the Norwegian Institute of Technology. Alf-Egil Bogen and Vegard Wollan devised an 8-bit device with a RISC-type internal architecture.  They would continue working and refining the design once the AVR design was sold to Atmel.  The AVR is a modified Harvard Architecture RISC microcontroller.  They are highly configureable and versatile. It has several features that set it apart from 8 bit microcontrollers of the time such as the 8051 by Intel and the 68HC05 by Motorola.

 

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

The AVR line was of devices was one of the first to incorporate on-board flash memory for program storage, as opposed to relying on one-time programmable ROM (read-only memory), EPROM (erasable programmable read-only memory), or EEPROM (electrically erasable programmable read-only memory) as was used with other microcontrollers of the time. This made reprogramming the AVR microcontroller a simple matter of loading program code into the devices internal flash memory.

 

Most AVR parts use a small amount of EEPROM for storing things like operating parameters that must persist between changes in the flash memory.

 

Although Atmel says that AVR does not stand for anything and its not an acronym, it's generally accepted that AVR stands for Alf and Vegard's RISC processor. AVR is a modified Harvard Architecture whereby program and data are stored in separate physical memory systems that appear in different address spaces but have the ability to read data items from program memory using instructions.

 

There are three categories of AVR microcontrollers:

  • ATtiny (Tiny AVR) - 6-32 pins, .5-8 KB of Flash Memory, small in size, ideal for simpler applications
  • ATmega (Mega AVR) - 6-32 pins, 4- 256 KB of memory, more inbuilt peripherals, ideal for modest to difficult applications
  • ATXmega (Xmega AVR) - 44-100 pins, 16-384 KB, used commercially for applications requiring large program memory and high speed; DMA, Event System Included

 

RISC Architecture

  • 131 instructions
  • 32 8-bit general purpose registers
  • Up to 20 Mhz clock rate (20 MIPS operation)

 

CPU

 

Based on the Harvard Architecture, every IC (integrated circuit) has two buses, an instruction bus and a data bus. The CPU core consists of the ALU, General Purpose Registers, Program Counter, Instruction Register, Status Register, and Stack Pointer. The 8-bit CPU controls peripheral functions via an internal high-speed data bus.

 

Internal Memory

 

AVR devices contain three types of memory:

  • Flash - used to store programs and initialize any data. You can execute program code from flash but can not modify data in the Flash Memory from your executing code.  To modify data, it needs to be copied into SRAM (up to 256 K)
  • SRAM (static random-access memory) - (upused to hold transient data such as the program variables and the stack (up to 32K)
  • EEPROM - holds data that needs to persist between software changes and power cycles. (up to 4K)

 

Flash and EEPROM can be loaded externally and will retain its content when the AVR is powered off. The SRAM is voltatile and its contents will be lost when the AVR loses power.

 

Your Monthly Theme

 

The Monthly Theme You Voted For: Clustered MCUs
Arduino Powered MSE-6 (Mouse Droid) - Droid in ActionFingerprint Skeleton Key - RFID Module - Design for a Cause Challenge - Blog Post #3
You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image
You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

Your Chance to Win

 

Be Original
Stick to the Theme
  • You could come up with a clever name that make's your project memorable!
    • This project is your baby! Part of the fun of bringing something new into the world is coming up with a name.
  • Your project could introduce something new or that is not commercially available or affordable!
  • If you have an idea for a project that doesn't fit the current theme then submit your idea in the comments section of the monthly poll.
List the Steps
Submit Video Proof
  • Provide the steps you took to complete your project (text, video, or images).
    • This could be a step by step how-to-guide, vlog, schematics, coding, napkin drawings, voice narration, or whatever you think will be useful!
  • If it doesn't work that's fine, this is more about the journey than the end product.
  • A short video is all that is required but you can shoot as much video as you like.
  • You are encouraged to be creative and have as much fun as possible!

 

The Grand Prize

 

  • One Grand Prize Winner Wins an Arduino MKR IoT Bundle, MKR1000 & Uno Shield Interface Adapter Board, an Arduino Uno + a $100 Shopping Cart

 

Arduino MKR IoT BundleMKR1000 & Uno Shield Interface Adapter BoardArduino Uno
imageimageimage

Buy NowBuy Now

Buy NowBuy NowBuy NowBuy Now

First Place Winners

 

  • 3 First Place Winners Win a $100 Shopping Cart:
    • How to Redeem Your Shopping Cart for Project14
imageimageimage

 

Your Project, Your Ideas!

 

 

About Project14
Directions

Every month you'll have a new poll where you'll get to decide an upcoming project competition, based on your interests, that will take place a couple of months in advance. Themes are broad in scope so that everyone can participate regardless of skill set.

 

What are Monthly Themes?

  • Every month (around the 14th of each month) a new theme will be posted on Project14.
  • Submit your ideas (proposals) for your projects to get feedback from the rest of the community.
  • Submit a project entry in the Theme space once you start working on it.

 

What are Monthly Theme Polls?

  • Every month (around the 14th of each month) there is a project theme poll.
  • Vote on which project competition you want to see for the following upcoming theme.
    • The themes voted on during the previous poll decided the upcoming theme.
    • If you submit an idea for a theme that is not used then it can still be used in a future poll.
  • Themes comments and ideas from the comments section of the project theme poll.



Step 1: Log in or register on element14, it's easy and free.

Step 2: Post in the comments section below to begin a discussion on your idea. Videos, pictures and text are all welcomed forms of submission.

Step 3: Submit a blog post of your progress on your project by the end of the month.  You are free to submit as many blog entries as you like until the beginning of the next theme.

 

Be sure to include video proof of your project!

 

Visit:

 

 

 

You have until October 15th End of Day to submit your completed project!

 

A jury consisting of your peers will judge project submissions!

In the Comments Below:

 

Let us know what you plan on doing with two or more MCUs in your Project!

  • clusteredmcuch
  • risc
  • fram
  • danny hillis
  • intel
  • avr
  • arduino uno mkr1000 shield
  • cisc
  • risc architecture
  • arduino uno
  • 8051
  • atmega
  • program storage
  • ic
  • reduced instruction set computing
  • instruction bus
  • simd
  • soc
  • thinking man's corporation
  • alu
  • sergey brinn
  • serial peripheral interface
  • pwm
  • single instruction multiple data
  • microprocessor
  • EEPROM
  • dac
  • harvard architecture
  • internal flash memory
  • digital signal processing
  • google
  • eprom
  • system on a chip
  • 8 bit cpu
  • digital to analog converter
  • spi
  • metaweb
  • ferroelectric ram
  • princeton architecture
  • modified harvard architecture
  • pulse width modulation
  • von neumann architecture
  • arduino microcontroller cluster
  • flash
  • data bus
  • uart
  • mips
  • ai
  • dsp
  • arduino mkr1000 kit
  • sram
  • analog to digital converter
  • microcontroller
  • mcu
  • cpu
  • eniac
  • attiny
  • complex instruction set computing
  • universal asynchronous receiver transmitter
  • synchronous serial data bus
  • steve jobs
  • texas instruments
  • atxmega
  • atmel
  • ti
  • the connection machine
  • integrated chip
  • Share
  • History
  • More
  • Cancel
  • Sign in to reply

Top Comments

  • Workshopshed
    Workshopshed over 4 years ago +10
    "Craziest project" - I feel like I'm being baited here....
  • balearicdynamics
    balearicdynamics over 4 years ago +9
    He he he he ... Maybe this was just the Project14 I was waiting Enrico
  • 14rhb
    14rhb over 4 years ago +7
    Looking through my unused silver antistatic bags, this might be a good starting place.... Rod
  • beacon_dave
    beacon_dave over 1 year ago in reply to beacon_dave

    Behind the scenes of the Button Wall project with Doug DeHaven at the Carnegie Science Center:

    https://www.youtube.com/watch?v=ep2eOYDKpP0

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mahmood.hassan
    mahmood.hassan over 4 years ago in reply to mahmood.hassan

    image

    Also bought some Single cell Li-IOn boosters, motor driver board and lot of Range finder

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mahmood.hassan
    mahmood.hassan over 4 years ago in reply to dixonselvan

    image

    image

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • dixonselvan
    dixonselvan over 4 years ago in reply to mahmood.hassan

    Sorry to hear that mahmood.hassan The clock is ticking and I wish you good luck to complete your project.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mahmood.hassan
    mahmood.hassan over 4 years ago

    Soon going to post demo videos.

    ESP 12 was blown. bought new one.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mahmood.hassan
    mahmood.hassan over 4 years ago

    Working on a autonomous/wifi-lan/internet/voice controlled Robot with obstacle detection using ESP12E and Nucleo STM32F411RE

     

    tinyMonster AIO Robot (part-1) 

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Workshopshed
    Workshopshed over 4 years ago

    I spotted that the icon used for the clustered MCUs is my I2C test rig I was using for the jumbo servo project. I also did the same test using the Itsybitsy and some LEDs to pretend to be the H-Bridge.

    imageimage

    Since then the Itsybitsy got housed into the servo case and the arduino uno gained an LCD screen which some might recognise from back in 2013 when I developed the code for the double height numbers .

    image

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • sakshambhutani
    sakshambhutani over 4 years ago in reply to 14rhb

    Thanks dixonselvan & 14rhb! Really Glad you liked my project!

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • 14rhb
    14rhb over 4 years ago in reply to dixonselvan

    Hi Dixon dixonselvan,

     

    You are absolutely right. Sorry sakshambhutani I didn't realise and was concerned that your interesting post might get ignored later on when the judging starts. Your blog post looks great...I also gave it a nice rating for you :-)

     

    Rod

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • dixonselvan
    dixonselvan over 4 years ago in reply to 14rhb

    Rod ( 14rhb) I think sakshambhutani has done it already,  Octopod: Smart Home IOT Project

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2023 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • Facebook
  • Twitter
  • linkedin
  • YouTube