Hello I've recently purchased a Fineoffset WH25 which records temperature, humidity and pressure.
Luckly, it was recently added to RTL_433. If it helps anyone, I've written a parser for this sensor (see attached diff). Regards, John
721,762d720 < class FOWH25Packet(Packet): < # 2016-09-02 22:26:05 : Fine Offset Electronics, WH25 < # ID: 239 < # Temperature: 19.9 C < # Humidity: 78 % < # Pressure: 1007.9 hPa < < # {"time" : "2017-03-25 05:33:57", "model" : "Fine Offset Electronics, WH25", "id" : 239, "temperature_C" : 30.200, "humidity" : 68, "pressure" : 1008.000} < < IDENTIFIER = "Fine Offset Electronics, WH25" < PARSEINFO = { < 'ID': ['station_id', None, lambda x: int(x)], < 'Temperature': ['temperature', re.compile('([\d.-]+) C'), lambda x: float(x)], < 'Humidity': ['humidity', re.compile('([\d.]+) %'), lambda x: float(x)], < 'Pressure': ['pressure', re.compile('([\d.-]+) hPa'), lambda x: float(x)]} < < @staticmethod < def parse_text(ts, payload, lines): < pkt = dict() < pkt['dateTime'] = ts < pkt['usUnits'] = weewx.METRIC < pkt.update(Packet.parse_lines(lines, FOWH25Packet.PARSEINFO)) < return FOWH25Packet.insert_ids(pkt) < < @staticmethod < def parse_json(obj): < pkt = dict() < pkt['dateTime'] = Packet.parse_time(obj.get('time')) < pkt['usUnits'] = weewx.METRIC < pkt['station_id'] = obj.get('id') < pkt['temperature'] = Packet.get_float(obj, 'temperature_C') < pkt['humidity'] = Packet.get_float(obj, 'humidity') < pkt['pressure'] = Packet.get_float(obj, 'pressure') < return FOWH25Packet.insert_ids(pkt) < < < @staticmethod < def insert_ids(pkt): < station_id = pkt.pop('station_id', '0000') < pkt = Packet.add_identifiers(pkt, station_id, FOWH25Packet.__name__) < return pkt < 1272d1229 < FOWH25Packet,