I did design small pic-based temperature monitoring modules, and I often used infrared as medium of sending data out, to prevent running cables to weird places.
Since i started to work with battery packs, I thought of using same idea.
So the idea is to run some small uC, pic 12f675,
attiny, or whatever else cheap, i think it really does not matter on the battery itself.
Each “uC” would have IR diode and TSOP 36* or other infrared sensor, again - whatever cheap one gets.
uC could monitor voltage, temperature and perhaps enable shunt or do some soft PWM to ‘steal’ some voltage off adjacent cell via tiny transformer - does not matter really.
Also polling infrared sensor to do RX and respond to main controler when called.
Main benefit - optoisolation, simplicity, no need to run too many wires and easy way to replace battery cells - BMS on cell and just two wires /plug to main pack.
OFC “master” board can be as elaborate as You please, but again - no need for esp8266, wifi, anything really, even old PC with infrared dongle will do.
If charger will be made independent (f.e. Arduino with IR and controlling charge/discharge mosfets basing on cell conditions) it will be quite bulletproof.
Even better - system is quite modular without many cables - want to charge just half of the pack with extra charger - just add two wires and point your infrared port in right direction.
Want to add few extra cells parallel/serial/ whatever - just take care each cell has proper “address” programmed in.
I will probably develop it all after some time , though as right now I have no time to do it I will just pass the idea so it can work for others - enjoy.