Welcome to F97.BE!
Python, Photons, and Predictions.
Updates
9 September 2025
Changes to the AI forecast: Instead of trying to calibrate with uncertain future weather data, the system now looks only at days where we already know the outcome. It learns from real production numbers recorded by the Fronius inverter, matched against verified weather measurements and proven model predictions. This way, calibration is built on solid ground rather than unreliable forecasts.
7 September 2025
The GTI Forecast has been improved to better reflect real sun and weather conditions, staying closer to what the panels and inverter can actually deliver, which also makes the Fusion Forecast more reliable.
5 September 2025
I added an updated Fusion Forecast Dashboard:
- Compare daily actuals with three forecasts and see which model was closest on each day.
- Accuracy stats include mean absolute error, median absolute error, and 90th/95th percentile absolute error.
- A regime view groups days into clear, mixed, or overcast and shows how each model behaves in these conditions.
- A signed error timeline reveals whether a model tends to overestimate or underestimate over time.
- The calibration plot charts actual versus predicted values with an optional all-models overlay and a y = x reference.
- An interactive table lists every day with actuals, forecasts, absolute errors, error-margin percentage, and the closest model.
Open the dashboard at f97.be/fusion_comparison.html.
3 September 2025
Revisiting our AT-mobimeter design 25 years later feels like seeing seedlings bloom into modern smart mobility. What began over cake, coffee, and long conversations in Zeelandic-Flanders with Rein and my father has now become part of the global debate on fair road pricing. If you want to read how three friends across generations imagined a system that was transparent, fair, and decades ahead of its time, head here: The AT Mobimeter.
3 September 2025
New article: How Climate Change Skews Solar Energy Production and How Fusion Forecasting Can Help looks at how extreme weather, rising temperatures, shifting seasonal patterns, and aerosols are changing the reliability of solar energy. It also introduces the Fusion Forecast approach, which combines physical GTI models with AI-based learning to create a more adaptive and resilient way of predicting solar production in an era of climate uncertainty. Deutsche Fassung: Wie der Klimawandel die Solarenergieproduktion verzerrt.
1 September 2025
In der Gemeinde Raeren stehen zahlreiche Obstbäume auf öffentlichen Flächen, die allen Bürgerinnen und Bürgern zur Verfügung stehen. Auf einer interaktiven Karte habe ich die Standorte dieser Bäume mit Art und Anzahl visualisiert. Klickt einfach auf die grünen Pins, um mehr zu erfahren und nutzt gerne das Angebot der Gemeinde, Obst in haushaltsüblichen Mengen zu ernten. Hier geht es zur Karte der Obstbäume.
30 August 2025
I analyzed 137 days of complete data and compared GTI, AI, and Fusion forecasts after removing outliers. AI wins slightly more often, but Fusion shows tighter error distributions and fewer big misses. Read the full post here: Who Wins When Outliers Are Removed Fusion AI or GTI.
29 August 2025
From GTI to Fusion. Read my latest article From GTI to Fusion: Why Two Forecasts Are Better Than One. It explains the strengths and weaknesses of GTI and AI forecasts and shows how the Fusion Forecast balances both. With climate change bringing warmer but also hazier and less predictable weather, Fusion provides a reliable way to adapt before AI models have enough years of new data to retrain.
29 August 2025
Fusion Forecast Reference Implementation and Instructions are now available for download.
- reference.py: documented reference implementation of the Fusion Forecast blend with train, calibrate, and predict.
- instructions.pdf: step by step guide.
The reference uses your daily AI and GTI totals, learns weights and an intercept, falls back to 70/30 when data is sparse, and supports median ratio calibration. Questions or suggestions: erik@f97.io.
27 August 2025
I have written a short scientific paper that documents the background and design of the Fusion forecast. The paper explains why I moved from physics-based GTI forecasting, to AI, then to a Hybrid blend, and finally to Fusion, which learns the best balance between models and applies online calibration. It also outlines the mathematical formulation and the reasoning behind this approach.
Download the paper: Fusion Forecasting for Residential PV: An Adaptive Regression Blend of AI and GTI with Online Calibration
25 August 2025
I have added the new Hybrid forecast to the system. It blends 70% of the AI forecast with 30% of the GTI forecast, combining the accuracy of the machine learning model with the physical stability of the irradiance-based model. This way the daily prediction stays closer to reality, especially on unusual weather days. More information on the blog.
25 August 2025
Due to an error, the AI forecast was not originally trained over all features present in my weather_energy_dataset.csv
. This has now been fixed. By using the full set of features the model no longer “guesses in the dark” when conditions deviate from the norm. Instead, it takes a more holistic view of the weather system, leading to forecasts that are not only more robust but also less prone to extreme overshooting or undershooting.
Alongside this, the long-neglected calibration logic has finally been implemented. Previously, the system silently defaulted to a no-op with a = 1.0 and b = 0.0, meaning the raw model output was used as-is, even if it consistently overshot. The new approach applies a per-day ratio-based correction between predicted and actual production. This ensures that if the AI tends to overshoot, forecasts are scaled down accordingly, while persistent undershooting is nudged upwards. The calibration adapts dynamically to recent days, reflecting current seasonal and weather patterns, and keeping the forecast anchored to reality. The result is a more stable and trustworthy prediction pipeline which learns not just from the dataset, but also from its own recent mistakes.
19 August 2025
Ik heb een eerste versie van De Zalige Zoekmachine online gezet: een experimentele zoekmachine voor Suske en Wiske die probeert te reageren op volledige zinnen. Voorbeeld: albums spelend in Antwerpen met het Steen
of zonder Sidonia
. De zoekmachine gebruikt gegevens uit Wikipedia en bevindt zich nog in een extreem bèta-fase. Niet alle albums bevatten al volledige informatie en de logica wordt nog verder verfijnd. Je vindt hem hier: De Zalige Zoekmachine.
17 August 2025
Published a new blog post titled Why I Use Data Diode Principles in My Network. It explains my three-zone architecture (cabled LAN, WiFi LAN, public-facing segment with router, web server, and VPN) and the unidirectional flow of sanitized JSON from the secure side to the web server. This approach keeps all processing inside the firewall and enables external monitoring without exposing internal systems.
14 August 2025
Fixed GTI value mismatch in Forecast Accuracy Comparison
: The table now reads GTI data from the correct forecast[YYYY-MM-DD].energy
field, ensuring today and future dates display the right values (e.g., 18.1 kWh instead of 41.01 kWh). Older historical rows are backfilled from the legacy production[]
array so past comparisons remain intact.
14 August 2025
Added a new explanatory page about how my solar forecasts are powered by real machine learning, not guesswork. It explains how production and weather data are collected, how AI models are trained and selected, and why this narrow AI matters for energy autonomy.
11 August 2025
Added a new “Charging Sessions – Last 12 Months” chart using updateChargingTrendsYearly()
. Improved “Total Energy per Month” by adding a single linear trend line over all data and a horizontal average line. Introduced an optional “Trend – Last 30 Days” chart with linear regression over the last 30 daily totals. Fixed the fetch flow for greater robustness by correcting the fetchWallboxData()
promise chain.
11 August 2025
Fixed two charts that were not displaying due to changes in fronius.json
. The “Daily PV-Input Power Flow over Time” and “Daily Production over Time” graphs now read from the new datapoints[YYYY-MM-DD]
structure, using ts
, p_pv
, and e_day_raw
values to calculate and plot production data correctly. The “Generation per Year” chart was updated to only include complete years with 12 months of data in its average and trend line, preventing distortion from incomplete years.
5 June 2025
In response to recent reports by the BSI and German media, I wrote a detailed analysis on the alarming rise of cyberattacks against energy infrastructure. Based on my own experience in SMGW certification and real-world fieldwork, I argue why IT security — though expensive — is absolutely essential to keep the lights on in the digital age. Read the full post: Verwundbare Versorgung.
5 May 2025
I’ve published a detailed blog post on improving the accuracy of my GTI solar energy forecasts by fine-tuning the GTI-based model. The update explains changes to cloud correction, temperature factors, and GTI calibration — all backed by real production data. Read the full post: Forecasting Smarter.