What FTW asked for
Keep the target and the command result visible. Core checks each command against the current site and equipment limits.
Current beta · Your hardware · Sourceful maintained
Make supported solar, batteries and car charging from different brands work together. FTW plans ahead, controls locally and shows what the equipment actually does.
Energyplan
When should the battery charge? What energy does the car need before departure? Energyplan weighs these needs together with electricity prices, tariffs, solar and household forecasts, battery state and efficiency.
Energyplan runs as a compiled local worker. It proposes a plan; FTW Core checks every proposal and keeps its own fallback. The worker never sends commands to hardware.
How planning and Core work together
Are we in control?
A command reply does not prove that power changed. The current beta shows whether a controlled device follows FTW, is waiting, is limited or needs attention.
Keep the target and the command result visible. Core checks each command against the current site and equipment limits.
Fresh readings show whether the device follows. Old or missing readings stay distinct from a measured response.
When independent measurements support it, Core confirms the physical change. The available proof depends on the device and its readings.
Core keeps safety and control on the box. Stale required site-meter data stops dispatch; an unavailable planner leaves Core's local fallback.
What changed in the betaYour equipment
Check your model, firmware and the functions that have been verified. A catalog entry alone does not prove that FTW can control a device.
Lua drivers connect supported meters, inverters and batteries. Each device keeps its own limits and capabilities.
Check the device catalogActive control needs a working site meter and a confirmed main fuse rating. FTW checks those limits against current measurements.
Prepare your setupUse charging goals and Charge now. OCPP 1.6J and 2.0.1 chargers connect to FTW's built-in server without a Lua driver. Verify the functions your charger supports.
OCPP charger setupGet running
2.x and 3.x will receive no further updates. Switch to the new 0.x line for current fixes and features. Do not install 3.x beta.
Old FTW on a Raspberry Pi? Use a second SD card. Keep the old card. Prepare the new one and swap cards before running install commands. Guided transfer of old settings and history is not ready.
Choose one path below. A refused native install is a stop point; do not try Docker next. Same-host Docker needs a planned switch with old Core stopped and MQTT preserved.
Architecture
FTW Core owns measurements, state, safety and device commands. Energyplan supplies forecasts and proposed plans through a defined contract. Both run on your own host. The implementation uses Go, Lua drivers and compiled Energyplan workers.
Signals in
Coordinated out
Site convention Above the driver boundary, positive power means energy flowing into the site. Every device speaks the same language.
Read the architectureBuild with it
FTW drivers are plain Lua files with capability-scoped access to Modbus, MQTT, HTTP, WebSocket and TCP. Edit a driver on the Pi and reload it without rebuilding the Go runtime.
function driver_init(config)
host.set_make("My Inverter")
host.mqtt_subscribe(config.topic)
end
function driver_poll()
local watts = read_power()
host.emit("battery", {
power_w = watts,
soc = read_soc()
})
return 1000
end
The community edition
Run FTW at home, study it and modify it. FTW's open-source code uses AGPLv3 with a narrow Energyplan exception. Share covered source when the license requires it. The proprietary Energyplan worker permits unmodified use with FTW only for your own private household. Free, noncommercial redistribution with FTW is allowed only for that household use, with its license and notices. Other use or distribution, including commercial use and operation for others, requires a separate written Sourceful license. Sourceful Energy develops and maintains FTW. Contributions are welcome: start with an issue, share a short Markdown proposal or send a focused PR with relevant test evidence.
FTW Community comes without official support, warranty, response times or service-level commitments. Help is best-effort from other users and maintainers.
Report a need, share a Markdown proposal or send a tested fix. Prefer an issue as the starting point. Our agentic-first approach uses clear problems and reproducible results that people and agents can review. Hardware claims need hardware evidence.
For organizations
AGPLv3 permits commercial use of the covered FTW code under its source-sharing terms. Commercial Energyplan use, OEM bundles and paid services involving the worker require a separate Sourceful license. Sourceful also offers deployment, maintenance and support.
Talk to SourcefulSupported deploymentsArchitecture, commissioning, upgrades and operational handover.
Integrations + OEMCustom hardware, certification, white-label and product delivery.
Fleet operationsProvisioning, observability and managed multi-site boundaries.
Long-term supportDefined maintenance, security handling, response times and SLA.
FTW Community
Run it. Explore it. Tell us what would make it better.