I have added a rain gauge WH40 ti my system and exposed an error in GW3000 that has taken me several days to find. I startet with the aid of Gemini and then had to change to Claude.ai, because Gemini was circling around the same solutions to no avail.
Bottom line is GW3000 reports rainRate as mm and not mm_per_hour.
the driver expects it to be in mm_per_hour, which is absolutely the right interpretation.
But the only place to change it for me by now, is to adapt the driver to the current GW3000 firmware.
The suggested change for now could be:
Line 9515 block (linje 9528-9529) should be changed from:
_item['val'] = weewx.units.convert(rainrate_vt,
weewx.units.std_groups[self.unit_system]['group_rainrate']).value
to:
# GW3000 sender rain rate som 'mm' i stedet for 'mm/hr' - ret enheden
if rainrate_vt.unit == 'mm':
rainrate_vt = weewx.units.ValueTuple(rainrate_vt.value, 'mm_per_hour', 'group_rainrate')
_item['val'] = weewx.units.convert(rainrate_vt,
weewx.units.std_groups[self.unit_system]['group_rainrate']).value
This works for me now.
You are welcome to comment if you have any ideas or other suggestions.