Mac Install works but see "Address already in use" in logs


#1

I just installed Octoprint 1.3.8 on Mac OS X 10.12.6 with Python 2.7.12.

Octoprint launches and I'm able to access it from my browser as localhost port 5000. But I keep seeing this in my logs:

2018-06-26 11:39:52,861 - octoprint.server - INFO - Listening on http://0.0.0.0:5000
Exception in thread Thread-18:
Traceback (most recent call last):
  File "/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/Users/bbell/Projects/OctoPrint/venv/lib/python2.7/site-packages/OctoPrint-1.3.8-py2.7.egg/octoprint/plugins/discovery/__init__.py", line 633, in _ssdp_monitor
    sock.bind(('', self.__class__.ssdp_multicast_port))
  File "/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
error: [Errno 48] Address already in use

Based on a quick inspection of the code, it's having trouble binding to the SSDP port (1900). As best as I can tell, I've got nothing running on that port.

Any ideas as to what I'm doing wrong?


#2

OSX already has an SSDP service (a.k.a. Universal Plug-and-Play, UPnP) running.

Not sure, but it might be more prudent to turn that off in OctoPrint rather than in OSX.

There's a Discovery plugin that's bundled in OctoPrint. Maybe the fix is to go into OctoPrint -> Settings -> Plugin Manager and disable the Discovery Plugin and see if it's happy. This could possibly affect your ability to see your OctoPrint instance from other computers on the network.

Remember that http://localhost/ is the safety link in case you can no longer get to it on your Mac with http://octopi.local as a URL.


#3

That was it. I really don't need to access it from the network so I'm good to go. Thanks.


#4

Disable the plugin, then. That'll make it easier to see legitimate errors.