The Arduino project gets a core memory accessory

A pair of mathematicians have created an electronics project that nostalgic computer buffs will likely recognise straight away: a magnetic-core memory shield for the Arduino electronics prototyping platform.

The Arduino is an open-source development system for the creation and programming of electronic gadgets. Powered by an ATMega microcontroller, it's a popular platform for both experienced developers and newcomers to the hobby - and has been chosen by Google to form the heart of its Open Accessory project for Android.

Perhaps the biggest attraction for the project is the availability of 'shields' - add-on circuit boards which connect to the Arduino and add new facilities such as screens, joysticks, sensors, or even Ethernet connectivity. A pair of mathematicians have created possibly the nerdiest shield yet, however - one that stores a tiny chunk of data on the height of 1950's technology: core memory.

Developed in the 50s and used up to the mid 70s, core-memory was one of the most commonly used forms of non-volatile storage around. Constructed from a series of tiny magnetic rings woven onto wire threads, it is the precursor to both magnetic hard-drives and random access memory - and, to this day, operating systems often refer to a memory dump as a 'core dump.'

Oliver Nash and Ben North met at a financial trading firm a few years ago, and discovered a joint love of mathematics and an interest in learning about electronics. When North showed Nash a vintage core plane he'd purchased on eBay a decade earlier, they were both struck with the relative simplicity of the design.

"It's an elegant and understandable technology, but with enough details that to get it to work was a worthwhile challenge and learning exercise," North told thinq_ during our interview with the pair. "It's just such a neat idea," echoed Nash. "I guess the fact that it's a piece of history is a big factor too," he added - and both find the history of computing a fascinating subject.

Putting the subject of the pair's project aside for a moment, Nash enthused about other historical creations which have captured his imagination. "Aside from core memory, one of my favourite bits of 'abandoned' technology is mercury delay lines, which were enormous and stored information acoustically in a gigantic vat of mercury. Also, I guess the mathematician in me would make me say some of the original mechanical computers that followed Babbage's Difference Engine or going back earlier maybe Pascal's Calculator."

For North, specific technologies are less important than the 'how' and 'why' of their development. "I think the work that was done in Bletchley Park during the war was incredible - they built special-purpose computers to help crack encrypted German transmissions. Under unimaginable pressure, the people there solved daunting problems, developing some fascinating technology in the process."

Returning to the pair's project, a shared love of electronics and interest in the Arduino platform brought the duo together - and the impulse purchase of a tub of the magnetic toroids originally used in core memory on eBay in 2009 gave them the parts they would need to produce a modern-day implementation of a bygone storage technology.

Asked what made the pair decide to recreate a technology which would have originally taken a team of dedicated engineers and cost thousands of pounds using hobbyist equipment and sheer enthusiasm, Nash joked "a masochistic desire to have no free time for months on end!

"No, that's a joke. I guess natural curiosity about how things work was the strongest force and then my belief that the only way to really understand something is to do it yourself. The more I learnt about the technology, the more appealing it became and it was also a project with a decent 'analogue' side to it which I had been looking for to complement the very digital things I'd been thinking about and working on until then."

The project would take a significant time to complete, and it wasn't without its pitfalls. "Mostly, the problems were caused by whole areas being new to us," North explained. "For
example, is the inductance of an eight-inch length of wire at all relevant in the experiments we were doing? Will we have to encase the whole thing in lead to avoid the circuit picking up interference?"

"What stands out most," Nash added, "was when we discovered a small but crucial mistake in our current driving circuitry after we had had our PCBs manufactured. Finally noticing the mistake was an absolute eureka moment as suddenly a whole load of confusing behaviour suddenly made sense."

A quick patch to the design to deal with the error, and the pair had created what they had set out to achieve: an Arduino shield which would act as the driver for a separate core memory module, allowing the user to write to and read from the module - exactly as the engineers of the 50s, 60s, and 70s would have done.

"I'd be amazed if there was a practical use for the shield," North admitted - but those asking why the pair have created the device are surely missing the point of the project. Despite a lack of sensible utility, Nash hasn't ruled out mass production of the devices. "I guess we might consider creating shields others could buy," he explained, "but not for profit. The best way to do this would be to sell people core memory shield kits with the parts so people could make them themselves - which I think most people would like."

For those willing to go a step further, the pair have remained true to the Arduino project's central ethos and released the source code, schematics, and PCB design files for the project - allowing anyone with the willingness to learn to follow in their footsteps. It has been suggested that a modified driver shield could be used to access original core memory modules - possibly even reading data from salvaged modules that hasn't been read since the early days of computing.

"It's a tempting project," Nash mused. "You can get the old modules on eBay and some are in very good shape. There is a real possibility of retrieving some very old data which would be awesome." North is rather more reticent to commit more time to the endeavour, however. "I think this wraps up the core memory project for me - there are plenty of other things I'd like to work on - or 'play with', depending how you look at it - and there's only so much time."

Nash and North released the files for their project publicly this week, in order to commemorate the 60th anniversary of the original core memory patent. Thankfully, it looks unlikely that the current patent holder, IBM, will be chasing the pair for royalties.

A full write-up of the core memory shield project, along with all the schematics and code needed to create your own, can be found over on the official website.