Factory Provisioning via SSH
This page describes the SSH-based End-of-Line (EOL) provisioning workflow.
The SSH approach provides direct access to the controller and its configuration. All changes are made by writing files to the persistency directory, allowing full control over configuration behavior.
This method is well-suited for:
- quick EOL setup without additional tooling
- workflows that combine configuration and firmware updates
Because changes are applied directly, this approach offers no safeguards against misconfiguration and requires careful handling.
1. Audience and assumptions
We assume the following:
- you are a mid- or senior-level software engineer with linux command line knowledge
- you are working on Windows 11
- you are using PowerShell
- SSH access to the controller is already available
The SSH-based provisioning method will work on other host operating systems and with other terminal applications as well, but the instructions in this documentation are tailored to the above assumptions for simplicity. Minor adjustments may be needed.
2. How it works
All non-default configuration is stored in:
/home/charge/persistency
This means, that any changes made to the Controller's settings - no matter the origin (UI, OCPP, other) - are visible in the persistency folder.
Each setting is represented by its own file.
A file may contain:
<config value>
<(optional) firmware version identifier>
For EOL purposes, one-line files are sufficient.
To see which filename belongs to which setting, refer to the parameter reference here
3. Applying changes
- Changes in
/home/charge/persistencytake effect immediately. - Some settings also require a restart to take effect.
- Always run
syncafter making changes to ensure they are persistent.
To see which settings require a restart, see here
To understand master-slave scoping, see here
4. General workflow
- Connect via SSH
- Go to
/home/charge/persistency - Write or update the required files
- Run
sync - Restart the controller if required
- Verify changes
5. Further reading
For guided walkthroughs, see Factory Provisioning via SSH Tutorial.
For task-based commands and reusable procedures, see Factory Provisioning via SSH Cookbook.