save does not preserve pid_engaged #17

Closed
opened 2020-12-05 09:47:48 +08:00 by jbqubit · 3 comments
Contributor

Expectation: Last saved state is loaded upon power-on. Temperature servo continues after power interruption.

Observation: Many parameters from saved state are preserved after power cycle but pid_engaged status is not. It is reset to false.

Expectation: Last saved state is loaded upon power-on. Temperature servo continues after power interruption. Observation: Many parameters from saved state are preserved after power cycle but ```pid_engaged``` status is not. It is reset to ```false```.

I did not expect the device to be operated without control.

I need some time to make room in the config serialization because we already max out the available 128 bytes of EEPROM.

I did not expect the device to be operated without control. I need some time to make room in the config serialization because we already max out the available 128 bytes of EEPROM.
Author
Contributor

Fully autonomous operation is highly desirable. Once initial configuration is complete it will be rare to work with Thermostat interactively. Ideally this recovers after power failure and continue servoing.

Fully autonomous operation is highly desirable. Once initial configuration is complete it will be rare to work with Thermostat interactively. Ideally this recovers after power failure and continue servoing.
Owner

There's also the option of ignoring the EEPROM and storing into the flash, like it's done in ARTIQ:
https://github.com/m-labs/artiq/blob/master/artiq/firmware/libboard_misoc/config.rs

This code implements a simple key-value store that minimizes the number of times the flash sector is erased.

@occheung may have looked into this on STM32 already. I can see this being used on multiple boards, so maybe we should split it from ARTIQ and make it a separate library.

There's also the option of ignoring the EEPROM and storing into the flash, like it's done in ARTIQ: https://github.com/m-labs/artiq/blob/master/artiq/firmware/libboard_misoc/config.rs This code implements a simple key-value store that minimizes the number of times the flash sector is erased. @occheung may have looked into this on STM32 already. I can see this being used on multiple boards, so maybe we should split it from ARTIQ and make it a separate library.
astro closed this issue 2020-12-14 06:21:09 +08:00
Sign in to join this conversation.
No Label
No Milestone
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: M-Labs/thermostat#17
No description provided.