You are here: Home / Memory Game Expansion Pack – £5.15

Memory Game Expansion Pack – £5.15

The Memory Game @ShrimpingIt kit is an Arduino-compatible project which replicates the behaviour of an old-school 80s MB Games’ Simon,(AKA Simon Says). You can build it yourself from a handful of components by pushing them into a solderless breadboard, or solder it to stripboard for a more permanent game. See below for the build, code and behaviour, and visit the kit pages for ordering.

This page provides everything you need to build a @ShrimpingIt memory game from a bagged kit, as well as to source the parts for your own kits if you want to buy them for your school or hackspace. Alternatively you can preview the beta of our more detailed build guide, including step-by-step graphics.

First, build the circuit. It should be possible to build, referencing the diagram above, (which is bagged with our kits), but reading the following guidance first.

Note this layout is based on two 170-point mini-breadboards placed next to each other. It’s useful to build Blink first, proving you can Blink an LED, before adding all the other components, following this guide, with the modification that the chip should be at the centre, straddling two docked breadboards.

After completing Blink, it’s best to add the buttons first before adding other components, which naturally route themselves over the top of the buttons. The buttons have small black plastic nodules underneath them which can distance them from the breadboard, and these should be removed to get the best contact. You can bend these nodules off with a pair of pliers. Be careful not to cut the pins off the buttons if you use wire cutters! Four of the six legs on the buttons need to be bent a little to fit as shown; on the outside, the legs need to be flattened a little, making them flush with the sides of the buttons, whilst on the inside, the legs need to splay out to reach over a gap. The two remaining, thinner legs, are attached to the built-in LED. A red painted dot is there as an indicator mark showing which is the negative pin. It can be handy to use a probe, such as a cocktail stick or long-nose pliers, to line up the button and LED legs with the proper holes, before pushing the button down into its final seating position. Some find that moving the resistor or green wire along the row, so they share a hole with the LED leg, can improve reliability of contact.

You will be using the CP2102 usb module attached to the @ShrimpingIt circuit as a substitute for an official Arduino Uno board throughout the instructions. They are binary- and pin-equivalent to each other. To program the device with the Simon game, makers should have installed the USB module drivers from here, and followed the basic instructions to get started with Arduino as part of the Blink build.

You need to install the rtttl library, (which plays the rtttl tunes as part of the system), into your Arduino IDE by downloading the zip from the repository, and following the library installation instructions from the Arduino team . Ignore the part headed ‘Automatic Installation’ and look for the part headed ‘Manual Installation’. It is the folder called ‘rtttl’ which you need to drag into your ‘libraries’ folder.

Finally you can open a new blank Arduino sketch, then copy-paste the latest code from github, (replacing any boilerplate code already in the sketch), then upload it to your circuit. If all goes well your memory game should fire into life.

Further Development

Why not try to change the code by Googling for other rtttl tunes which are more personal to you and putting them into your game. You could change the game behaviour altogether, making it into a quiz buzzer which indicates which was the ‘fastest finger first’. Get a set of Arcade buttons and make a housing for your game. For advanced hackers, add an indicator of how many notes you’ve remembered, record the best score into EEPROM and trigger a special behaviour when you’ve beaten your own high score.

Sourcing

You will need to source a Shrimp component kit as a foundation for building the Memory Game expansion pack. The suppliers and approximate pricing for the parts in the Memory Game expansion pack…

Four backlit buttons in Red, Yellow, Green and Blue $0.30 each plus VAT,P&P Available here
Five 100 ohm resistors $0.01 each plus VAT,P&P Available here
One Piezo buzzer $0.11 each plus VAT,P&P  Available here
Two 170-point breadboards $0.58 each plus VAT,P&P  Available here
5 Green, 1 Red, 1 Orange solid core stripped wires

We estimate in total each Simon expansion kit, (excluding the Shrimp components and Programmer which are available separately) costs us £2.57.

10 Responses

  1. kaylai June 23, 2013 at 12:48 pm | Permalink | Reply

    Hi there, I can’t seem to find the Linux drivers. Am I missing something? Thanks!

    1. admin June 23, 2013 at 1:53 pm | Permalink | Reply

      Hiya, KaylaI good to know you’re cracking on with a build.

      The drivers for CP210x devices (like the CP2102 we ship, and the CP2104 we will probably be shipping soon) are all built-in to mainstream linux distributions. For the rare case of rolling your own distribution or kernel modules, you could follow up the information at… www.etheus.net/CP210x_Linux_Driver

  2. Matt Thornington September 6, 2013 at 10:31 pm | Permalink | Reply

    Had to make slight adjustment as my sketch wouldn’t allow import of a library with a hyphen in the name. Hope that renaming it nonblock won’t affect things down the line…

    1. admin September 7, 2013 at 8:27 am | Permalink | Reply

      It’s an understandable confusion, as github produces zips with a top level folder named after the repository. However this folder is merely a container, and the folder inside it, called ‘rtttl’ is what you need to drag into the ‘libraries’ folder. Take a look at the Arduino library installation instructions at arduino.cc/en/Guide/Libraries and especially the bit headed ‘Manual Installation’. They have an example of a library called ArduinoParty, in a folder called ArduinoParty containing files ArduinoParty.cpp and ArduinoParty.h . It is the same in our case, except the library is called rtttl instead.

  3. Simon Hedges February 3, 2014 at 9:34 am | Permalink | Reply

    Hi,

    The Backlit buttons are no longer available for the Memory Game Expansion Pack, is there another place I could source these???

    Thanks

    1. admin February 4, 2014 at 10:26 am | Permalink | Reply

      Sure, Simon. Hope we can help. I’m looking into alternative suppliers for our next order as well. The problem is finding a supplier who will supply small numbers of mixed colors. I haven’t seen anyone nearly as cheap as the original suppliers, yet, but I’m talking to three or four different suppliers about pricing now, and will suggest they offer a listing like the original. In the meantime if you want to order them from us, we have an extensive stock here in the UK, and are willing to ship any of the components of our kits on the same pricing model as the kits themselves – twice the wholesale price plus £1 shipping for any amount of stock. I’d need to look back at our records of shipping and VAT to calculate the price of buttons individually but it definitely won’t break the bank.

      1. Simon Hedges March 12, 2014 at 9:07 pm | Permalink | Reply

        That’s great I’ll give you a shout when I’m looking to get some :).

  4. Weekend plans? May 2, 2014 at 1:04 pm | Permalink

    […] will be helping eek jr build Memory Game Expansion Pack by which I mean giving her the instructions and only helping when she asks for help.. Plan C […]

  5. Arduino: first steps | ScienceDemo.org May 6, 2014 at 3:58 pm | Permalink

    […] …but I plumped for a neat little Simon-like memory game kit: […]

  6. test please delete May 7, 2014 at 8:39 am | Permalink

    […] The badges the eek Jrs made at makerfaire were harder than that. The elder eek twin made Memory Game Expansion Pack at the weekend and understands what each bit does… Plan C – Erro.rs Javascript Error […]

Leave a Reply Cancel reply

gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.