Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Toggles for components, configurable by motor #2000

Open
woferry opened this issue Jan 27, 2023 · 1 comment
Open

[Feature Request] Toggles for components, configurable by motor #2000

woferry opened this issue Jan 27, 2023 · 1 comment

Comments

@woferry
Copy link

woferry commented Jan 27, 2023

Since I like to have accurate sims for each motor I fly, and all of my rockets have some 'configurable bits', be it different altimeter bay setups, whether I fly an AltimeterThree for more data collection or GPS tracker, or use a motor mount adapter or threaded rod for MD motor retention, there are always extra parts that may apply to some flights but not others. Sometimes I'm intentionally adding mass (or choosing heavier options of the above parts, like a longer motor adapter or a metal rod rather than nylon) to lower the altitude of a flight for cloudy conditions, etc. Today I have to find each component and set a mass override to "turn it on or off", though once you override a mass component to 0g it "forgets" the original mass specified for the component (I record the original mass in the component description so it's not lost, granted this behavior could be viewed as a separate bug). There is also no visual confirmation of what's on or off except for the mass override icon in the component list, but that could be a "real" mass override or simply setting the mass to 0.

It would be so much easier / more clear if each component could be given an option to present something like a checkbox in the component list (perhaps along the left edge?), so that one could easily toggle components on/off without having to edit/restore masses on each one, which requires multiple clicks and typing. So in the component configuration (perhaps only on mass components?) would be an option to enable the toggle, and when enabled a checkbox would appear in that row of the component list. Even better would be if each of these components configured with the toggle (not ALL components, ideally) could have their states captured along with a motor configuration, so that selecting that configuration would automatically change all of the toggles to the appropriate setting. And when simulating multiple motor configurations, it should consider the options associated with that motor configuration automatically, even though it wouldn't match the selected motor configuration.

It would also be nice if the visualization only showed the currently-enabled components, to reduce visual clutter.

Attaching an example .ork below. I had started out with specific components for the A3/mount, MD rod and A5438 adapter, but found it was too inconvenient to enable/disable each component separately, so I wound up just creating a single Mass Adjustment component for each flight. So you can see that all but the latest are disabled to reflect my latest flight, but I can still "turn off" the current adjustment via mass override and re-enable a previous adjustment and re-select that motor. Still, it would be nice to have a single row of checkboxes down the left than the moves-in-each-row override icons and having to click into and edit each component. And in my current setup the simulation is accurate for the one motor I have "configured" via all of the mass overrides, but all of the other motor configurations are less accurate since the wrong mass adjustment is being applied (sometimes its off by quite a bit, especially if it results in instability, which isn't a problem with this long/skinny rocket but has been troublesome on others with more marginal stability, which require the addition of nose weight for some motors).

The way I'd envision this, when selecting a motor configuration it would automatically configure (restore) all of the toggles. The user could change these settings, and if they changed motors in the pop-up (or upon close/quit) they'd be asked if they want to save their toggle changes. Switching to No Motor would still prompt to save for the old motor, but would just leave the toggles as they were from the last-selected motor. When creating a new motor configuration I guess it could either just copy the existing toggles to that motor, or perhaps start with everything unchecked (the former seems better to me). When configuring a new/existing component to present the toggle, I'd suggest it be enabled for the existing motor configuration but disabled for all other configurations (more complex would be to present a list of the motor configurations and an option to enable/disable for each one). Another thought I had was possibly adding a tab in the "Select a rocket motor" dialog (like next to "Show Details") that would present a list view of the components with toggles enabled (in the order they appear in the main list), to allow the boxes to be checked/unchecked here. This might create a tighter mental link to the motor configuration, but I think it would be wise to still visualize the enabled/disabled components in the main list (perhaps it could just grey-out disabled components and not visualize them), and being able to toggle the components without having go to into one or more dialogs still seems like a plus to me. Just throwing out ideas for consideration/discussion. Similarly I guess the component edit dialog could present a list of motor configurations in a tab.

In my experience I would probably still need a per-configuration "mass adjustment" component, as often times other adjustments are needed (like flying a larger case w/spacers, where OR's motor weight is not correct), but it would still be easier if that adjustment component could automatically turn on/off with the motor selection (and per-motor simulation) vs. how things work today.

Given the specific concern about accurate per-motor simulations, I grant that another option would be just allowing an overall mass/Cg override associated with each motor configuration, but I still feel like the above solution would be a better representation of the 'configurability' of a given rocket, and also help to create a BOM/parts list for each flight (help me remember which specific MD rod worked with a given motor, etc).

Bumbl-B_FG.ork.zip

@neilweinstock
Copy link
Contributor

See also #2263. The ability to attach enable/disable settings to motor configs seems extremely useful... but very much non-trivial to implement in a clear way. This is something we should think about. Perhaps an initial implementation where the enable/disable is global would be a good first step, and then the per-motor config option could be added later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants