The other day I ran across a few Atmel Raven[0] development boards that I’d forgotten I had (it never ceases to amaze the amount of random electronics I own and have completely forgotten about) . It got me thinking, now that heavy lifting of porting RIOT to its first 8 bit micro and running on the Arduino Mega with its ATmega2560 how small of an micro would it be possible to port RIOT to?
Each of the boards contains an ATmega1284P[1] is connected via SPI to a n AT86RF230 transceiver[2], with a second micro, an ATmega3290P[3] used to drive the LCD and other peripherals.
A quick look at the data sheets seems to show that the 1284P and its much larger cousin, the 2560 are quite similar.
1284P | 2560 | 3290P |
---|---|---|
Flash: 128 | 256 | 32 |
SRAM: 16 | 8 | 2 |
MHz: 16 | 20 | 20 |
EEPROM: 4096 | 4096 | 1024 |
Max I/O: 86 | 32 | 69 |
The 3290 is a little on the small side but I wonder if someone could cram RIOT in there. Is it possible to build RIOT without a networking stack; how much could that reduce the memory footprint? What are RIOT’s hardware requirements? The homepage says the minimum RAM is about 1.5k and 5k of ROM, are those numbers still accurate?
There’s already a driver for for Atmel’s AT86RF231 in the tree and while the AT86RF230 on the Raven boards are nearly the same the 230 lacks a couple minor features, namely a crypto processor and RNG. So, the RF link would be wide open but for experimentation and learning sacrifices are often necessary.
Anyways, I thought working on a port might be fun (I find enjoyment in strange things) and wanted check you more knowledgeable folks to see if it would be worth the effort or at least possible.
Thanks.
–adam
[0] http://www.atmel.com/tools/avrraven.aspx [1] http://www.atmel.com/devices/ATMEGA1284P.aspx [2] http://www.atmel.com/devices/AT86RF230.aspx [3] http://www.atmel.com/devices/ATMEGA3290P.aspx