Arduino Mega 512K SRAM in shield format

Some time ago now I presented the design, development board and software driver for an add-on to the Arduino Mega that gave it access to 448Kb of additional SRAM arranged in 8 banks of 56Kb.

My design was realised by a compact add-on board that plugged into the relevant block of pins on the end of the Arduino Mega.

Recently I have been in touch with a fellow hacker, Colin Irwin of, who also has an interest in Arduino projects. Colin adapted my design into a full Arduino shield format and was kind enough to send me a kit of parts to evaluate.

Colin’s Design

The bare PCB follows the format for Arduino Mega shields. Colin has made it a little easier to solder straight connectors by adopting the slightly staggered holes popularised by the guys over at Sparkfun.

Building it

I did the build with what is now my usual technique. Firstly I tin the pads on the board with a soldering iron, then I reflow the fine-pitch components using a hot-plate and finally the discrete SMD components are reflowed into place using a hot-air gun. When it’s all done I inspect under a microscope and touch up any joints that look insecure.

Here’s the finished item plugged on top of my Mega 128. The shield completely covers the Arduino and you can only just see the USB port poking out from the side.

As I’m very familiar with the design I wasn’t expecting any problems and it proved just so with the board working first time.


Colin’s design represents a logical step forward from my original design. It feels very solid when built and plugs in firmly to the Arduino underneath. Anyone wanting to find our more or to get their hands on one of these shields should visit Colin’s website at

  • This is good news.

    I have a question for you. Will the ram keep up with an 84 MHZ Arduino Due in turbo mode? The Arduino Duo uses an ARM chip.

    I posted about your work here:…

    • Thanks Chuck. With a 12ns read/write cycle the memory IC would not handle an 84Mhz clock without a wait state, if indeed the external memory interface of Atmel's M3 implementation is 1:1 with the core clock – the M3 device I know (STM32) is not 1:1. The showstopper for this particular SRAM IC though is that its architecture is 8-bit and the external memory interface on the Due is 16-bit.

  • xxxajk

    Too bad it doesn’t pass thru the ICSP connector, which basically renders this shield useless for many things. 🙁

    • colin

      Hi xxxajk,
      A good point you make – me not passing through the ICSP connector. This does violate the arduino design guidelines, which I wasn’t aware of at the time.
      If you have a use for the board where the ICSP connector is passed through contact me separately. It may be possible for me to create a v3 design where this is available.

  • erathos

    Your project is very interesting and i wish to build it . Since you masked the 5v-VCC of the mega connector, do you power the board with the internal or an external 5v supply ? any idea about W consumption ?
    May we have the eagle files for the “mega format” of Colin’s Design version (his website seems to be closed now)?

    • colin

      Hi erathos,
      The supply is internal from the arduino. As for power consumption I don’t know – never measured it.
      While the lagrangianpoint website is currently down, just for the moment, due to a reorganisation at my end, it will be up again shortly. Contact me at if you’re interested.
      With the relaunch of the lagrangianpoint website I’ll be looking to also make available the eagle design files at a fairly minimal cost.