Skip to content

Trace Path tool always sends 1-byte hash path trace packet, regardless of selected Path Size setting being set to 2-byte or 4-byte #2832

Description

@findiggity

Description

Using the Trace Path tool and selecting a Path Size of 2-bytes or 4-bytes, the app sends a packet with a 1-byte hash path size. This appears to defeat the purpose of the setting and causes false positives if the user is using the tool to test whether repeaters correctly handle packets with longer hash paths. The setting is being respected for the UI when inputting the desired trace path, but is not being respected in the construction of the trace path packet sent via the companion device.

Steps to reproduce

  1. Open Tools, Trace Path - Manual or Trace Path - Using Map
  2. Set Path Size to 2-byte or 4-byte
  3. Set a path that includes a repeater on old firmware that drops packets with 2-byte or 4-byte hash path size.
  4. Run trace
  5. Observe successful trace result in Meshcore app
  6. Observe that the sent trace packet is 1-byte hash path size

Expected behaviour

  • App should send a trace packet with hash path sizing matching the Path Size setting.
  • If user's chosen path includes a repeater that drops packets with 2-byte or 4-byte hash path size, the trace path should fail and show as a timeout error in the Meshcore app.

Actual behaviour

  • App sends a packet with hash path size of 1-byte, regardless of the Path Size setting.
  • All repeaters in chosen path repeat the packet, including a repeater that would otherwise drop packets with 2-byte or 4-byte hash path size.
  • The user is shown a successful trace path result and will assume a false positive if they are testing for successful 2-byte or 4-byte relaying.

Environment

  • Meshcore app version: v1.45.0
  • Device: Wismesh Tag, connected via BLE

Suggested fix

Modify packet construction in the Trace Path tool to use the user selected Path Size setting when building the hash path field.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions