Skip to content

Update for periodic-locked state machines #239

@aidnem

Description

@aidnem

Purpose
State machine is getting a revamp to make it more dependable/reliable in team401/coppercore#148. This removes our ability to instantly transition, so any logic that depends on firing multiple triggers back to back will fail to work. This means that we have to actually permit transitions the way it's intended (e.g. instead of going OTF -> Joysticks -> Linear, we have to permit OTF -> Linear and handle that correctly).

Project Scope

  • Allow linear drive and OTF state to transition to each other
  • Give linear drive and OTF state a method to 'initialize for a target' that does whatever they do currently in onEntry. Then call it in onEntry with the current target, and each periodic check if the target has changed and call it again if it has. This is because currently, whenever target changes, we depend on leaving and re-entering linear drive or OTF state instantly to re-initialize for the new target.
  • Find all other places this is an issue and fix it (basically test the entire robot after that change is merged in coppercore)

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

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions