Skip to content

Ideas for redesign of badge software for next year #13

@smcameron

Description

@smcameron

Here are some ideas for redesigning the badge software for next year to perhaps escape some of the pain of the current system (or at least exchange it for a different pain.)

The current badge-main/menu system IMHO tries to do to much (has slowly evolved over time to do too much.) It does at least the following:

  1. Acts as a menu system.
  2. Acts as kind of "init" process controlling execution of various apps
  3. Acts as device driver for USB, infrared, etc.
  4. Acts as screen saver (the current code suffers greatly from complexity in this area.)
  5. Is pressed into service as the "schedule" app.
  6. Is pressed into service as the "settings" app.

I propose the new system should have the following properties:

  1. There should be an "init" process (roughly speaking) that controls execution of the "apps" and handles USB, infrared, etc. (much as the current system.) This part should be kept as simple as possible.
  2. The main menu should be just an app, not a part of this "init" process.
  3. The schedule should be just an app.
  4. The screen saver should be just an app.
  5. "Settings" should just be an app.
  6. There should be a mechanism for a "stack" of apps, with the topmost app running. The would allow, e.g. the "init" system to "push" the screensaver "on top of" a running app, and on exiting, the screensaver could be popped off, restoring the previously running app. The menu app could work by pushing apps on top of itself, and when apps "exit", they pop off, leaving the menu app running.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions