About the grounding - it's not required, but what can happen is electrical interference gets on pins which makes them (internally) toggle between 0 and 1 quickly. That toggling actually uses up power. One way to stop that is to ground pins - or you can just set them to outputs - it's maybe not as good but it's far easier!
It's a massive problem on the nRF52s, less so on the STM32 but you could try:
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
So what changed? Just the multimeter you used?
About the grounding - it's not required, but what can happen is electrical interference gets on pins which makes them (internally) toggle between 0 and 1 quickly. That toggling actually uses up power. One way to stop that is to ground pins - or you can just set them to outputs - it's maybe not as good but it's far easier!
It's a massive problem on the nRF52s, less so on the STM32 but you could try:
instead of
digitalRead
and see if that helps lower it?