Почему можем зависать ARDUINO и SD?
Такое может быть, если идёт переполнение какой то переменной. Проверяйте код.
+1 lonelymyp. Какая схема установки, мощность и напряжение нагревателя, чем он включается и т.п.?
Wire.h - это i2c через "ногодрыг" или аппаратный? Если первое - шерстить его код на предмет устойчивости к помехам. Для начала - можно попробовать снизить сопротивления "подтяжек" до возможного минимума (по допустимому втекающему току BMP). Если ситуация улучшится - плохой код.