Close
0%
0%

The Tinusaur Plays Conway’s Game of Life

The classical Game of Life by John Conway implementer for Atmel ATtiny85 microcontroller on Tinusaur board and MAX7219 driven LED 8x8 matrix

Similar projects worth following
HEY, WE HAVE JUST LAUNCHED OUR FIRST INDIEGOGO‬‎ CROWDFUNDING‬ CAMPAIGN AT HTTP://IGG.ME/AT/TINUSAUR THAT WILL HELP US BUILD MORE OF THOSE AWESOME BOARDS.

Now, about this fun project ...

I was playing with a MAX7219 / LED 8x8 library and writing some code for how to use a simple scheduler to automate the task of outputting the buffer to the LED 8×8 matrix. So I was thinking … may be writing a simple game will illustrate the use of those libraries very well. Because just few days earlier I was looking at some Arduino projects implementing the Conway’s Game of Life I decided to write it for ATtiny85 and MAX7219 / LED 8x8.

LICENSE: Creative Commons - Attribution-ShareAlike 3.0

MAX7219 LED 8x8 ATtiny Tinusaur Conway’s Game of Life

I was playing with the MAX7219LED8x8 library and writing some code for how to use a simple scheduler to automate the task of outputting the buffer to the LED 8×8 matrix. So I was thinking … may be writing a simple game will illustrate the use of those libraries very well. Because just few days earlier I was looking at some Arduino projects implementing the Conway’s Game of LifeI decided to write it for ATtiny85 and MAX7219/LED 8×8.

The Game of Life is a classical computer game and a cellular automaton created by the British mathematician John Horton Conway in 1970. This is a zero-player game which means that once it starts no input from user is required to play the game’s turns – it goes by itself.

Its simple rules (outlined below) allow to be implemented on very simple microprocessor systems and Tinusaur (and ATtinysystems in general) could be perfect platform for that.

Hardware

One Tinusaur Board connected to LED matrix 8×8 controlled by MAX7219.

Drivers

The MAX7219Led8x8 library is used to output the pixels to the LED 8×8 matrix.

MAX7219 LED 8x8 Conway’s Game of LifeThe Rules

The universe of the Game of Life is an infinite two-dimensional orthogonal grid of square cells, each of which is in one of two possible states, alive or dead. Every cell interacts with its eight neighbours, which are the cells that are horizontally, vertically, or diagonally adjacent. At each step in time, the following transitions occur:

  1. Any live cell with fewer than two live neighbours dies, as if caused by under-population.
  2. Any live cell with two or three live neighbours lives on to the next generation.
  3. Any live cell with more than three live neighbours dies, as if by overcrowding.
  4. Any dead cell with exactly three live neighbours becomes a live cell, as if by reproduction.

The initial pattern constitutes the seed of the system. The first generation is created by applying the above rules simultaneously to every cell in the seed—births and deaths occur simultaneously, and the discrete moment at which this happens is sometimes called atick (in other words, each generation is a pure function of the preceding one). The rules continue to be applied repeatedly to create further generations.

(ref: Wikipedia/Conway’s_Game_of_Life)

Read more »

  • 1 × Tinusaur Board Fully assembled Tinusaur Board
  • 1 × LED 8×8 matrix board MAX7219 controlled LED 8x8 board
  • 5 × Jump cables, male-female Cables to connect the uC board to the LED board
  • 1 × AAA x2 Battery holder battery holder for 2 AAA batteries
  • 2 × Jump cables, male Cables to connect battery holder to the uC board

View all 6 components

View project log

Enjoy this project?

Share

Discussions

Neven Boyanov wrote 03/01/2016 at 10:22 point

Hey, we have just launched our first Indiegogo‬‎ crowdfunding‬ campaign at http://igg.me/at/tinusaur that will help us build more of those awesome boards. Please, support us if you can and wish us luck!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

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