Most likely culprit is a weak battery. Follow the advice in this article.
https://repairpal.com/drive-cycle-issues
See #17
Running charge voltage dropping down can cause voltages to drop out of normal paramators.So yes, a weak battery or bad charge voltages can cause multicodes. Bad connections and bad grounds on computer too.
All a computer ever senses is voltage changes, anything out of normal parameters sets a code after so many times.
Codes are only readings of voltage out of normal parameters.