Skip to content

Remote shell (WIP)#86

Open
Elan456 wants to merge 7 commits intomainfrom
remote-shell
Open

Remote shell (WIP)#86
Elan456 wants to merge 7 commits intomainfrom
remote-shell

Conversation

@Elan456
Copy link
Contributor

@Elan456 Elan456 commented Mar 12, 2026

Description

Summary of Changes

  • Telemetry can now take a CommandLine ptr
  • Telemetry can detect the sequence "ccc" on the input and switch into command mode.
  • In command mode, Telemetry will switch the given CommandLine to act upon the radio stream, creating a remote shell.
  • In command mode, Telemetry stops streaming telemetry data over the stream to allow a clean stream for the CommandLine.
  • Telemetry will exit command mode if the CommandLine doesn't receive any input bytes after a set timeout period
  • Add CommandLine::switchUART and CommandLine::useDefaultUART
  • CommandLine now tracks the timestamp of the last input it received
  • Refactor SerialSim preprocessor constants into their respective simulation sensor headers.

Motivation

  • The CommandLine shell is extremely useful for executing commands on MARTHA.
  • Currently, the command line only works over a USB connection.
  • With this, we can re-purpose the radio connection for command execution using our existing command line system.
  • We can also use this to do a full fidelity data dump over the radio.

Testing

Check all that apply:

  • I have added or modified tests to cover these changes.
  • I have manually tested the changes on the target device(s) or environment(s).
  • Existing tests were reviewed to ensure they still work as expected.
  • If tests were not added or modified, explain why:

    (Provide reasoning here)


Building

  • This change successfully builds in at least one of the following environments:
    • Native repo
    • Target device(s) (e.g., MARTHA)
  • If the build fails in any environment, explain why:

    (Provide reasoning here)


Checklist

  • My code follows the style guidelines of this project.
  • I have performed a self-review of my own code.
  • I have commented my code where necessary for clarity.
  • I have made corresponding updates to documentation (if applicable).

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

Successfully merging this pull request may close these issues.

1 participant