December 2016

S M T W T F S
    123
45678910
11121314151617
18192021222324
252627282930 31

Page Summary

Style Credit

Expand Cut Tags

No cut tags

July 3rd, 2014

tony_osp: (Default)
Thursday, July 3rd, 2014 07:00 pm
While working on the OpenSprinkler enhancements, I quickly ran into resources limitations of the standard Arduino hardware.
OpenSprinkler has only 4K of RAM (in v2.0, previously it was only 2K!), and even Arduino Mega has only 8K of RAM. It is possible to squeeze in lots of features into this 8K of RAM, but pretty quickly it becomes a struggle for every byte. This is hard, and actually-unnecessary :-)

To raise resources bar on Arduino hardware (first of all - RAM), I started experimenting with AtMega 1284p. 1284p is another chip in the same AtMega family as the rest of Arduino boards, and it is compatible. Although there are no standard/officially blessed 1284p boards, quite a few guys are building 1284p-based Arduino boards and there are updated core files/libraries available.

To try it out I bought a kit from http://www.crossroadsfencing.com/BobuinoRev17/, specifically - this kit:


Arduino on AtMega1284p

It is essentially an Arduino-Uno form-factor board but based on AtMega 1284p. It supports standard Arduino shields, plus it has additional GPIO pins.

I ordered this kit few weeks ago and successfully assembled it yesterday. The board works fine, I can download simple sketches using standard Arduino IDE.

Over the next few weeks I'm planning to experiment more with it, and get OpenSprinkler firmware going on this board. This would require working Ethernet and SD card libraries, as well as LCD and few other standard libs. Let's see how it goes.



An intriguing opportunity is to use standard OpenSprinkler 2.0 hardware with this chip - 1284p is pin-compatible with 644 used in OpenSprinlkler 2.0 hardware. I might experiment with it later on (but right now I don't have original OpenSprinkler hardware).