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

Prevent blanking of all outputs when manual programming #27

Merged
merged 2 commits into from
May 21, 2024

Conversation

dihm
Copy link
Collaborator

@dihm dihm commented Feb 14, 2024

This is a quick fix for #24. Since PIO and SIO can't share GPIO access, we need to reconfigure pins when switching between manual and buffered execution. A proper fix would be moving manual updates to the PIO, but because the prawnblaster insists on the outputs being low at start and end of execution anyway, we can tolerate a single reconfigure when switching between manual and buffered.

This change caches if the SIO has already reconfigured the GPIO. If it has, it skips reconfigure.

@dihm dihm added the bug Something isn't working label Feb 14, 2024
@dihm dihm self-assigned this Feb 14, 2024
@dihm dihm linked an issue May 21, 2024 that may be closed by this pull request
@dihm dihm merged commit c054589 into labscript-suite:master May 21, 2024
1 check passed
@dihm dihm deleted the improved_gpio_init branch May 21, 2024 17:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Manual control of outputs resets all output pins
1 participant