Excellent. I remembered seeing similar code previously and found where you'd posted it previously to better understand the breakdown of your ratio 0.0002567. I noticed you previously had an Aref constant in your code, but of I understand correctly, now you're just calibrating that ratio when you test the ADC against a voltmeter? I've put my refined math code below. resRatio is (220k + 10k)/10k = 23, and I've used your Aref of 1.075. And the overvoltage you mention, with a ratio of 23 would mean that anything from 25.3vdc to 115vdc would be safe, but the ADC will just see the maximum value.
https://forum.arduino.cc/index.php?topic=442778.0
total = 0; //reset total
analogRead(pri_battPin);//one unused reading to clear any ghost charge
for(int x = 0; x < 64; x++){
total = total + analogRead(pri_battPin); //Add each value
// pri_pinVolt = primaryVal * ADCratio; //ADCratiomV per 1024 steps for 5 Volts (ie; 5 / 1024 = ADCratio)
//priBattVolt = pri_pinVolt * ratio; //grab the calculated under 5Volt input and multiply it by the ratio to ..........
//priBattVolt = round(priBattVolt * 10)/10.0;
}
priBattVolt = (total / 64) * resRatio * Aref / 1024;
total = 0; //reset total
analogRead(aux_battPin);//one unused reading to clear any ghost charge
for(int x = 0; x < 64; x++){
total = total + analogRead(aux_battPin); //Add each value
}
auxBattVolt = (total / 64) * resRatio * Aref / 1024 ;
total = 0; //reset total
analogRead(solar_Pin);//one unused reading to clear any ghost charge
for(int x = 0; x < 64; x++){
total = total + analogRead(solar_Pin); //Add each value
}
solar_chargeVoltage = (total / 64) * resRatio * Aref / 1024;