User Configuration
Saving and loading user configuration with Koheron V1 firmware.Koheron products currently ship with firmware V0.x by default. Firmware V1 is under active development and is not publicly available yet.
Contact us if you would like early access or want to evaluate V1 firmware on your device.
Most operating parameters can be changed through the serial interface. A changed value is applied immediately, but it is not restored after restart unless it is saved and the saved configuration is loaded at boot.
Use save after changing supported settings that should be restored at the next startup. Do not assume that every setting is saved; check the relevant command page when persistence is command-specific.
Defaults and saved configuration
V1 firmware has product defaults and an optional saved EEPROM configuration.
- Product defaults are built into the product firmware and are used when the saved configuration is not loaded.
- The saved EEPROM configuration is written by
saveand includes a configuration CRC. ecrcreports the saved configuration CRC.
Startup behavior
At startup, the CFG switch selects whether the firmware loads the saved EEPROM configuration.
| CFG switch | Startup behavior |
|---|---|
1 |
Load the saved EEPROM configuration if its CRC is valid. |
0 |
Ignore the saved EEPROM configuration and start from the product defaults. |
When the CFG switch is set to 1, the firmware restores the saved EEPROM configuration only if the stored configuration CRC is valid. If the CRC is erased, missing, or mismatched, the firmware may report EEPROM_CONFIG_CRC and keeps the product default configuration active instead.
When the CFG switch is set to 0, the firmware always starts from the product default configuration. The saved EEPROM configuration is not erased, but it is not loaded for that startup.
Saving configuration
save stores supported operating settings in EEPROM and returns the written configuration CRC.
>> save
A1B2
>> ecrc
A1B2
save is a no-argument write command and requires advanced mode. See User Modes for access rules.
Common settings saved by save include:
- UART baud rate, which is effective at the next boot.
- Board ID.
- UART multiplexing state.
- Error mask.
- User mode.
- Sequencer enable state.
- Sequencer registers.
- Binary status mask.
Product-specific settings may also be saved by save. The exact set depends on the product firmware and command. Use the generated API command reference when a script depends on persistence for a specific setting.
Default common settings
When the firmware starts from product defaults, common settings are reset to their defaults:
| Setting | Default |
|---|---|
| UART baud rate | 115200 |
| Board ID | 42 |
| UART multiplexing | 0 disabled |
| Error mask | ffffffff |
| User mode | 2 advanced |
| Sequencer state | 0 stopped |
| Sequencer registers | all registers cleared to 0 |
| Binary status mask | ffffffff |
Product-specific settings also return to their firmware defaults.
Typical workflow
- Set the CFG switch to
1if saved configuration should be loaded at startup. - Change operating settings through the serial interface.
- Run
save. - Record
ecrcif host software tracks the saved configuration state. - Restart the device.
- Confirm that the expected settings were restored.
If the device starts from defaults and reports EEPROM_CONFIG_CRC, the saved configuration was not accepted. Reconfigure the device, run save, and restart with the CFG switch set to 1.