First
pm25_2. You typically see WeeWX displaying a numeric field with many decimal places when WeeWX either (1) does not know what unit group a particular observation belongs to (in other words WeeWX does not know if this is a temperature or a speed etc so it just displays the data as stored internally and with no unit label) or (2) does not know how to format the field. In this case I am betting the former, since earlier we were talking about adding new fields to the database. There is another step - telling WeeWX what unit group the new field belongs to - I should have mentioned this in my earlier post. The relevant part of the Customisation Guide is the section
Assigning a unit group. In this case the pm25 fields belong to the
group_concentration unit group (refer to the
Unit groups, members and options table). To assign
pm25_2 to the
group_concentration unit group you need to edit
extensions.py (it will be in either
/home/weewx/bin/user/ or
/usr/share/weewx/user/ depending on your WeeWX install) and add the following lines:
import weewx.units
weewx.units.obs_group_dict['pm25_2'] = 'group_concentration'
Save extensions.py and restart WeeWX. On the next report cycle you should now see pm25_2 being formatted as per the default concentration formats.
On to soil moisture. The default units used by WeeWX for soil moisture is the centibar, due largely to this being the units used by Davis station for soil moisture. Ecowitt on the other hand reports soil moisture as a percent. Both centibar and percent use a range of 0 (or 1) to 100, though I understand there is no direct correlation between the two. In any case, the numbers are fine but the displayed units are not. In your case you have a couple of options:
1. you can change the unit group for the soil moisture fields of interest from group_moisture to group_percent
2. you can change the unit label for centibar from cb to %
I favour the former as that way you are only changing the sensor data for the sensors of interest. If you choose the latter you are effectively changing the units for all soil moisture sensors including any you might add in the future. Plus with (2) WeeWX still considers soil moisture to be in centibars (even though it is not for your sensors) it is just displaying a different unit label.
To change unit groups for your sensors you need to add a few more lines to extensions.py (just like for pm25_2), something like the highlighted lines:
import weewx.units
weewx.units.obs_group_dict['pm25_2'] = 'group_concentration'
weewx.units.obs_group_dict['soilMoist1'] = 'group_percent'
weewx.units.obs_group_dict['soilMoist2'] = 'group_percent'
weewx.units.obs_group_dict['soilMoist3'] = 'group_percent'
weewx.units.obs_group_dict['soilMoist4'] = 'group_percent'
Again a change to extensions.py will require a WeeWX restart to take effect and the change should be evident on the next report cycle.