Home.weather showing "F" but numbers in celsius

New install, I’ve set my unit system to Imperial. The weather widget is showing “F” but numbers in Celsius:


Any idea how to fix this?

did you restart?

Numerous times. I also tried adding into configuration.yaml:

homeassistant:
  unit_system: imperial

Restarted.

default:
  unit_system: imperial

Restarted.

None of them worked. It’s showing F, for Fahrenheit, but it’s showing Celsius numbers.

what is your weather source?

What ever is default. It was all set during the walk-thru on first install.

You know. I just realized this might actually be Fahrenheit. I just noticed a little nuance on the configuration screen:

Editor disabled because config stored in configuration.yaml.

The thing is, I actually never put anything in the configuration.yaml myself. Everything was default, from fresh install. It’s all the values I set from the install. No idea why that never translated into configuration.yaml.

I’ve added this block

homeassistant:
  # Location required to calculate the time the sun rises and sets
  latitude: # hidden
  longitude: #hidden
  elevation: 6200
  # Name of the location where Home Assistant is running
  name: Home
  # C for Celcius, F for Fahrenheit
  temperature_unit: F
  # Pick yours from here: http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
  time_zone: America/Denver
  unit_system: imperial

Rebooted. And it didn’t help.

I’ve changed my weather source to Dark Sky, and it’s reporting correctly. weather.home does not report correctly. It’s has the wrong location. Long/lat settings within homeassistant: aren’t affecting it’s outcomes.

That’s not a valid basic configuration attribute.

Did you override it in the darksky platform? If not, it will pull it from your config.

Oh, right. It didn’t. Huh. No matter, it was from an old configuration I found online. Fixed (removed - I did reboot to be safe).

Nope, here’s the configuration:

homeassistant:
  # Location required to calculate the time the sun rises and sets
  latitude: !secret latitude
  longitude: !secret longitude
  elevation: 6000
  name: Home
  time_zone: America/Denver
  unit_system: imperial

weather:
  - platform: darksky
    api_key: !secret darksky_key
    mode: daily

Side-by-side:

As you can see, weather.home still showing wrong location data.

I have no idea what component weather.home is coming from. Sorry man, not sure what to tell you. You need to figure out what component you are using for weather.home. Get that info and I can help you out.

I too have this issue. The weather.home, at initial hassio installation, is set to Neatherlands Weather Service. Setting the unit_system to imperial just seems to change the “C” to an “F”. I’ve done 2 complete reinstalls to verify I did the steps correctly.

Somewhere (no idea where) this got resolved for me. I’ve been using Darksky all this time. When I add the weather card now, it’s correctly showing in fahrenheit. I don’t know when or how it got fixed. Sorry,

It will change C to F and perform the calculation change. But if your sensor/device is incorrectly configured, it will convert incorrectly. E.g. If your device is configured as F but the result is C, the imperial units will not convert C to F because it already thinks its F.

@daxmick It is possible this was my issue. I didn’t realize elevation is supposed to be in meters not feet which wold dramatically change the climate in my area.

Check that?

I don’t think so. 22.6 * 9/5 + 32 = 72.68. Which is identical to the numbers posted in your side by side.

I’m guessing the configuration unit_of_measure for whatever weather used in for ‘Home’ was incorrectly configured as ºF when it should have been set to ºC. Which would have properly changed it to ºF for you.

During the initial login/setup when it asked for unit_system, time zone, and elevation I specifically remember it having “feet” next to elevation so I’m guessing that isn’t it.

6000 feet? You must be in Colorado. :sunglasses:. I’m in Idaho at 4000 feet.

I am having this same issue. I read through this entire thread and if there was a resolution, it’s not jumping out at me. (I’m in CO at ~4700 ft) Did anyone come up with a solution?

Home assistant, for some reason, by default uses the Norwegian weather service to set weather.home when you first set it up. Configure your own weather source instead.

Try dark sky or since you are in the us NWS.

1 Like

I’m switched to DarkSky for weather because of this. It could be why mine fixed itself without my realizing? Somewhere it set a “global” weather flag for DarkSky?

1 Like

Okay, guys. I’m really stupid here (learning)! I’ve read docs, etc. and can’t figure out how to set DarkSky, etc. as my weather server. :man_facepalming: