I may have spoke to soon. With additional testing, I discovered I had a typo in the cycling thru all 3 states.
At the very end, if I change tempToRead from 0 to 3 so it correctly cycles thru all 3 MAX31865 chips, it screws up operating:
// **** End Temperature Reading Code **************
// convert to array format for sending to GPS module
temp2Int = (unsigned int)(TemperatureF2 * 10.0); // assuming TemperatureF will have 4 digits
String heatConv2 = String(temp2Int); // construct string representation
heatConv2.toCharArray(TemperatureF2char, 5); // string representation is 4 chars plus null terminator, copy 4 characters, ignore null terminator
tempToRead = 0;
break;
}
}
// SPI mode changes - need for shift registers
SPI.setDataMode(SPI_MODE0); // choices 0,1,2,3 - reset to 0 for shift registers
If it is 0, the code sequences correctly, once it seems, the jump to the non-existent case 0 then never reads the switches to fake the high/low temperature again.
What am I missing still?
Thanks
d4_temp0_2.ino (20.9 KB)