Ever battled SRAM limitations with your sketch on the Arduino Uno? Decided reluctantly to break out an Arduino Mega, and suffer with the resulting shield incompatibilities? Yup, me too…
Philip Stevens and Jonathan Oxer decided to do something about it. They’re currently running a crowd funding project on the Australian Pozible site to build a board they’re calling “Goldilocks.” Presumably named since it doesn’t have too little (memory), isn’t too big (a footprint), but it’s just right..?
The Goldilocks board is an Arduino clone, but instead of using the ATmega328p of the Uno, or the ATmega2560 of the Mega, it uses the ATmega1284p micro-controller. It has the same form factor of the Uno, but more SRAM, in fact it has eight times more, and that’s actually twice as much as the Mega.
Feature | ATmega328p | ATmega1284p | ATmega2560p |
Cost | $2.99 | $4.66 | $11.28 |
SRAM | 2k | 16k | 8k |
Flash RAM | 32k | 128k | 256k |
EEPROM | 1k | 4k | 4k |
USART | 1 | 2 | 2 |
Digital I/O Pins | 23 | 32 | 86 |
Analog I/O Pins | 6 | 8 | 16 |
Interrupt Timers | 2 | 3 | 8 |
Switching the processor also means that it has two programmable USART, separate I²C bus pins, and extra 16 bit timer, four times the Flash and twice the EEPROM of the Uno. The board also has a µSDCard slot and space for prototyping. But the main advantage for a lot of people is going to be that extra SRAM for your sketch to run inside.
The recent announcement of the Arduino GSM Shield added another benefit over the Uno since the two pins designated to be the USART pins Tx/Rx on the GSM Shield match the pins proposed for the hardware USART1 Tx1/Rx1 on the Goldilocks. Which means that the full AVR hardware USART Interrupt, error flag, and timing capability would be available for communications with the GSM shield, unlike the Uno where a software USART is used instead.
Their Pozible campaign is fully funded, but still has eighteen days on the clock if you’re interested in getting a board. Estimated delivery is July and it promises to be fully Arduino-compatible and ship with the necessary board definition files so that you can use it in the Arduino IDE. More details can be found on Philip’s blog.
ADVERTISEMENT