Skip to content

Socket work#15

Draft
mitch-gilmore wants to merge 11 commits intoBostonUniversitySeniorDesign:mainfrom
mitch-gilmore:socket_work
Draft

Socket work#15
mitch-gilmore wants to merge 11 commits intoBostonUniversitySeniorDesign:mainfrom
mitch-gilmore:socket_work

Conversation

@mitch-gilmore
Copy link
Collaborator

This PR separates the ML and Socket work into a separate PRs to make reviews faster.

dayannat and others added 8 commits April 1, 2023 15:33
jonathanm-12
jonathanm-12 previously approved these changes Apr 20, 2023
Copy link
Collaborator

@jonathanm-12 jonathanm-12 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks fine as it uses a simple TCP socket technique. The server_socket.py file serves as an effective intermediary between the three Python programs in our project.

@mitch-gilmore
Copy link
Collaborator Author

mitch-gilmore commented Apr 20, 2023

@dayannat @jonathanm-12 Is the server_socket.py file needed or just written for the latest demo?

@jonathanm-12
Copy link
Collaborator

jonathanm-12 commented Apr 20, 2023

@dayannat @jonathanm-12 Is the server_socket.py file needed or just written for the latest demo?

it will be needed

@mgilmore42

@mitch-gilmore
Copy link
Collaborator Author

@jonathanm-12

I guess I'm not understanding its utility. Can you please expand? My impression was the clients/servers would need to be embedded into the 3 parts (boardStreamer, ML, Virtual Environment). Like so..

boardStreamer ----(TCP)---> ML ----(TCP)---> Virtual Environment

Where boardStreamer serves to ML. ML is a client of boardStreamer and a server of Virtual Environment. And Virtual Environment is purely a client of ML. Similar to what was added to boardStreamer/__main__.py around line 100.

  1. I this intuition incorrect?
  2. If this it true how does an additional script fit into the pipeline?

To me it looks like just a demo to capture the data and acts purely as a client (against its name). Please explain where my understanding of its utility diverges from your understanding or how my understanding can be reconciled with your own.

@mitch-gilmore
Copy link
Collaborator Author

@jonathanm-12 I removed the file for now until it utility can be better explained/defended. I also changed the port assignment to use the command-line argument instead of being hard coded.

@jonathanm-12
Copy link
Collaborator

Will approve once I see that this can work in sync with ML and virtual environment.

@jonathanm-12 jonathanm-12 marked this pull request as draft May 1, 2023 03:04
@dayannat
Copy link
Collaborator

dayannat commented May 1, 2023

@jonathanm-12

I guess I'm not understanding its utility. Can you please expand? My impression was the clients/servers would need to be embedded into the 3 parts (boardStreamer, ML, Virtual Environment). Like so..

boardStreamer ----(TCP)---> ML ----(TCP)---> Virtual Environment

Where boardStreamer serves to ML. ML is a client of boardStreamer and a server of Virtual Environment. And Virtual Environment is purely a client of ML. Similar to what was added to boardStreamer/__main__.py around line 100.

  1. I this intuition incorrect?
  2. If this it true how does an additional script fit into the pipeline?

To me it looks like just a demo to capture the data and acts purely as a client (against its name). Please explain where my understanding of its utility diverges from your understanding or how my understanding can be reconciled with your own.

This was meant to be a demo for the final prototype testing. As there was no ML model existing at the time, there could be no closed connection. Therefore, the purpose was to prove functionality of the socket programming. From here, what's left is to add sockets through the ML model that will receive data from the board and output the predictive results to the virtual environment.

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

Labels

enhancement New feature or request needs review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants