Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Redesign around stateless device #37

Open
mbtown01 opened this issue Jan 25, 2021 · 0 comments
Open

Redesign around stateless device #37

mbtown01 opened this issue Jan 25, 2021 · 0 comments

Comments

@mbtown01
Copy link
Owner

Currently, the FROSTI device has a database and stores all of it's state and configuration there.

To build a more resilient device, we need to make the SD card completely read-only. To do this, we need to at a high level:

  • Remove our dependence on a database, keeping all local state in memory (with some reasonable buffer, say 1 month)
  • Remove grafana from the device as it requires a database to communicate w/ the device
  • Add a single-page app (hosted by the main FROSTI process) that lets the user interact with the device
  • Build a back-end API that lets the device push measurements somewhere else to be analyzed

If done well, the back-end API could be on the web of hosted locally. 1st pass would just include pushing measurements so if FROSTI reboots it can pick up where it left off, even with historic data.

We can also potentially leverage the on-board EEPROM for storing things like

  • A device UUID for the web API
  • Last known configuration (which shouldn't take too much space, not sure if this is necessary)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant