Skip to content

Errors & discrepancies - serial menu vs. web page form. Simplify to improve usability. #230

@doug-foster

Description

@doug-foster

Subject of the issue

Organization, content, and location for EVK settings differ between serial menus and the web config page. Some field definitions have errors & discrepancies; some similar fields have non-matching values.

Your workbench

  • EVK
  • release_candidate branch - 2024-04-05@14-43-51 - RTK_Everywhere_rc

Steps to reproduce

Compare the serial menu and the web menu for any given state of the EVK

Expected behavior

A user should have one source of truth for how to configure the device. If presented with multiple sources - e.g. different menus with different content, organization, and values - the user can be confused on how to proceed.

Actual behavior

See attached zip file for snapshots of errors & comparisons between the two menu systems.

Suggested change

I suggest refactoring the configuration process. This would be a significant change, but hopefully a new web form could reuse code from the current web page.

  1. Use only one method - a web form on a web page - for configuration.
  2. If a serial menu is needed, keep functionality to a minimum. Do not duplicate the web-based config method.
  3. Group & organize configuration settings by user perspective, not a programming viewpoint.
    See below and attachment for a possible solution.
  4. Web-based configuration can be contained within a single HTML/CSS/JS page. Only a browser is required to run the JS; an http server is not needed.
  5. Generate/read all setting values as JSON formatted text rather than line-by-line "item=value."
  6. Transfer JSON data between the browser and device using either a) copy/paste via a serial port, or b) streaming over TCP.

Discussion

At Cisco I learned customers want to quickly grasp what device settings are available, what they do, and how to change them. This initial exploration can either greatly impress or discourage a new user.

As a new EVK user, I was surprised at how different the serial and web menus were. I found the serial menu quite confusing. I did find the web page (once I could get to it after WiFi & Eth config were fixed) much easier to understand. Tooltip hints were a big help.

Every user has access to a web browser. Web-based configuration is more functional, powerful, and intuitive than a serial terminal interface. One configuration method would be easier to maintain & support.

Suggested organization

The snapshot below references fields on the web config page (some serial menu fields may be missing). View the attached txt file "suggested reorganization.zip" in VS Code; the tabbed indents allow you to collapse/expand sections similar to how a web page with form fields & accordions might work. Not complete, but it presents an idea for a different way to organization the settings.

suggested reorganization

suggested reorganization.zip

menu_errors-discrepancies-observations.zip

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions