Hello All,
First time on the forum with a strange issue I did not find in the troubleshooting guide, however there was something that may be a clue. I have been running my home made heating control system for 2 years with the Duemilanove, I added two more sensors and updated the sketch to include them. This pushed the code over 14K. This causes it to get stuck or repeatedly restart until powered off. I saw mention of this with an older board and 2K boot loader + 14K code = maximum of 16K but I have a 328 ??? The symptoms are identical and repeatable so I am asking for some wisdom from the forum.
I checked the chip to be sure it is a 328 and it is. I do have the right settings in the IDE ( Using the 021 IDE at present ) I have been able to strip some code out and get the project to run at 13820K but my question is why ? The board says is has 30 ~ K every time I compile, I have no reason to believe I have any hardware/software/sketch/communications problems since it has been running and I make tweaks and reload all the time with the current setup. ( Ubuntu 11.04 ).
Some backdrop, The Duemilanove with 6 dallas one -wire temperature sensors ( I was trying to add 4 more ) and two relays to control water pumps. The sketch reads the sensors every 60 seconds and writes the values to the serial/USB where the are collected and stored in mysql , I have a website that is built on top to show me the current state, etc etc.
This has been working excellent for 2 years, only the added sensors sent me into a fun day of debugging.
Is it possible to have only 16K on the Duemilanove ? It that separate chip(s) ? Is it possible to have a bootloader that does not work with 32 K ? Has anyone heard of something like this ? And a good way to fix it of course. I suspect Ihave something from the transition to the 328 that has been lying in wait for my sketches to get over 14K.
Any help would be appreciated. My grand plans for expansion are stalled!