I've noticed two problems with this mod.
1) Using "#global.AccuList" and "#global.TrainsList". It may show different values than actual count when entities are deconstructed (other than the last one built) and built again. This can lead to providers getting stuck at full energy drain even when no train is active. (https://stackoverflow.com/questions/23590885/why-does-luas-length-operator-return-unexpected-values)
2) Sometimes when I completely drain all energy the providers won't start to recharge. (not sure what is causing it)
I've fixed both problems in my local copy by counting entities in "for" cycles and removing "else" block.