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

Issue with Handling Rapid Sequential Requests #7

Open
GreenWizard2015 opened this issue Jan 28, 2024 · 0 comments
Open

Issue with Handling Rapid Sequential Requests #7

GreenWizard2015 opened this issue Jan 28, 2024 · 0 comments

Comments

@GreenWizard2015
Copy link
Collaborator

GreenWizard2015 commented Jan 28, 2024

Description:
The system occasionally fails to process rapid consecutive requests from the UI, particularly evident when rapidly clicking the pouring button or sending update and command requests almost simultaneously. This issue becomes critical if the 'stop' command request gets blocked, leading to uncontrolled operation.

Potential Solutions:

  1. Implement a queue system for incoming requests to ensure sequential processing.
  2. Modify connection handling to allow processing of multiple requests simultaneously.
  3. Explore using lower-level parts of the networking library for better concurrent client management.
  4. As a temporary fix, ensure the UI repeatedly sends the 'stop' command until the server acknowledges. Implemented in this PR and fix this issue on client side.

Code Location:
The request processing code can be found in the RemoteControl.cpp file, specifically within the process() method.

Relevant Links:

  • Discussion on handling multiple TCP clients on Arduino: Arduino Forum
  • Challenges with multiple client connections on Arduino WiFi shield: Arduino Forum
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

No branches or pull requests

1 participant