Duemalanove hangs - need help with memory

I have a sketch that reads 60 OneWire temperature sensors (DS18B20). I have 4 strands of sensors, each going to a different digital input. I put the addresses in one big 8x60 byte array and I’m assuming this is causing a memory problem for me. When I run the sketch on my Duemalanove it hangs, but it runs fine on a Mega 2560. Any suggestions on how to make better use of memory so I can get this to run on my Duemalanove.

My sketch is attached.

OneWire Sketch.txt (11.3 KB)

You could start by surrounding all of you strings with F(). That should reduce the ram consumption.

Also, does the temperature need to be stored in a int ? If you could use uint8_t for the temp values you could save 60 bytes.

The sensor addresses array could also be stored in PROGMEM, although there's not a nice F() macro for that...