Wifi Logger for Davis weather stations!

For the longest time I’ve been trying to find a way to get data off of my Davis weather station without spending a fortune on their modules.

Yesterday I stumbled across the Wifi Logger, built on a ESP-12S and is installed in the data logger port of the Davis base station.

http://wifilogger.net/
https://www.wxforum.net/index.php?topic=34312.0

I ordered one yesterday and I’m waiting for it to arrive.

Apparently it works with MQTT so I’ll see if I can get it working with Home Assistant.

Anyone else out there have one of these or a Davis weather station?

2 Likes

Hi! I have a Davis Vantage Vue, but not the Logger.
Very keen to hear how it works for you!

Got it today and the MQTT setting exports data in Json. However it seems temperatures are exported in F, I would prefer C. I’ll post on the other forum and ask the developer.

Here is what the MQTT data looks like, will have to get this formatted for Homeassistant

{
	"stnmod": 17,
	"ver": 2.12,
	"loctime": 1547581760,
	"utctime": 1547599760,
	"tzone": 10,
	"units": 190,
	"tempout": "24.6",
	"humout": "90",
	"tempin": "75.6",
	"humin": "31",
	"windspd": "0.0",
	"winddir": "132",
	"windavg2": "0.0",
	"windavg10": "0.0",
	"gust": "0.0",
	"gustdir": "360",
	"bar": "29.998",
	"bartr": "60",
	"dew": "22",
	"cdew": "22.1",
	"chill": "25",
	"heat": "25",
	"thsw": "---",
	"uv": "---",
	"solar": "---",
	"rainr": "0.00",
	"storm": "0.00",
	"rain15": "0.00",
	"rain1h": "0.00",
	"raind": "0.00",
	"rain24": "0.00",
	"rainmon": "0.66",
	"rainyear": "0.66",
	"etday": "0.00",
	"etmon": "0.00",
	"etyear": "0.00",
	"xt": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"xlt": [
		"---",
		"---",
		"---",
		"---"
	],
	"xst": [
		"---",
		"---",
		"---",
		"---"
	],
	"xh": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"xsm": [
		"---",
		"---",
		"---",
		"---"
	],
	"xlw": [
		"---",
		"---",
		"---",
		"0"
	],
	"bat": "3.67",
	"trbat": "0",
	"foreico": "0",
	"forrule": "---",
	"sunrt": "7:29",
	"sunst": "16:37",
	"hlbar": [
		"29.997",
		"30.007",
		"19:44",
		"19:30",
		"30.644",
		"29.276",
		"30.644",
		"29.276"
	],
	"hlwind": [
		"---",
		"0.0",
		"---",
		"---",
		"21.0",
		"---",
		"21.0",
		"---"
	],
	"hltempin": [
		"73.5",
		"76.0",
		"19:30",
		"19:44",
		"84.0",
		"64.0",
		"84.0",
		"64.0"
	],
	"hlhumin": [
		"31",
		"38",
		"19:41",
		"19:30",
		"65",
		"30",
		"65",
		"30"
	],
	"hltempout": [
		"24.6",
		"24.6",
		"19:35",
		"19:35",
		"164.0",
		"-90.0",
		"164.0",
		"-90.0"
	],
	"hlhumout": [
		"90",
		"90",
		"19:36",
		"19:36",
		"100",
		"58",
		"100",
		"58"
	],
	"hldew": [
		"22",
		"22",
		"19:35",
		"19:35",
		"134",
		"-95",
		"134",
		"-95"
	],
	"hlchill": [
		"25",
		"---",
		"19:35",
		"---",
		"---",
		"25",
		"---",
		"18"
	],
	"hlheat": [
		"---",
		"25",
		"---",
		"19:35",
		"164",
		"---",
		"25",
		"---"
	],
	"hlthsw": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlsolar": [
		"---",
		"0",
		"---",
		"---",
		"0",
		"---",
		"0",
		"---"
	],
	"hluv": [
		"---",
		"0.0",
		"---",
		"---",
		"0.0",
		"---",
		"0.0",
		"---"
	],
	"hlrainr": [
		"0.00",
		"0.00",
		"---",
		"---",
		"34.89",
		"---",
		"34.89",
		"---"
	],
	"hlxt0": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxt1": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxt2": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxt3": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxt4": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxt5": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxt6": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxh0": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxh1": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxh2": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxh3": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxh4": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxh5": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxh6": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxst0": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxst1": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxst2": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxst3": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlt0": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlt1": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlt2": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlt3": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxsm0": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxsm1": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxsm2": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxsm3": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlw0": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlw1": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlw2": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	],
	"hlxlw3": [
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---",
		"---"
	]
}

Cool! Thanks for the feedback

Here it is so far, needs work though to convert the imperial units to metric. According to the author he is getting the data directly from the unit and sending them as is.

https://www.wxforum.net/index.php?topic=34312.msg368020#msg368020

image

# --------------------------------------------------------------------------------
# Davis Weather
- platform: mqtt
  name: "Davis Battery"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: 'V'
  value_template: "{{ value_json.bat }}"
  icon: mdi:battery-charging-wireless
- platform: mqtt
  name: "Davis Outside Temperature"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: '°F'
  value_template: "{{ value_json.tempout }}"
- platform: mqtt
  name: "Davis Outside Humidity"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: '%'
  value_template: "{{ value_json.humout }}"
  icon: mdi:water-percent
- platform: mqtt
  name: "Davis Inside Temperature"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: '°F'
  value_template: "{{ value_json.tempin }}"
- platform: mqtt
  name: "Davis Inside Humidity"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: '%'
  value_template: "{{ value_json.humin }}"
  icon: mdi:water-percent
- platform: mqtt
  name: "Davis Wind Speed"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: 'mph'
  value_template: "{{ value_json.windspd }}"
  icon: mdi:weather-windy
- platform: mqtt
  name: "Davis Wind Direction"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: '°'
  value_template: "{{ value_json.winddir }}"
  icon: mdi:compass
- platform: mqtt
  name: "Davis 2 Min Avg Wind Speed"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: 'mph'
  value_template: "{{ value_json.windavg2 }}"
  icon: mdi:weather-windy
- platform: mqtt
  name: "Davis 10 Min Avg Wind Speed"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: 'mph'
  value_template: "{{ value_json.windavg10 }}"
  icon: mdi:weather-windy
- platform: mqtt
  name: "Davis 10 Min Wind Gust"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: 'mph'
  value_template: "{{ value_json.gust }}"
  icon: mdi:weather-windy-variant
- platform: mqtt
  name: "Davis Wind Gust Direction"
  state_topic: "/davis/wflexp.json"
  unit_of_measurement: '°'
  value_template: "{{ value_json.gustdir }}"
  icon: mdi:compass

Yes! This could be neat. Thanks!

I was just down in my stuffy not well ventilated basement thinking… If I knew the outside humidity and temperature, I could run a fan to turn over the air, if it’s not too muggy out.

Ooohh, I hoped it was something I could make with an espxx. I wonder if there’s any info on how to interface with the Davis weatherstation data port.