Troubleshooting Misty Connectivity
There are plenty of potential obstacles in getting connected to Misty Studio, all of which have solutions or workarounds. The primary symptom that you may experience is a failure to connect to Misty, or failure to browse web pages that are hosted by Misty. This troubleshooting guide presumes that you've connected Misty to the network, and that you have her IP address.
Note: This guide expects that you've gome some understanding of networking technologies, and how to use tools to create http requests. We commonly use Visual Studio Code and the RESTful extension to create http requests, but PostMan is quite polular, and cURL is a good standby.
- I have Misty's IP address, but can't seem to connect
- I have Misty's IP address, but when I enter it in a browser, I get an error message
- I have Misty's IP address, but when I enter it in a browser, I get a 404
I have Misty's IP address, but can't seem to connect
This is most commonly a networking problem, and is most commonly seen in corporate or schools. Generally, the root cause is that the network has forbidden device-to-device communication. The easist way to verity this is to simply ask the IT team if device-to-device communication is allowed, but you can also determine it with a few tests.
- Can you ping Misty from your PC? If you can't, it doesn't necessarily mean that device-to-device communication is blocked, but it's an indicator that there may be a network issue at play.
- Can you request device information from Misty? To do this, issue an HTTP GET request to
http://{ROBOT-IP-ADDRESS}/api/device
. This should produce a JSON payload with some specifics about your Misty. If this request fails to connect or times out, you'd be best to contact IT and ask for support.
If you're unable to get IT support, the alternative is to attempt to set up your own network. In some cases, you're able to plug a wifi router into an ethernet port on the wall and use that router's network as-is, and in other cases, you'll have better luck creating a mobile hotspot from a phone and connecting to that. It's a bit of an exploration, but once you can get step 2 above to work, you'll know that the basics of communication are functional.
I have Misty's IP address, but when I enter it in a browser, I get an error message
Sometimes, connecting to Misty Studio will produce a page that just shows an error message saying "null reference exception", or produces a 500 internal server error. Sometimes, though rarely, this is caused by an initialization error within Misty. In these cases, restarting the robot should resolve it. More commonly, this has to do with a browser caching issue. If you're using Chrome, access the vertical menu, navigate to "More Tools", and select "Clear Browsing Data". From the dialog, use the time range of "All Time" and delete Cached Images and Files. Close and reopen our browser, then reaccess Misty Studio- it should render. Note that simply opening an Incognito window doesn't seem to resolve the issue.
I have Misty's IP address, but when I enter it in a browser, I get a 404
In this case, you likely have an older version of the Misty platform, which didn't self host Misty Studio. The easiest way to determine this is to check Misty's version, either via the mobile application, or by issuing an HTTP GET request to http://{ROBOT-IP-ADDRESS}/api/device
. Any version less than 2.0 won't serve Misty Studio and must be updated to a newer version of the platform.
In cases where Misty is connected to the internet, she should normally update automtically after some period of time. Not all Mistys update at the same time, so you'd want to leave your Misty on for a few hours, and plugged in. If the battery is below 50%, or if internet connectivity is absent, the robot won't try and update. If the robot meets these conditions, you can attempt to force and update by issuing two http commands:
- POST http://{ROBOT-IP-ADDRESS}/api/system/update/allow [this allows automatic updates, if they had been suppressed by the user]
- POST http://{ROBOT-IP-ADDRESS}/api/system/update [this triggers the update request, which still needs to download the update package]
After executing the above, give the robot some time and see if updates begin. The update package is around 600MB, which must be downloaded before the robot will notify you that the update is beginning.
In some cases, this doesn't cause an update, no matter how long you leave it to progress. In these cases, the root cause may be the network. Misty has a fixed DNS address of 8.8.8.8, which sometimes causes the network gateway to filter requests from that device. Misty also uses a Microsoft update service to deliver updates. In some cases, the IT team may block those requests to better control the flow of updates to Microsoft-based products on the network. In both cases, the easiest solution is to attempt to update the robot on an alternative private network.