Weather prediction in Node Red

Agreed. I have set my NodeRED flow to get the prediction and email it to me at 1 minute past midnight (00:01) Reason being is that my cheap rate electricity tariff starts at 00:30 (to 05:30) so what % to charge the batteries to will be decided (as sent to Schedule 1)

Absolutely awful weather here. The API (vrm solar irradiance fc:) predicted a value of 0, yes Zero for today. Fingers crossed for some sun tomorrow but again it looks like a grid charge tomorrow morning :grimacing:

Well here’s an update. I’ve been logging data and I have to say that I’m getting back from the API call is absolute rubbish! …

15/2/25 - 139.67 - Overcast all day.
16/2/25 - 69.33 - Cloudy a.m., sunny p.m.
17/2/25 - 97.13 - Full sun all day.
18/2/25 - 110.45 - Full sun all day.

Here’s the flow that emails me the ‘prediction’ at 15 minutes past midnight.

Any thoughts out there???

Hi Diedrick,

Using the above I get a return of ‘solar yield forecast: false’

Here’s the flow…

image

What on earth am I missing here?

Best regards

Paul

You didn’t make a typo in your VRM token?

A good question. The token I created in ‘Active API access tokens >Add’ does actually facilitate the return of data when I use the Attribute ‘PV Solar Irradiance Forecast’ but not if I request ‘PV Solar Charge Yield Forecast’.
I’m using a EpEver solar charge controller but surely this has nothing to do with the error.

I’m proper stuck here

Further…
PV Inverter Yield Forecast - false
PV Solar Charger Yield Forecast - false
Solar Irradiance Forecast -114.9
Solar Yield Forecast - false

Hi Paul,

I write data from

to a file and this are the results

3:47:57 PM
5986
4:47:57 PM
5995
7:20:33 PM
6087
9:08:15 PM
6033
10:08:15 PM
6053
11:08:15 PM
6053
12:08:15 AM
2682
1:08:15 AM
2688
2:08:15 AM
2688
3:08:15 AM
2584
4:08:15 AM
2584
5:08:15 AM
2584
6:08:15 AM
2766
7:08:15 AM
2807
8:08:15 AM
2916
9:08:15 AM
2985
10:57:07 AM
3205
11:09:02 AM
3561

I wonder how many hours in advance the prediction is made of how i have to interprete this
if you look at
11:08:15 PM
6053

Hi, rz7k91

Here’s my test flow…


and here’s the properties for the VRM API Node …

Here’s the email I get sent at 10 mins passed midnight (forecast for the next 24 hours hopefully)
Thu Mar 13 2025 : Solar Irradiance for today : 108.45833333333333
Wed Mar 12 2025 : Solar Irradiance for today : 143.375
Tue Mar 11 2025 : Solar Irradiance for today : 104.45833333333333

It is starting to look like a fairly good prediction. I’ll have it update the battery charge levels soon)

Hi Paul,

thx for the information. looks good.

regards,
Koen

1 Like

Weather on the VRM is definitely not accurate.

I’ve found the forecast from the VRM using the API outstandingly accurate.

Here’s part of my code…

msg.payload = sr //msg.payload.totals.vrm_solar_irradiance_fc/10;

// SIF = Solar Irradiance Foreast.
if (msg.payload <= 5){ // SIF < less than 5%, Full charge 100%
msg1.payload = 100
}
if (msg.payload > 5) {
if (msg.payload <=10) { //SIF >5 and <=10, charge up to 40%
msg1.payload = 70}
}
if (msg.payload > 10) {
if (msg.payload <=20) { //SIF <10 and >=20, charge up to 20%
msg1.payload = 50}
}
if (msg.payload > 20) { //SIF >20, charge to the minimum allowed of 5%.
msg1.payload = 5
}

// This part builds the email I get and mostly ignore now…
msg2.payload = Sdate + ': Solar Irradiance value for today is ’ + sr + ’ so Setting Max charge to: ’ + msg1.payload + “%”;

1 Like

This is why I say it is not accurate.


22/07/2025 08:17.

Weather

Weather from WunderGround about 500m from me 22/07/2025 08:18 https://www.wunderground.com/dashboard/pws/IGROOT40

Hi Shaun,

I used the API for just solar irradiance and I found it very accurate. I had to do a bit of experimenting with values for the API call but my group of 6 that are using the code to predict how much to charge the batteries each night (or not) are amazed how good it is!
I’m not calling you out or the alike but I had to say how well it can work.

1 Like

Thank you Paul.

In hindsight, weather is a very broad term and the temperature I have observed on VRM is not accurate.