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: Connecting to Robot in separate Network #2419

Closed
aurelschwitter opened this issue Oct 4, 2018 · 4 comments
Closed

Feature Request: Connecting to Robot in separate Network #2419

aurelschwitter opened this issue Oct 4, 2018 · 4 comments
Labels
app Affects the `app` project design feature Ticket is a feature request / PR introduces a feature workaround available This issue has a workaround available, though it isn't necessarily totally fixed.

Comments

@aurelschwitter
Copy link

overview

Feature Request: Add the ability to connect to the robot with a specified DNS Name / IP Address. We cannot put the robot in the same network as our clients. So the autodiscover of robots does not work.
Please also provide an overview of what ports are used, so we can open the firewall accordingly.

current behavior

The robot cannot be discovered.

steps to reproduce

Place robot in separate network.

expected behavior

Robot is discovered.

@mcous mcous added feature Ticket is a feature request / PR introduces a feature app Affects the `app` project workaround available This issue has a workaround available, though it isn't necessarily totally fixed. labels Oct 5, 2018
@mcous
Copy link
Contributor

mcous commented Oct 5, 2018

Hi @aurelschwitter, thanks for the request! We do have a way to enter a specific IP address, though we do not have the UI for it yet. To manually add an IP address to the app's search list:

  1. Open your app's configuration file, which is located at:
    • %APPDATA%\Opentrons\config.json on Windows
    • ~/.config/Opentrons/config.json on Linux
    • ~/Library/Application Support/Opentrons/config.json on macOS
  2. Find the discovery section, which should look like:
    "discovery": {
        "candidates": []
    }
  3. Add your IP address in quotes (and square brackets if it's IPv6) to the candidates array
    "discovery": {
        "candidates": ["192.168.1.2"]
    }
    or, for IPv6
    "discovery": {
        "candidates": ["[fe80::1c79:4078:7f67:95ed]"]
    }

Assuming your network is set up to properly route requests from one network to the other, the robot should appear in the app once the app is able to confirm that it responds to health checks.

To answer your other question, our app communicates with the robot over port 31950. I will check with the support team to make sure that gets into our support documentation if it is not there already.

If you're at all curious as to what other configuration options are available, they are all documented here!

@aurelschwitter
Copy link
Author

Hi @mcous

Thank you for clarifying, it works well when using the IP Address in the config file.
However, it would be great if there's also a UI button for connecting to an IP address.

Thank you,
Aurel

@umbhau umbhau added the design label Oct 25, 2018
@mcous
Copy link
Contributor

mcous commented Nov 28, 2018

Ping @pantslakz:

As a user who is able to connect to my robot over USB-to-ethernet (and connect the robot to Wi-Fi / obtain the robot's IP and MAC addresses) but who has a Wi-Fi network that does not support automatic discovery, I would like to tell my app to attempt to find a robot at that known address even though it can't automatically find it.

Reasons a Wi-Fi network may not support automatic discovery (which is based on a technology called mDNS):

  • Network is built up of several smaller networks, as in the original feature request, which mDNS cannot traverse
  • Network may block mDNS for security reasons

Reasons the initial USB success is important:

  • The "Wireless" section of the connectivity card contains the IP address the user would end up entering in this list
    • In the future we can and should automate this
  • The "Wireless" section also contains the MAC address that the network administrator could use to assign the robot a static IP address on the network, which would make this feature more reliable
    • Without a static IP, the network may assign a robot a different IP address after a period of time, meaning the user would then have to find that new address and enter it into the app as a new entry

Is there any additional information you need for this ticket?

@mcous
Copy link
Contributor

mcous commented Dec 11, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
app Affects the `app` project design feature Ticket is a feature request / PR introduces a feature workaround available This issue has a workaround available, though it isn't necessarily totally fixed.
Projects
None yet
Development

No branches or pull requests

3 participants