I modified the device handler. Inside the reset command of the DTH I moved the following line outside of the CMD definition. See below:
return zwave.meterV2.meterReset().format() // Reset all values
pause(1000)
def cmd = delayBetween( [
//zwave.meterV2.meterReset().format(), // Reset all values
zwave.meterV2.meterGet(scale: 0).format(), // Request the values we are interested in (0–>1 for kVAh)
zwave.meterV2.meterGet(scale: 2).format(),
zwave.meterV2.meterGet(scale: 4).format(),
zwave.meterV2.meterGet(scale: 5).format()
], 1000)
I remarked out the line that says reset all values and put it above as a stand alone statement.
I wrote a smartapp that calls the reset command on the 29th of the month, that is when my meter is read. It seems to work.
Maybe someone knows why the line had to be moved out, I just know it works this way and would not the other.